[PATCH 1/2] drm/xe/vf: Don't check has flat ccs in bios on VF

Matt Roper matthew.d.roper at intel.com
Thu Dec 5 21:00:20 UTC 2024


On Thu, Dec 05, 2024 at 06:18:13PM +0000, Jakub Kolakowski wrote:
> Don't check for flat ccs from VF-level as VF does not have direct
> access to the register.

Can you elaborate on what the implications of not reading this register
are?  If we have a platform that has FlatCCS in general (e.g., BMG) but
the support has been turned off in the BIOS, what happens?
xe->info.has_flat_ccs will remain set in that case (where it wouldn't
have been in a native environment) and that will change the behavior of
various parts of the migration code.  Is it still safe if the migration
code tries to copy CCS data when FlatCCS is disabled?  If it is safe,
then why do we bother reading this register in native settings?


Matt

> 
> Signed-off-by: Jakub Kolakowski <jakub1.kolakowski at intel.com>
> Suggested-by: Piotr Piórkowski <piotr.piorkowski at intel.com>
> Cc: Adam Miszczak <adam.miszczak at linux.intel.com>
> Cc: Jakub Kolakowski <jakub1.kolakowski at intel.com>
> Cc: Lukasz Laguna <lukasz.laguna at intel.com>
> Cc: Marcin Bernatowicz <marcin.bernatowicz at linux.intel.com>
> Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
> Cc: Michal Winiarski <michal.winiarski at intel.com>
> Cc: Narasimha C V <narasimha.c.v at intel.com>
> Cc: Piotr Piorkowski <piotr.piorkowski at intel.com>
> Cc: Satyanarayana K V P <satyanarayana.k.v.p at intel.com>
> Cc: Tomasz Lis <tomasz.lis at intel.com>
> Cc: Matt Roper <matthew.d.roper at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_device.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index 930bb2750e2e..5d827b07cf02 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -600,7 +600,7 @@ static int probe_has_flat_ccs(struct xe_device *xe)
>  	u32 reg;
>  
>  	/* Always enabled/disabled, no runtime check to do */
> -	if (GRAPHICS_VER(xe) < 20 || !xe->info.has_flat_ccs)
> +	if (GRAPHICS_VER(xe) < 20 || !xe->info.has_flat_ccs || IS_SRIOV_VF(xe))
>  		return 0;
>  
>  	gt = xe_root_mmio_gt(xe);
> -- 
> 2.25.1
> 

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


More information about the Intel-xe mailing list