Hi, 

> -----Original Message-----
> From: Govindapillai, Vinod <[email protected]>
> Sent: Sunday, 30 March 2025 21.06
> To: [email protected]; [email protected]
> Cc: Govindapillai, Vinod <[email protected]>; Shankar, Uma
> <[email protected]>; Saarinen, Jani <[email protected]>
> Subject: [PATCH v1] drm/i915/display: implement wa_14022269668
> 
Typo on Workaround...

> Woraround recommend programming the fbc_stride for bmg always.
> Display driver handles the need to program the fbc stride using the override
> stride. So ensure that we always get the override stride in case of bmg
> 
> Bspec: 74212
> Signed-off-by: Vinod Govindapillai <[email protected]>
> ---
>  drivers/gpu/drm/i915/display/intel_fbc.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c
> b/drivers/gpu/drm/i915/display/intel_fbc.c
> index e89cee323d8b..970f8c96cc85 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbc.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbc.c
> @@ -252,9 +252,12 @@ static u16 intel_fbc_override_cfb_stride(const struct
> intel_plane_state *plane_s
>        * Gen9 hw miscalculates cfb stride for linear as
>        * PLANE_STRIDE*512 instead of PLANE_STRIDE*64, so
>        * we always need to use the override there.
> +      *
> +      * wa_14022269668 For bmg, always program the FBC_STRIDE before
> fbc
> +enable
>        */
>       if (stride != stride_aligned ||
> -         (DISPLAY_VER(display) == 9 && fb->modifier ==
> DRM_FORMAT_MOD_LINEAR))
> +         (DISPLAY_VER(display) == 9 && fb->modifier ==
> DRM_FORMAT_MOD_LINEAR) ||
> +         display->platform.battlemage)
>               return stride_aligned * 4 / 64;
> 
>       return 0;
> --
> 2.43.0

Reply via email to