[PATCH] drm/msm/dsi: Set panel orientation when directly connected

Abhinav Kumar quic_abhinavk at quicinc.com
Thu Jul 7 21:11:08 UTC 2022



On 7/6/2022 12:14 PM, Stephen Boyd wrote:
> Set the panel orientation in drm when the panel is directly connected,
> i.e. we're not using an external bridge. The external bridge case is
> already handled by the panel bridge code, so we only update the path we
> take when the panel is directly connected/internal. This silences a
> warning splat coming from __drm_mode_object_add() on Wormdingler boards.
> 
> Cc: Hsin-Yi Wang <hsinyi at chromium.org>
> Cc: Douglas Anderson <dianders at chromium.org>
> Signed-off-by: Stephen Boyd <swboyd at chromium.org>
> ---
> 
> This relies on commit 5e41b01a7808 ("drm/panel: Add an API to allow drm
> to set orientation from panel") which is in drm-misc
> 
>   drivers/gpu/drm/msm/dsi/dsi_manager.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/msm/dsi/dsi_manager.c b/drivers/gpu/drm/msm/dsi/dsi_manager.c
> index cb84d185d73a..9333f7095acd 100644
> --- a/drivers/gpu/drm/msm/dsi/dsi_manager.c
> +++ b/drivers/gpu/drm/msm/dsi/dsi_manager.c
> @@ -268,6 +268,8 @@ static int msm_dsi_manager_panel_init(struct drm_connector *conn, u8 id)
>   		return PTR_ERR(panel);
>   	}
>   
> +	drm_connector_set_orientation_from_panel(conn, panel);
> +

This should be moved below the !panel check since you are passing panel 
as one of the params.

I looked up the doc and it says that for unknown(default cases) this is 
a no-op so I think this change is fine otherwise.

"It is allowed to call this function with a panel_orientation of 
DRM_MODE_PANEL_ORIENTATION_UNKNOWN, in which case it is a no-op."


>   	if (!panel || !IS_BONDED_DSI())
>   		goto out;
>   
> 
> base-commit: 15b9ca1641f0c3cd74885280331e9172c62a125e


More information about the dri-devel mailing list