Re: [PATCH] drm/xe: Drop skip_mtcfg descriptor flag

Wang, X
2026-04-17T05:04:30Z

On 4/16/2026 14:17, Matt Roper wrote:
> 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;
> };
Reviewed-by: Xin Wang <x.wang@intel.com>
> ---
> base-commit: 2a1c604bebed8cbbe6aea00f761777eed424dc55
> change-id: 20260416-no-skip-mtcfg-d6f651d0d79f
>
> Best regards,