> -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Ville > Syrjala > Sent: Wednesday, March 27, 2024 11:16 PM > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Subject: [PATCH 05/13] drm/i915: Loop over all active pipes in > intel_mbus_dbox_update > > From: Stanislav Lisovskiy <stanislav.lisovskiy@xxxxxxxxx> > > We need to loop through all active pipes, not just the ones, that are in current > state, because disabling and enabling even a particular pipe affects credits in > another one. Looks Good to me. Reviewed-by: Uma Shankar <uma.shankar@xxxxxxxxx> > Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@xxxxxxxxx> > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/display/skl_watermark.c | 7 +------ > 1 file changed, 1 insertion(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c > b/drivers/gpu/drm/i915/display/skl_watermark.c > index bc341abcab2f..f582992592c1 100644 > --- a/drivers/gpu/drm/i915/display/skl_watermark.c > +++ b/drivers/gpu/drm/i915/display/skl_watermark.c > @@ -3680,10 +3680,8 @@ void intel_mbus_dbox_update(struct > intel_atomic_state *state) { > struct drm_i915_private *i915 = to_i915(state->base.dev); > const struct intel_dbuf_state *new_dbuf_state, *old_dbuf_state; > - const struct intel_crtc_state *new_crtc_state; > const struct intel_crtc *crtc; > u32 val = 0; > - int i; > > if (DISPLAY_VER(i915) < 11) > return; > @@ -3727,12 +3725,9 @@ void intel_mbus_dbox_update(struct > intel_atomic_state *state) > val |= MBUS_DBOX_B_CREDIT(8); > } > > - for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i) { > + for_each_intel_crtc_in_pipe_mask(&i915->drm, crtc, > +new_dbuf_state->active_pipes) { > u32 pipe_val = val; > > - if (!new_crtc_state->hw.active) > - continue; > - > if (DISPLAY_VER(i915) >= 14) { > if (xelpdp_is_only_pipe_per_dbuf_bank(crtc->pipe, > new_dbuf_state- > >active_pipes)) > -- > 2.43.2