On Tue, 2025-02-18 at 23:19 +0200, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > Move the wm readout to happen earlier. This is needed because > the bw_state readout will need ddb information populated by > the wm readout. > > For now limit this to skl+ as I've not really analyzed the > implications of doing this on other platforms. > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_modeset_setup.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > Reviewed-by: Vinod Govindapillai <vinod.govindapillai@xxxxxxxxx> > diff --git a/drivers/gpu/drm/i915/display/intel_modeset_setup.c > b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > index 03c0facfad7a..6a4142d7d025 100644 > --- a/drivers/gpu/drm/i915/display/intel_modeset_setup.c > +++ b/drivers/gpu/drm/i915/display/intel_modeset_setup.c > @@ -880,6 +880,10 @@ static void intel_modeset_readout_hw_state(struct drm_i915_private *i915) > crtc_state->port_clock); > } > > + /* TODO move here (or even earlier?) on all platforms */ > + if (DISPLAY_VER(display) >= 9) > + intel_wm_get_hw_state(i915); > + > intel_bw_update_hw_state(display); > intel_cdclk_update_hw_state(display); > > @@ -990,7 +994,9 @@ void intel_modeset_setup_hw_state(struct drm_i915_private *i915, > > intel_dpll_sanitize_state(display); > > - intel_wm_get_hw_state(i915); > + /* TODO move earlier on all platforms */ > + if (DISPLAY_VER(display) < 9) > + intel_wm_get_hw_state(i915); > intel_wm_sanitize(i915); > > for_each_intel_crtc(&i915->drm, crtc) {