On Thu, Dec 19, 2024 at 11:34:04PM +0200, Jani Nikula wrote: > 128b/1232b SST will have mst_master_transcoder set and matching > cpu_transcoder. Ensure disable also for 128b/132b SST. > > Co-developed-by: Imre Deak <imre.deak@xxxxxxxxx> > Signed-off-by: Imre Deak <imre.deak@xxxxxxxxx> > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> Reviewed-by: Imre Deak <imre.deak@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_ddi.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c > index 37b771f07d59..c74c3ab25589 100644 > --- a/drivers/gpu/drm/i915/display/intel_ddi.c > +++ b/drivers/gpu/drm/i915/display/intel_ddi.c > @@ -657,6 +657,7 @@ void intel_ddi_disable_transcoder_func(const struct intel_crtc_state *crtc_state > struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); > struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); > enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; > + bool is_mst = intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DP_MST); > u32 ctl; > > if (DISPLAY_VER(dev_priv) >= 11) > @@ -676,7 +677,8 @@ void intel_ddi_disable_transcoder_func(const struct intel_crtc_state *crtc_state > TRANS_DDI_PORT_SYNC_MASTER_SELECT_MASK); > > if (DISPLAY_VER(dev_priv) >= 12) { > - if (!intel_dp_mst_is_master_trans(crtc_state)) { > + if (!intel_dp_mst_is_master_trans(crtc_state) || > + (!is_mst && intel_dp_is_uhbr(crtc_state))) { > ctl &= ~(TGL_TRANS_DDI_PORT_MASK | > TRANS_DDI_MODE_SELECT_MASK); > } > -- > 2.39.5 >