Commit baad97ed authored by Animesh Manna's avatar Animesh Manna
Browse files

drm/i915/display: Adjust Added Wake Time with PKG_C_LATENCY



Increase the PKG_C_LATENCY Pkg C Latency field by the added wake time.

v1: Initial version.
v2: Rebase and cosmetic changes.
v3:
- Place latency adjustment early to accommodate round-up. [Suraj]
- Modify commit description and cosmetic change. [Suraj]

WA: 22020432604
Cc: Suraj Kandpal <suraj.kandpal@intel.com>
Signed-off-by: default avatarAnimesh Manna <animesh.manna@intel.com>
Reviewed-by: default avatarSuraj Kandpal <suraj.kandpal@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250106094408.1011063-1-animesh.manna@intel.com
parent 939bc3e4
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -2939,7 +2939,17 @@ intel_program_dpkgc_latency(struct intel_atomic_state *state)
	}

	if (fixed_refresh_rate) {
		added_wake_time = DSB_EXE_TIME +
			display->sagv.block_time_us;

		latency = skl_watermark_max_latency(i915, 1);

		/* Wa_22020432604 */
		if ((DISPLAY_VER(display) == 20 || DISPLAY_VER(display) == 30) && !latency) {
			latency += added_wake_time;
			added_wake_time = 0;
		}

		/* Wa_22020299601 */
		if ((latency && max_linetime) &&
		    (DISPLAY_VER(display) == 20 || DISPLAY_VER(display) == 30)) {
@@ -2947,9 +2957,6 @@ intel_program_dpkgc_latency(struct intel_atomic_state *state)
		} else if (!latency) {
			latency = LNL_PKG_C_LATENCY_MASK;
		}

		added_wake_time = DSB_EXE_TIME +
			display->sagv.block_time_us;
	}

	clear = LNL_ADDED_WAKE_TIME_MASK | LNL_PKG_C_LATENCY_MASK;