> Subject: [PATCH v2 03/15] drm/i915/display: convert W/As in intel_cdclk.c to > new framework > > Convert the low-hanging fruits of workaround checks to the workaround > framework. Instead of having display structure checks for the workarounds all > over, concentrate the checks in intel_wa.c. >
*intel_display_wa.c With that fixed Reviewed-by: Suraj Kandpal <[email protected]> > Acked-by: Jani Nikula <[email protected]> > Signed-off-by: Luca Coelho <[email protected]> > --- > drivers/gpu/drm/i915/display/intel_cdclk.c | 2 +- > drivers/gpu/drm/i915/display/intel_display_wa.c | 3 +++ > drivers/gpu/drm/i915/display/intel_display_wa.h | 1 + > 3 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c > b/drivers/gpu/drm/i915/display/intel_cdclk.c > index 29d90d612bb2..927b05038e2b 100644 > --- a/drivers/gpu/drm/i915/display/intel_cdclk.c > +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c > @@ -4006,7 +4006,7 @@ void intel_init_cdclk_hooks(struct intel_display > *display) > display->cdclk.table = dg2_cdclk_table; > } else if (display->platform.alderlake_p) { > /* Wa_22011320316:adl-p[a0] */ > - if (display->platform.alderlake_p && IS_DISPLAY_STEP(display, > STEP_A0, STEP_B0)) { > + if (intel_display_wa(display, 22011320316)) { > display->cdclk.table = adlp_a_step_cdclk_table; > display->funcs.cdclk = &tgl_cdclk_funcs; > } else if (display->platform.alderlake_p_raptorlake_u) { diff -- > git a/drivers/gpu/drm/i915/display/intel_display_wa.c > b/drivers/gpu/drm/i915/display/intel_display_wa.c > index 80eecfd33a28..f0311cd477a5 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_wa.c > +++ b/drivers/gpu/drm/i915/display/intel_display_wa.c > @@ -104,6 +104,9 @@ bool __intel_display_wa(struct intel_display *display, > enum intel_display_wa wa, > return intel_display_needs_wa_16025573575(display); > case INTEL_DISPLAY_WA_22010178259: > return DISPLAY_VER(display) == 12; > + case INTEL_DISPLAY_WA_22011320316: > + return display->platform.alderlake_p && > + IS_DISPLAY_STEP(display, STEP_A0, STEP_B0); > case INTEL_DISPLAY_WA_22014263786: > return IS_DISPLAY_VERx100(display, 1100, 1400); > case INTEL_DISPLAY_WA_22021048059: > diff --git a/drivers/gpu/drm/i915/display/intel_display_wa.h > b/drivers/gpu/drm/i915/display/intel_display_wa.h > index 54f5ea05b293..0d0501fc276f 100644 > --- a/drivers/gpu/drm/i915/display/intel_display_wa.h > +++ b/drivers/gpu/drm/i915/display/intel_display_wa.h > @@ -41,6 +41,7 @@ enum intel_display_wa { > INTEL_DISPLAY_WA_16023588340, > INTEL_DISPLAY_WA_16025573575, > INTEL_DISPLAY_WA_22010178259, > + INTEL_DISPLAY_WA_22011320316, > INTEL_DISPLAY_WA_22014263786, > INTEL_DISPLAY_WA_22021048059, > }; > -- > 2.51.0
