On Fri, Feb 02, 2024 at 04:05:34PM +0200, Jani Nikula wrote: > If the sink supports 128b/132b and single-stream sideband messaging, > enable MST mode. > > With this, the topology manager will still write DP_MSTM_CTRL, which > should be ignored by the sink. In the future, > drm_dp_mst_topology_mgr_set_mst() bool mst_state parameter should > probably be turned into an enum drm_dp_mst_mode mst_mode parameter. Rather I'd say the topology manager should stop concerning itself with the MST enable bit and just frob the sideband enable bit. The MST enable bit should be configured at modeset time to reflect whether we're about to transmit in MST or SST mode. > > Cc: Arun R Murthy <arun.r.murthy@xxxxxxxxx> > Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_dp.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 4dd9c50226d1..16130e87dc23 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -4020,7 +4020,9 @@ static bool intel_dp_mst_detect(struct intel_dp *intel_dp) > > intel_dp->is_mst = i915->display.params.enable_dp_mst && > intel_dp_mst_source_support(intel_dp) && > - sink_mst_mode == DP_MST_CAPABLE; > + (sink_mst_mode == DP_MST_CAPABLE || > + (sink_mst_mode == DP_MST_SIDEBAND_MSG && > + intel_dp->dpcd[DP_MAIN_LINK_CHANNEL_CODING] & DP_CAP_ANSI_128B132B)); > > drm_dbg_kms(&i915->drm, > "[ENCODER:%d:%s] MST support: port: %s, sink: %s, modparam: %s -> enable: %s\n", > -- > 2.39.2 -- Ville Syrjälä Intel