[PATCH v1] drm/i915/display: implement wa_14022269668
Juha-Pekka Heikkilä
juhapekka.heikkila at gmail.com
Tue Apr 15 12:48:04 UTC 2025
look ok to me
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
On Sun, Mar 30, 2025 at 9:06 PM Vinod Govindapillai
<vinod.govindapillai at intel.com> wrote:
>
> 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 <vinod.govindapillai at intel.com>
> ---
> 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
>
More information about the Intel-xe
mailing list