Re: [PATCH] drm/msm/dp: make eDP panel as the first connected connector

Dmitry Baryshkov dmitry.baryshkov at linaro.org
Tue Jun 28 20:13:56 UTC 2022



On 28 June 2022 18:20:06 GMT+03:00, Kuogee Hsieh <quic_khsieh at quicinc.com> wrote:
>Some userspace presumes that the first connected connector is the main
>display, where it's supposed to display e.g. the login screen. For
>laptops, this should be the main panel.
>
>This patch call drm_helper_move_panel_connectors_to_head() after
>drm_bridge_connector_init() to make sure eDP stay at head of
>connected connector list. This fixes unexpected corruption happen
>at eDP panel if eDP is not placed at head of connected connector
>list.

The change itself is a good fix anyway. (And I'd ack it.) However I would like to understand why does it fix the corruption issue. What is we have eDP and DSI, with DSI ending up before the eDP? Would we see the issue?
Also could you please describe the mind of corruption you are observing?


>
>Signed-off-by: Kuogee Hsieh <quic_khsieh at quicinc.com>
>---
> drivers/gpu/drm/msm/dp/dp_drm.c | 2 ++
> 1 file changed, 2 insertions(+)
>
>diff --git a/drivers/gpu/drm/msm/dp/dp_drm.c b/drivers/gpu/drm/msm/dp/dp_drm.c
>index ce0ec3a..2d18884 100644
>--- a/drivers/gpu/drm/msm/dp/dp_drm.c
>+++ b/drivers/gpu/drm/msm/dp/dp_drm.c
>@@ -136,5 +136,7 @@ struct drm_connector *dp_drm_connector_init(struct msm_dp *dp_display)
> 
> 	drm_connector_attach_encoder(connector, dp_display->encoder);
> 
>+	drm_helper_move_panel_connectors_to_head(dp_display->drm_dev);
>+
> 	return connector;
> }


More information about the dri-devel mailing list