diff mbox series

[13/19] drm/i915: Skip some bw_state readout on pre-icl

Message ID 20250218211913.27867-14-ville.syrjala@linux.intel.com (mailing list archive)
State New
Headers show
Series drm/i915: cdclk/bw/dbuf readout/sanitation cleanup | expand

Commit Message

Ville Syrjälä Feb. 18, 2025, 9:19 p.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

We only compute bw_state->data_rate and bw_state->num_active_planes
on icl+. Do the same during readout so that we don't leave random
junk inside the state.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/display/intel_bw.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i915/display/intel_bw.c
index 30e6f33d6f30..2a669b8535e0 100644
--- a/drivers/gpu/drm/i915/display/intel_bw.c
+++ b/drivers/gpu/drm/i915/display/intel_bw.c
@@ -809,13 +809,16 @@  static int intel_bw_crtc_min_cdclk(const struct intel_crtc_state *crtc_state)
 static void intel_bw_crtc_update(struct intel_bw_state *bw_state,
 				 const struct intel_crtc_state *crtc_state)
 {
+	struct intel_display *display = to_intel_display(crtc_state);
 	struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
 	struct drm_i915_private *i915 = to_i915(crtc->base.dev);
 
-	bw_state->data_rate[crtc->pipe] =
-		intel_bw_crtc_data_rate(crtc_state);
-	bw_state->num_active_planes[crtc->pipe] =
-		intel_bw_crtc_num_active_planes(crtc_state);
+	if (DISPLAY_VER(display) >= 11) {
+		bw_state->data_rate[crtc->pipe] =
+			intel_bw_crtc_data_rate(crtc_state);
+		bw_state->num_active_planes[crtc->pipe] =
+			intel_bw_crtc_num_active_planes(crtc_state);
+	}
 	bw_state->force_check_qgv = true;
 
 	drm_dbg_kms(&i915->drm, "pipe %c data rate %u num active planes %u\n",