Skip to content

Commit ca8dcfe

Browse files
NitinGoteThomas Hellström
authored andcommitted
drm/xe: derive mem copy capability from graphics version
Drop .has_mem_copy_instr from the platform descriptors and set it in xe_info_init() after handle_gmdid() populates graphics_verx100. Centralizing the GRAPHICS_VER(xe) >= 20 check keeps MEM_COPY enabled on Xe2+ and removes redundant per-platform plumbing. Bspec: 57561 Fixes: 1e12dba ("drm/xe/migrate: support MEM_COPY instruction") Cc: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Matthew Auld <matthew.auld@intel.com> Suggested-by: Matthew Auld <matthew.auld@intel.com> Signed-off-by: Nitin Gote <nitin.r.gote@intel.com> Link: https://patch.msgid.link/20260120054724.1982608-2-nitin.r.gote@intel.com Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com> (cherry picked from commit 6ef0265) Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
1 parent 051be49 commit ca8dcfe

2 files changed

Lines changed: 1 addition & 6 deletions

File tree

drivers/gpu/drm/xe/xe_pci.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,6 @@ static const struct xe_device_desc lnl_desc = {
342342
.has_display = true,
343343
.has_flat_ccs = 1,
344344
.has_pxp = true,
345-
.has_mem_copy_instr = true,
346345
.max_gt_per_tile = 2,
347346
.needs_scratch = true,
348347
.va_bits = 48,
@@ -363,7 +362,6 @@ static const struct xe_device_desc bmg_desc = {
363362
.has_heci_cscfi = 1,
364363
.has_late_bind = true,
365364
.has_sriov = true,
366-
.has_mem_copy_instr = true,
367365
.max_gt_per_tile = 2,
368366
.needs_scratch = true,
369367
.subplatforms = (const struct xe_subplatform_desc[]) {
@@ -380,7 +378,6 @@ static const struct xe_device_desc ptl_desc = {
380378
.has_display = true,
381379
.has_flat_ccs = 1,
382380
.has_sriov = true,
383-
.has_mem_copy_instr = true,
384381
.max_gt_per_tile = 2,
385382
.needs_scratch = true,
386383
.needs_shared_vf_gt_wq = true,
@@ -393,7 +390,6 @@ static const struct xe_device_desc nvls_desc = {
393390
.dma_mask_size = 46,
394391
.has_display = true,
395392
.has_flat_ccs = 1,
396-
.has_mem_copy_instr = true,
397393
.max_gt_per_tile = 2,
398394
.require_force_probe = true,
399395
.va_bits = 48,
@@ -675,7 +671,6 @@ static int xe_info_init_early(struct xe_device *xe,
675671
xe->info.has_pxp = desc->has_pxp;
676672
xe->info.has_sriov = xe_configfs_primary_gt_allowed(to_pci_dev(xe->drm.dev)) &&
677673
desc->has_sriov;
678-
xe->info.has_mem_copy_instr = desc->has_mem_copy_instr;
679674
xe->info.skip_guc_pc = desc->skip_guc_pc;
680675
xe->info.skip_mtcfg = desc->skip_mtcfg;
681676
xe->info.skip_pcode = desc->skip_pcode;
@@ -864,6 +859,7 @@ static int xe_info_init(struct xe_device *xe,
864859
xe->info.has_range_tlb_inval = graphics_desc->has_range_tlb_inval;
865860
xe->info.has_usm = graphics_desc->has_usm;
866861
xe->info.has_64bit_timestamp = graphics_desc->has_64bit_timestamp;
862+
xe->info.has_mem_copy_instr = GRAPHICS_VER(xe) >= 20;
867863

868864
xe_info_probe_tile_count(xe);
869865

drivers/gpu/drm/xe/xe_pci_types.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ struct xe_device_desc {
4646
u8 has_late_bind:1;
4747
u8 has_llc:1;
4848
u8 has_mbx_power_limits:1;
49-
u8 has_mem_copy_instr:1;
5049
u8 has_pxp:1;
5150
u8 has_sriov:1;
5251
u8 needs_scratch:1;

0 commit comments

Comments
 (0)