On Mon, Aug 25, 2025 at 10:15:49PM +0800, Yongxing Mou wrote: > From: Abhinav Kumar <quic_abhin...@quicinc.com> > > dp_display_enable() currently re-trains the link if needed and then > enables the pixel clock, programs the controller to start sending the > pixel stream. Split these two parts into prepare/enable APIs, to support > MST bridges_enable insert the MST payloads funcs between enable > stream_clks and program register. > > Signed-off-by: Abhinav Kumar <quic_abhin...@quicinc.com> > Signed-off-by: Yongxing Mou <yongxing....@oss.qualcomm.com> > --- > drivers/gpu/drm/msm/dp/dp_ctrl.c | 51 ++++++++++------ > drivers/gpu/drm/msm/dp/dp_ctrl.h | 3 +- > drivers/gpu/drm/msm/dp/dp_display.c | 113 > ++++++++++++++++++++++++------------ > drivers/gpu/drm/msm/dp/dp_display.h | 1 + > 4 files changed, 113 insertions(+), 55 deletions(-) > > void msm_dp_bridge_mode_set(struct drm_bridge *drm_bridge, > diff --git a/drivers/gpu/drm/msm/dp/dp_display.h > b/drivers/gpu/drm/msm/dp/dp_display.h > index > 60094061c1029bc7a06ffaa80d9403b40aa07eb1..2fbf16f27842bb7639efaa2baecac7bdf8908432 > 100644 > --- a/drivers/gpu/drm/msm/dp/dp_display.h > +++ b/drivers/gpu/drm/msm/dp/dp_display.h > @@ -20,6 +20,7 @@ struct msm_dp { > bool link_ready; > bool audio_enabled; > bool power_on; > + bool prepared;
Why do you need this? The msm_dp_display_prepare() function can only be called from within the atomic_enable() callback, which is not supposed to fail and which is always called in pairs with the atomic_disable() callback. > unsigned int connector_type; > bool is_edp; > bool internal_hpd; > > -- > 2.34.1 > -- With best wishes Dmitry