[PATCH] drm/xe: Drop skip_mtcfg descriptor flag

Matt Roper
2026-04-16T21:17:42Z

The skip_mtcfg descriptor flag is unused and expected to remain that
way. Drop it.

Single-tile platforms are already identified by a zero/unset value for
max_remote_tiles and don't need/use this flag to avoid trying to read
out multi-tile configuration. PVC is currently the only multi-tile
platform, and PVC uses MTCFG so this flag is not set. The current
expectation is that if/when future multi-tile platforms show up, they
will also use the MTCFG register in the same manner as PVC, meaning that
they won't have any need to set 'skip_mtcfg' either.

Even if a future platform does change how multi-tile configuration gets
probed (e.g., using some different register), simply doing an early return
from xe_info_probe_tile_count() would probably not be the correct logic
to handle that anyway.

Bspec: 53146
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
---
drivers/gpu/drm/xe/xe_device_types.h | 2 --
drivers/gpu/drm/xe/xe_pci.c | 4 ----
drivers/gpu/drm/xe/xe_pci_types.h | 1 -
3 files changed, 7 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index 2ebe33a0dc07..e9e11bb1c65f 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -218,8 +218,6 @@ struct xe_device {
u8 probe_display:1;
/** @info.skip_guc_pc: Skip GuC based PM feature init */
u8 skip_guc_pc:1;
- /** @info.skip_mtcfg: skip Multi-Tile configuration from MTCFG register */
- u8 skip_mtcfg:1;
/** @info.skip_pcode: skip access to PCODE uC */
u8 skip_pcode:1;
/** @info.needs_shared_vf_gt_wq: needs shared GT WQ on VF */
diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index 6e560ef84a97..d55e5af4f4b7 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -768,7 +768,6 @@ static int xe_info_init_early(struct xe_device *xe,
desc->has_sriov;
xe->info.has_sysctrl = desc->has_sysctrl;
xe->info.skip_guc_pc = desc->skip_guc_pc;
- xe->info.skip_mtcfg = desc->skip_mtcfg;
xe->info.skip_pcode = desc->skip_pcode;
xe->info.needs_scratch = desc->needs_scratch;
xe->info.needs_shared_vf_gt_wq = desc->needs_shared_vf_gt_wq;
@@ -810,9 +809,6 @@ static void xe_info_probe_tile_count(struct xe_device *xe)
if (xe->info.tile_count == 1)
return;

- if (xe->info.skip_mtcfg)
- return;
-
mmio = xe_root_tile_mmio(xe);

/*
diff --git a/drivers/gpu/drm/xe/xe_pci_types.h b/drivers/gpu/drm/xe/xe_pci_types.h
index 08386c5eca27..5b85e2c24b7b 100644
--- a/drivers/gpu/drm/xe/xe_pci_types.h
+++ b/drivers/gpu/drm/xe/xe_pci_types.h
@@ -60,7 +60,6 @@ struct xe_device_desc {
u8 has_sysctrl:1;
u8 needs_scratch:1;
u8 skip_guc_pc:1;
- u8 skip_mtcfg:1;
u8 skip_pcode:1;
u8 needs_shared_vf_gt_wq:1;
};

---
base-commit: 2a1c604bebed8cbbe6aea00f761777eed424dc55
change-id: 20260416-no-skip-mtcfg-d6f651d0d79f

Best regards,
--
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation