[Intel-gfx] [PATCH] drm/i915/gsc: Only initialize GSC in tile 0

Rodrigo Vivi rodrigo.vivi at intel.com
Mon Oct 31 09:35:34 UTC 2022


On Mon, Oct 31, 2022 at 07:51:17AM +0200, Alexander Usyskin wrote:
> From: José Roberto de Souza <jose.souza at intel.com>
> 
> For multi-tile setups the GSC operational only on the tile 0.
> Skip GSC auxiliary device creation for all other tiles.
> 
> Cc: Tomas Winkler <tomas.winkler at intel.com>
> Cc: Vitaly Lubart <vitaly.lubart at intel.com>
> Signed-off-by: José Roberto de Souza <jose.souza at intel.com>
> Signed-off-by: Alexander Usyskin <alexander.usyskin at intel.com>
> ---
>  drivers/gpu/drm/i915/gt/intel_gt.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt.c b/drivers/gpu/drm/i915/gt/intel_gt.c
> index 2e796ffad911..92ad8cd45ddb 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt.c
> @@ -456,7 +456,10 @@ void intel_gt_chipset_flush(struct intel_gt *gt)
>  
>  void intel_gt_driver_register(struct intel_gt *gt)
>  {
> -	intel_gsc_init(&gt->gsc, gt->i915);
> +	if (gt->info.id == 0)
> +		intel_gsc_init(&gt->gsc, gt->i915);
> +	else
> +		drm_dbg(&gt->i915->drm, "Not initializing gsc for remote tiles\n");

It looks to me that we need to move the gsc out of the intel_gt
instead of workaround the initialization.

>  
>  	intel_rps_driver_register(&gt->rps);
>  
> @@ -787,7 +790,8 @@ void intel_gt_driver_unregister(struct intel_gt *gt)
>  
>  	intel_gt_sysfs_unregister(gt);
>  	intel_rps_driver_unregister(&gt->rps);
> -	intel_gsc_fini(&gt->gsc);
> +	if (gt->info.id == 0)
> +		intel_gsc_fini(&gt->gsc);
>  
>  	intel_pxp_fini(&gt->pxp);
>  
> -- 
> 2.34.1
> 


More information about the Intel-gfx mailing list