Re: [PATCH 5/5] drm/msm/dp: mark the SST connector disconnected when MST is enabled

From: Dmitry Baryshkov

Date: Mon Aug 17 2026 - 23:24:07 EST


On Mon, Aug 17, 2026 at 04:01:34PM +0800, Yongxing Mou wrote:
>
>
> On 7/12/2026 6:56 PM, Dmitry Baryshkov wrote:
> > On Mon, Jun 29, 2026 at 10:48:07PM +0800, Yongxing Mou wrote:
> > > When MST becomes active, the initial HPD plug notification updates the
> > > SST connector state to connected.
> > >
> > > However, the subsequent SST connector detect path reports disconnected
> > > while MST is enabled. This connected -> disconnected transition is then
> > > observed by the polling logic and may result in an unnecessary hotplug
> > > event.
> > >
> > > Set the SST connector state to disconnected immediately after MST is
> > > initialized so that the detect path does not introduce a transient
> > > state change.
> > >
> > > Signed-off-by: Yongxing Mou <yongxing.mou@xxxxxxxxxxxxxxxx>
> > > ---
> > > drivers/gpu/drm/msm/dp/dp_display.c | 4 +++-
> > > 1 file changed, 3 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
> > > index 4ee391cc7165..f8ca60d6d714 100644
> > > --- a/drivers/gpu/drm/msm/dp/dp_display.c
> > > +++ b/drivers/gpu/drm/msm/dp/dp_display.c
> > > @@ -352,8 +352,10 @@ static int msm_dp_display_process_hpd_high(struct msm_dp_display_private *dp)
> > > if (dp->max_stream > 1 && drm_dp_read_mst_cap(dp->aux, dp->panel->dpcd))
> > > msm_dp_display_mst_init(dp);
> > > - if (dp->msm_dp_display.mst_active)
> > > + if (dp->msm_dp_display.mst_active) {
> > > + connector->status = connector_status_disconnected;
> > > msm_dp_mst_display_set_mgr_state(&dp->msm_dp_display, true);
> >
> > This should be a part of the MST series.
> >
> Got it .

Also, you need to take the lock to modify the status field.

> > > + }
> > > msm_dp_link_reset_phy_params_vx_px(dp->link);
> > >
> > > --
> > > 2.43.0
> > >
> >
>

--
With best wishes
Dmitry