[PATCH v3 03/38] drm/msm/dp: break up dp_display_enable into two parts
Dmitry Baryshkov
dmitry.baryshkov at oss.qualcomm.com
Mon Aug 25 17:13:54 UTC 2025
On Mon, Aug 25, 2025 at 10:15:49PM +0800, Yongxing Mou wrote:
> From: Abhinav Kumar <quic_abhinavk at 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_abhinavk at quicinc.com>
> Signed-off-by: Yongxing Mou <yongxing.mou at 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
More information about the Freedreno
mailing list