[Intel-xe] [PATCH 2/6] drm/xe/mmio: s/lmem/vram/

Matthew Auld matthew.auld at intel.com
Tue Mar 7 11:27:07 UTC 2023


On 07/03/2023 10:03, Gwan-gyeong Mun wrote:
> Looks good to me.
> Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun at intel.com>

Thanks.

> 
> In addition, in the code of the function below, a variable or string 
> named lmem is used. Is the code intentionally not modified?
> 
> drivers/gpu/drm/xe/xe_bo.c
>      xe_bo_pin()
> 
> drivers/gpu/drm/xe/tests/xe_migrate.c
>      test_copy()

Yeah, it seems there are a bunch more places. But here since I was only 
really touching xe_mmio.c, adding the plumbing for io_size, I figured to 
limit to here for now. Also there were some existing user level prints 
and modparams directly related to this series (like lmem_bar_size), so 
seemed worth fixing those in particular.

I suppose I can re-resend with s/lmem/vram/ for the whole driver.

> 
> Br,
> G.G.
> 
> On 3/1/23 4:48 PM, Matthew Auld wrote:
>> This seems to be the preferred nomenclature in xe.
>>
>> Signed-off-by: Matthew Auld <matthew.auld at intel.com>
>> Cc: Lucas De Marchi <lucas.demarchi at intel.com>
>> Reviewed-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
>> ---
>>   drivers/gpu/drm/xe/xe_mmio.c   | 40 +++++++++++++++++-----------------
>>   drivers/gpu/drm/xe/xe_module.c |  6 ++---
>>   drivers/gpu/drm/xe/xe_module.h |  2 +-
>>   3 files changed, 24 insertions(+), 24 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/xe/xe_mmio.c b/drivers/gpu/drm/xe/xe_mmio.c
>> index 65b0df9bb579..e5bd4609aaee 100644
>> --- a/drivers/gpu/drm/xe/xe_mmio.c
>> +++ b/drivers/gpu/drm/xe/xe_mmio.c
>> @@ -68,7 +68,7 @@ _resize_bar(struct xe_device *xe, int resno, 
>> resource_size_t size)
>>       return 1;
>>   }
>> -static int xe_resize_lmem_bar(struct xe_device *xe, resource_size_t 
>> lmem_size)
>> +static int xe_resize_vram_bar(struct xe_device *xe, resource_size_t 
>> vram_size)
>>   {
>>       struct pci_dev *pdev = to_pci_dev(xe->drm.dev);
>>       struct pci_bus *root = pdev->bus;
>> @@ -78,31 +78,31 @@ static int xe_resize_lmem_bar(struct xe_device 
>> *xe, resource_size_t lmem_size)
>>       u32 pci_cmd;
>>       int i;
>>       int ret;
>> -    u64 force_lmem_bar_size = xe_force_lmem_bar_size;
>> +    u64 force_vram_bar_size = xe_force_vram_bar_size;
>>       current_size = roundup_pow_of_two(pci_resource_len(pdev, 
>> GEN12_LMEM_BAR));
>> -    if (force_lmem_bar_size) {
>> +    if (force_vram_bar_size) {
>>           u32 bar_sizes;
>> -        rebar_size = force_lmem_bar_size * (resource_size_t)SZ_1M;
>> +        rebar_size = force_vram_bar_size * (resource_size_t)SZ_1M;
>>           bar_sizes = pci_rebar_get_possible_sizes(pdev, GEN12_LMEM_BAR);
>>           if (rebar_size == current_size)
>>               return 0;
>>           if (!(bar_sizes & BIT(pci_rebar_bytes_to_size(rebar_size))) ||
>> -            rebar_size >= roundup_pow_of_two(lmem_size)) {
>> -            rebar_size = lmem_size;
>> +            rebar_size >= roundup_pow_of_two(vram_size)) {
>> +            rebar_size = vram_size;
>>               drm_info(&xe->drm,
>>                    "Given bar size is not within supported size, 
>> setting it to default: %llu\n",
>> -                 (u64)lmem_size >> 20);
>> +                 (u64)vram_size >> 20);
>>           }
>>       } else {
>>           rebar_size = current_size;
>> -        if (rebar_size != roundup_pow_of_two(lmem_size))
>> -            rebar_size = lmem_size;
>> +        if (rebar_size != roundup_pow_of_two(vram_size))
>> +            rebar_size = vram_size;
>>           else
>>               return 0;
>>       }
>> @@ -117,7 +117,7 @@ static int xe_resize_lmem_bar(struct xe_device 
>> *xe, resource_size_t lmem_size)
>>       }
>>       if (!root_res) {
>> -        drm_info(&xe->drm, "Can't resize LMEM BAR - platform support 
>> is missing\n");
>> +        drm_info(&xe->drm, "Can't resize VRAM BAR - platform support 
>> is missing\n");
>>           return -1;
>>       }
>> @@ -168,7 +168,7 @@ int xe_mmio_total_vram_size(struct xe_device *xe, 
>> u64 *vram_size, u64 *usable_si
>>       if (usable_size) {
>>           reg = xe_gt_mcr_unicast_read_any(gt, XEHP_FLAT_CCS_BASE_ADDR);
>>           *usable_size = (u64)REG_FIELD_GET(GENMASK(31, 8), reg) * 
>> SZ_64K;
>> -        drm_info(&xe->drm, "lmem_size: 0x%llx usable_size: 0x%llx\n",
>> +        drm_info(&xe->drm, "vram_size: 0x%llx usable_size: 0x%llx\n",
>>                *vram_size, *usable_size);
>>       }
>> @@ -180,7 +180,7 @@ int xe_mmio_probe_vram(struct xe_device *xe)
>>       struct pci_dev *pdev = to_pci_dev(xe->drm.dev);
>>       struct xe_gt *gt;
>>       u8 id;
>> -    u64 lmem_size;
>> +    u64 vram_size;
>>       u64 original_size;
>>       u64 current_size;
>>       u64 usable_size;
>> @@ -207,29 +207,29 @@ int xe_mmio_probe_vram(struct xe_device *xe)
>>       gt = xe_device_get_gt(xe, 0);
>>       original_size = pci_resource_len(pdev, GEN12_LMEM_BAR);
>> -    err = xe_mmio_total_vram_size(xe, &lmem_size, &usable_size);
>> +    err = xe_mmio_total_vram_size(xe, &vram_size, &usable_size);
>>       if (err)
>>           return err;
>> -    resize_result = xe_resize_lmem_bar(xe, lmem_size);
>> +    resize_result = xe_resize_vram_bar(xe, vram_size);
>>       current_size = pci_resource_len(pdev, GEN12_LMEM_BAR);
>>       xe->mem.vram.io_start = pci_resource_start(pdev, GEN12_LMEM_BAR);
>> -    xe->mem.vram.size = min(current_size, lmem_size);
>> +    xe->mem.vram.size = min(current_size, vram_size);
>>       if (!xe->mem.vram.size)
>>           return -EIO;
>>       if (resize_result > 0)
>> -        drm_info(&xe->drm, "Successfully resize LMEM from %lluMiB to 
>> %lluMiB\n",
>> +        drm_info(&xe->drm, "Successfully resize VRAM from %lluMiB to 
>> %lluMiB\n",
>>                (u64)original_size >> 20,
>>                (u64)current_size >> 20);
>> -    else if (xe->mem.vram.size < lmem_size && !xe_force_lmem_bar_size)
>> +    else if (xe->mem.vram.size < vram_size && !xe_force_vram_bar_size)
>>           drm_info(&xe->drm, "Using a reduced BAR size of %lluMiB. 
>> Consider enabling 'Resizable BAR' support in your BIOS.\n",
>>                (u64)xe->mem.vram.size >> 20);
>> -    if (xe->mem.vram.size < lmem_size)
>> +    if (xe->mem.vram.size < vram_size)
>>           drm_warn(&xe->drm, "Restricting VRAM size to PCI resource 
>> size (0x%llx->0x%llx)\n",
>> -             lmem_size, (u64)xe->mem.vram.size);
>> +             vram_size, (u64)xe->mem.vram.size);
>>       xe->mem.vram.mapping = ioremap_wc(xe->mem.vram.io_start, 
>> xe->mem.vram.size);
>>       xe->mem.vram.size = min_t(u64, xe->mem.vram.size, usable_size);
>> @@ -360,7 +360,7 @@ int xe_mmio_init(struct xe_device *xe)
>>        * and we should not continue with driver initialization.
>>        */
>>       if (IS_DGFX(xe) && !(xe_mmio_read32(gt, GU_CNTL.reg) & 
>> LMEM_INIT)) {
>> -        drm_err(&xe->drm, "LMEM not initialized by firmware\n");
>> +        drm_err(&xe->drm, "VRAM not initialized by firmware\n");
>>           return -ENODEV;
>>       }
>> diff --git a/drivers/gpu/drm/xe/xe_module.c 
>> b/drivers/gpu/drm/xe/xe_module.c
>> index 5a51a9959eff..6860586ce7f8 100644
>> --- a/drivers/gpu/drm/xe/xe_module.c
>> +++ b/drivers/gpu/drm/xe/xe_module.c
>> @@ -22,9 +22,9 @@ bool enable_display = true;
>>   module_param_named(enable_display, enable_display, bool, 0444);
>>   MODULE_PARM_DESC(enable_display, "Enable display");
>> -u32 xe_force_lmem_bar_size;
>> -module_param_named(lmem_bar_size, xe_force_lmem_bar_size, uint, 0600);
>> -MODULE_PARM_DESC(lmem_bar_size, "Set the lmem bar size(in MiB)");
>> +u32 xe_force_vram_bar_size;
>> +module_param_named(vram_bar_size, xe_force_vram_bar_size, uint, 0600);
>> +MODULE_PARM_DESC(vram_bar_size, "Set the vram bar size(in MiB)");
>>   int xe_guc_log_level = 5;
>>   module_param_named(guc_log_level, xe_guc_log_level, int, 0600);
>> diff --git a/drivers/gpu/drm/xe/xe_module.h 
>> b/drivers/gpu/drm/xe/xe_module.h
>> index 2c6ee46f5595..86916c176382 100644
>> --- a/drivers/gpu/drm/xe/xe_module.h
>> +++ b/drivers/gpu/drm/xe/xe_module.h
>> @@ -8,6 +8,6 @@
>>   /* Module modprobe variables */
>>   extern bool enable_guc;
>>   extern bool enable_display;
>> -extern u32 xe_force_lmem_bar_size;
>> +extern u32 xe_force_vram_bar_size;
>>   extern int xe_guc_log_level;
>>   extern char *xe_param_force_probe;


More information about the Intel-xe mailing list