Commit 267f668a authored by Luca Coelho's avatar Luca Coelho
Browse files

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_display_wa.c.

Acked-by: default avatarJani Nikula <jani.nikula@intel.com>
Reviewed-by: default avatarSuraj Kandpal <suraj.kandpal@intel.com>
Link: https://patch.msgid.link/20260305100100.332956-5-luciano.coelho@intel.com


Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
parent cf7db663
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -4007,7 +4007,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, INTEL_DISPLAY_WA_22011320316)) {
			display->cdclk.table = adlp_a_step_cdclk_table;
			display->funcs.cdclk = &tgl_cdclk_funcs;
		} else if (display->platform.alderlake_p_raptorlake_u) {
+3 −0
Original line number Diff line number Diff line
@@ -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:
+1 −0
Original line number Diff line number Diff line
@@ -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,
};