[PATCH V2 3/4] drm/panel: Add prepare_upstream_first flag to drm_panel
Dmitry Baryshkov
dmitry.baryshkov at linaro.org
Wed Jun 8 11:02:07 UTC 2022
On 04/03/2022 18:17, Dave Stevenson wrote:
> Mapping to the drm_bridge flag pre_enable_upstream_first,
> add a new flag prepare_upstream_first to drm_panel to allow
> the panel driver to request that the upstream bridge should
> be pre_enabled before the panel prepare.
>
> Signed-off-by: Dave Stevenson <dave.stevenson at raspberrypi.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
> ---
> drivers/gpu/drm/bridge/panel.c | 3 +++
> include/drm/drm_panel.h | 10 ++++++++++
> 2 files changed, 13 insertions(+)
>
> diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c
> index 5be057575183..2ea08b3ba326 100644
> --- a/drivers/gpu/drm/bridge/panel.c
> +++ b/drivers/gpu/drm/bridge/panel.c
> @@ -234,6 +234,9 @@ struct drm_bridge *drm_panel_bridge_add_typed(struct drm_panel *panel,
> panel_bridge->bridge.ops = DRM_BRIDGE_OP_MODES;
> panel_bridge->bridge.type = connector_type;
>
> + panel_bridge->bridge.pre_enable_upstream_first =
> + panel->prepare_upstream_first;
> +
> drm_bridge_add(&panel_bridge->bridge);
>
> return &panel_bridge->bridge;
> diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
> index 1ba2d424a53f..c0f39dfbd071 100644
> --- a/include/drm/drm_panel.h
> +++ b/include/drm/drm_panel.h
> @@ -179,6 +179,16 @@ struct drm_panel {
> * Panel entry in registry.
> */
> struct list_head list;
> +
> + /**
> + * @prepare_upstream_first:
> + *
> + * The upstream controller should be prepared first, before the prepare
> + * for the panel is called. This is largely required for DSI panels
> + * where the DSI host controller should be initialised to LP-11 before
> + * the panel is powered up.
> + */
> + bool prepare_upstream_first;
> };
>
> void drm_panel_init(struct drm_panel *panel, struct device *dev,
--
With best wishes
Dmitry
More information about the dri-devel
mailing list