From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Sebastian Reichel <sre@kernel.org>,
Nikhil Devshatwar <nikhil.nd@ti.com>,
linux-omap@vger.kernel.org, dri-devel@lists.freedesktop.org,
Sekhar Nori <nsekhar@ti.com>, Tony Lindgren <tony@atomide.com>,
"H . Nikolaus Schaller" <hns@goldelico.com>
Subject: Re: [PATCH v3 56/56] drm/omap: remove dss_mgr_ops
Date: Mon, 9 Nov 2020 13:18:03 +0200 [thread overview]
Message-ID: <20201109111803.GA6029@pendragon.ideasonboard.com> (raw)
In-Reply-To: <20201105120333.947408-57-tomi.valkeinen@ti.com>
Hi Tomi,
Thank you for the patch.
On Thu, Nov 05, 2020 at 02:03:33PM +0200, Tomi Valkeinen wrote:
> dss_mgr_ops was needed with the multi-module architecture, but is no
> longer needed. We can thus remove it and use direct calls.
>
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> drivers/gpu/drm/omapdrm/dss/dss.h | 1 -
> drivers/gpu/drm/omapdrm/dss/omapdss.h | 42 +++++++++++----------------
> drivers/gpu/drm/omapdrm/dss/output.c | 33 +++++----------------
> drivers/gpu/drm/omapdrm/omap_crtc.c | 38 +++++-------------------
> drivers/gpu/drm/omapdrm/omap_crtc.h | 2 --
> drivers/gpu/drm/omapdrm/omap_drv.c | 4 +--
> 6 files changed, 33 insertions(+), 87 deletions(-)
>
> diff --git a/drivers/gpu/drm/omapdrm/dss/dss.h b/drivers/gpu/drm/omapdrm/dss/dss.h
> index 96f702314c8c..a547527bb2f3 100644
> --- a/drivers/gpu/drm/omapdrm/dss/dss.h
> +++ b/drivers/gpu/drm/omapdrm/dss/dss.h
> @@ -257,7 +257,6 @@ struct dss_device {
> struct dss_pll *video2_pll;
>
> struct dispc_device *dispc;
> - const struct dss_mgr_ops *mgr_ops;
> struct omap_drm_private *mgr_ops_priv;
> };
>
> diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b/drivers/gpu/drm/omapdrm/dss/omapdss.h
> index fba5f05e5e48..9df322ca467d 100644
> --- a/drivers/gpu/drm/omapdrm/dss/omapdss.h
> +++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h
> @@ -338,31 +338,23 @@ enum dss_writeback_channel {
> DSS_WB_LCD3_MGR = 7,
> };
>
> -struct dss_mgr_ops {
> - void (*start_update)(struct omap_drm_private *priv,
> - enum omap_channel channel);
> - int (*enable)(struct omap_drm_private *priv,
> - enum omap_channel channel);
> - void (*disable)(struct omap_drm_private *priv,
> - enum omap_channel channel);
> - void (*set_timings)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - const struct videomode *vm);
> - void (*set_lcd_config)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - const struct dss_lcd_mgr_config *config);
> - int (*register_framedone_handler)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - void (*handler)(void *), void *data);
> - void (*unregister_framedone_handler)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - void (*handler)(void *), void *data);
> -};
> -
> -int dss_install_mgr_ops(struct dss_device *dss,
> - const struct dss_mgr_ops *mgr_ops,
> - struct omap_drm_private *priv);
> -void dss_uninstall_mgr_ops(struct dss_device *dss);
> +void omap_crtc_dss_start_update(struct omap_drm_private *priv,
> + enum omap_channel channel);
> +void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable);
> +int omap_crtc_dss_enable(struct omap_drm_private *priv, enum omap_channel channel);
> +void omap_crtc_dss_disable(struct omap_drm_private *priv, enum omap_channel channel);
> +void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> + enum omap_channel channel,
> + const struct videomode *vm);
> +void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> + enum omap_channel channel,
> + const struct dss_lcd_mgr_config *config);
> +int omap_crtc_dss_register_framedone(
> + struct omap_drm_private *priv, enum omap_channel channel,
> + void (*handler)(void *), void *data);
> +void omap_crtc_dss_unregister_framedone(
> + struct omap_drm_private *priv, enum omap_channel channel,
> + void (*handler)(void *), void *data);
>
> void dss_mgr_set_timings(struct omap_dss_device *dssdev,
> const struct videomode *vm);
> diff --git a/drivers/gpu/drm/omapdrm/dss/output.c b/drivers/gpu/drm/omapdrm/dss/output.c
> index 7a14d2b5b2f7..2121c947947b 100644
> --- a/drivers/gpu/drm/omapdrm/dss/output.c
> +++ b/drivers/gpu/drm/omapdrm/dss/output.c
> @@ -81,54 +81,35 @@ void omapdss_device_cleanup_output(struct omap_dss_device *out)
> out->next_bridge : out->bridge);
> }
>
> -int dss_install_mgr_ops(struct dss_device *dss,
> - const struct dss_mgr_ops *mgr_ops,
> - struct omap_drm_private *priv)
> -{
> - if (dss->mgr_ops)
> - return -EBUSY;
> -
> - dss->mgr_ops = mgr_ops;
> - dss->mgr_ops_priv = priv;
> -
> - return 0;
> -}
> -
> -void dss_uninstall_mgr_ops(struct dss_device *dss)
> -{
> - dss->mgr_ops = NULL;
> - dss->mgr_ops_priv = NULL;
> -}
> -
> void dss_mgr_set_timings(struct omap_dss_device *dssdev,
> const struct videomode *vm)
> {
> - dssdev->dss->mgr_ops->set_timings(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_set_timings(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel, vm);
> }
>
> void dss_mgr_set_lcd_config(struct omap_dss_device *dssdev,
> const struct dss_lcd_mgr_config *config)
> {
> - dssdev->dss->mgr_ops->set_lcd_config(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_set_lcd_config(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel, config);
> }
>
> int dss_mgr_enable(struct omap_dss_device *dssdev)
> {
> - return dssdev->dss->mgr_ops->enable(dssdev->dss->mgr_ops_priv,
> + return omap_crtc_dss_enable(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel);
> }
>
> void dss_mgr_disable(struct omap_dss_device *dssdev)
> {
> - dssdev->dss->mgr_ops->disable(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_disable(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel);
> }
>
> void dss_mgr_start_update(struct omap_dss_device *dssdev)
> {
> - dssdev->dss->mgr_ops->start_update(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_start_update(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel);
> }
>
> @@ -137,7 +118,7 @@ int dss_mgr_register_framedone_handler(struct omap_dss_device *dssdev,
> {
> struct dss_device *dss = dssdev->dss;
>
> - return dss->mgr_ops->register_framedone_handler(dss->mgr_ops_priv,
> + return omap_crtc_dss_register_framedone(dss->mgr_ops_priv,
> dssdev->dispc_channel,
> handler, data);
> }
> @@ -147,7 +128,7 @@ void dss_mgr_unregister_framedone_handler(struct omap_dss_device *dssdev,
> {
> struct dss_device *dss = dssdev->dss;
>
> - dss->mgr_ops->unregister_framedone_handler(dss->mgr_ops_priv,
> + omap_crtc_dss_unregister_framedone(dss->mgr_ops_priv,
> dssdev->dispc_channel,
> handler, data);
> }
> diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c
> index 0bf5cef579b5..e3259338afb9 100644
> --- a/drivers/gpu/drm/omapdrm/omap_crtc.c
> +++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
> @@ -100,14 +100,14 @@ int omap_crtc_wait_pending(struct drm_crtc *crtc)
> * the upstream part of the video pipe.
> */
>
> -static void omap_crtc_dss_start_update(struct omap_drm_private *priv,
> +void omap_crtc_dss_start_update(struct omap_drm_private *priv,
> enum omap_channel channel)
> {
> dispc_mgr_enable(priv->dispc, channel, true);
> }
>
> /* Called only from the encoder enable/disable and suspend/resume handlers. */
> -static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
> +void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
> {
> struct omap_crtc_state *omap_state = to_omap_crtc_state(crtc->state);
> struct drm_device *dev = crtc->dev;
> @@ -180,8 +180,7 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
> }
>
>
> -static int omap_crtc_dss_enable(struct omap_drm_private *priv,
> - enum omap_channel channel)
> +int omap_crtc_dss_enable(struct omap_drm_private *priv, enum omap_channel channel)
> {
> struct drm_crtc *crtc = priv->channels[channel]->crtc;
> struct omap_crtc *omap_crtc = to_omap_crtc(crtc);
> @@ -193,8 +192,7 @@ static int omap_crtc_dss_enable(struct omap_drm_private *priv,
> return 0;
> }
>
> -static void omap_crtc_dss_disable(struct omap_drm_private *priv,
> - enum omap_channel channel)
> +void omap_crtc_dss_disable(struct omap_drm_private *priv, enum omap_channel channel)
> {
> struct drm_crtc *crtc = priv->channels[channel]->crtc;
> struct omap_crtc *omap_crtc = to_omap_crtc(crtc);
> @@ -202,7 +200,7 @@ static void omap_crtc_dss_disable(struct omap_drm_private *priv,
> omap_crtc_set_enabled(&omap_crtc->base, false);
> }
>
> -static void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> +void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> enum omap_channel channel,
> const struct videomode *vm)
> {
> @@ -213,7 +211,7 @@ static void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> omap_crtc->vm = *vm;
> }
>
> -static void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> +void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> enum omap_channel channel,
> const struct dss_lcd_mgr_config *config)
> {
> @@ -225,7 +223,7 @@ static void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> config);
> }
>
> -static int omap_crtc_dss_register_framedone(
> +int omap_crtc_dss_register_framedone(
> struct omap_drm_private *priv, enum omap_channel channel,
> void (*handler)(void *), void *data)
> {
> @@ -244,7 +242,7 @@ static int omap_crtc_dss_register_framedone(
> return 0;
> }
>
> -static void omap_crtc_dss_unregister_framedone(
> +void omap_crtc_dss_unregister_framedone(
> struct omap_drm_private *priv, enum omap_channel channel,
> void (*handler)(void *), void *data)
> {
> @@ -261,16 +259,6 @@ static void omap_crtc_dss_unregister_framedone(
> omap_crtc->framedone_handler_data = NULL;
> }
>
> -static const struct dss_mgr_ops mgr_ops = {
> - .start_update = omap_crtc_dss_start_update,
> - .enable = omap_crtc_dss_enable,
> - .disable = omap_crtc_dss_disable,
> - .set_timings = omap_crtc_dss_set_timings,
> - .set_lcd_config = omap_crtc_dss_set_lcd_config,
> - .register_framedone_handler = omap_crtc_dss_register_framedone,
> - .unregister_framedone_handler = omap_crtc_dss_unregister_framedone,
> -};
> -
> /* -----------------------------------------------------------------------------
> * Setup, Flush and Page Flip
> */
> @@ -753,16 +741,6 @@ static const char *channel_names[] = {
> [OMAP_DSS_CHANNEL_LCD3] = "lcd3",
> };
>
> -void omap_crtc_pre_init(struct omap_drm_private *priv)
> -{
> - dss_install_mgr_ops(priv->dss, &mgr_ops, priv);
> -}
> -
> -void omap_crtc_pre_uninit(struct omap_drm_private *priv)
> -{
> - dss_uninstall_mgr_ops(priv->dss);
> -}
> -
> /* initialize crtc */
> struct drm_crtc *omap_crtc_init(struct drm_device *dev,
> struct omap_drm_pipeline *pipe,
> diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.h b/drivers/gpu/drm/omapdrm/omap_crtc.h
> index 2fd57751ae2b..a8b9cbee86e0 100644
> --- a/drivers/gpu/drm/omapdrm/omap_crtc.h
> +++ b/drivers/gpu/drm/omapdrm/omap_crtc.h
> @@ -22,8 +22,6 @@ struct videomode;
>
> struct videomode *omap_crtc_timings(struct drm_crtc *crtc);
> enum omap_channel omap_crtc_channel(struct drm_crtc *crtc);
> -void omap_crtc_pre_init(struct omap_drm_private *priv);
> -void omap_crtc_pre_uninit(struct omap_drm_private *priv);
> struct drm_crtc *omap_crtc_init(struct drm_device *dev,
> struct omap_drm_pipeline *pipe,
> struct drm_plane *plane);
> diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c
> index eb419387ed05..c5b2f50439d6 100644
> --- a/drivers/gpu/drm/omapdrm/omap_drv.c
> +++ b/drivers/gpu/drm/omapdrm/omap_drv.c
> @@ -581,7 +581,7 @@ static int omapdrm_init(struct omap_drm_private *priv, struct device *dev)
> priv->dss = pdata->dss;
> priv->dispc = dispc_get_dispc(priv->dss);
>
> - omap_crtc_pre_init(priv);
> + priv->dss->mgr_ops_priv = priv;
>
> soc = soc_device_match(omapdrm_soc_devices);
> priv->omaprev = soc ? (unsigned int)soc->data : 0;
> @@ -634,7 +634,6 @@ static int omapdrm_init(struct omap_drm_private *priv, struct device *dev)
> omap_gem_deinit(ddev);
> destroy_workqueue(priv->wq);
> omap_disconnect_pipelines(ddev);
> - omap_crtc_pre_uninit(priv);
> drm_dev_put(ddev);
> return ret;
> }
> @@ -660,7 +659,6 @@ static void omapdrm_cleanup(struct omap_drm_private *priv)
> destroy_workqueue(priv->wq);
>
> omap_disconnect_pipelines(ddev);
> - omap_crtc_pre_uninit(priv);
>
> drm_dev_put(ddev);
> }
--
Regards,
Laurent Pinchart
WARNING: multiple messages have this Message-ID (diff)
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Tony Lindgren <tony@atomide.com>,
"H . Nikolaus Schaller" <hns@goldelico.com>,
Sekhar Nori <nsekhar@ti.com>, Sebastian Reichel <sre@kernel.org>,
dri-devel@lists.freedesktop.org, linux-omap@vger.kernel.org,
Nikhil Devshatwar <nikhil.nd@ti.com>
Subject: Re: [PATCH v3 56/56] drm/omap: remove dss_mgr_ops
Date: Mon, 9 Nov 2020 13:18:03 +0200 [thread overview]
Message-ID: <20201109111803.GA6029@pendragon.ideasonboard.com> (raw)
In-Reply-To: <20201105120333.947408-57-tomi.valkeinen@ti.com>
Hi Tomi,
Thank you for the patch.
On Thu, Nov 05, 2020 at 02:03:33PM +0200, Tomi Valkeinen wrote:
> dss_mgr_ops was needed with the multi-module architecture, but is no
> longer needed. We can thus remove it and use direct calls.
>
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> drivers/gpu/drm/omapdrm/dss/dss.h | 1 -
> drivers/gpu/drm/omapdrm/dss/omapdss.h | 42 +++++++++++----------------
> drivers/gpu/drm/omapdrm/dss/output.c | 33 +++++----------------
> drivers/gpu/drm/omapdrm/omap_crtc.c | 38 +++++-------------------
> drivers/gpu/drm/omapdrm/omap_crtc.h | 2 --
> drivers/gpu/drm/omapdrm/omap_drv.c | 4 +--
> 6 files changed, 33 insertions(+), 87 deletions(-)
>
> diff --git a/drivers/gpu/drm/omapdrm/dss/dss.h b/drivers/gpu/drm/omapdrm/dss/dss.h
> index 96f702314c8c..a547527bb2f3 100644
> --- a/drivers/gpu/drm/omapdrm/dss/dss.h
> +++ b/drivers/gpu/drm/omapdrm/dss/dss.h
> @@ -257,7 +257,6 @@ struct dss_device {
> struct dss_pll *video2_pll;
>
> struct dispc_device *dispc;
> - const struct dss_mgr_ops *mgr_ops;
> struct omap_drm_private *mgr_ops_priv;
> };
>
> diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b/drivers/gpu/drm/omapdrm/dss/omapdss.h
> index fba5f05e5e48..9df322ca467d 100644
> --- a/drivers/gpu/drm/omapdrm/dss/omapdss.h
> +++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h
> @@ -338,31 +338,23 @@ enum dss_writeback_channel {
> DSS_WB_LCD3_MGR = 7,
> };
>
> -struct dss_mgr_ops {
> - void (*start_update)(struct omap_drm_private *priv,
> - enum omap_channel channel);
> - int (*enable)(struct omap_drm_private *priv,
> - enum omap_channel channel);
> - void (*disable)(struct omap_drm_private *priv,
> - enum omap_channel channel);
> - void (*set_timings)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - const struct videomode *vm);
> - void (*set_lcd_config)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - const struct dss_lcd_mgr_config *config);
> - int (*register_framedone_handler)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - void (*handler)(void *), void *data);
> - void (*unregister_framedone_handler)(struct omap_drm_private *priv,
> - enum omap_channel channel,
> - void (*handler)(void *), void *data);
> -};
> -
> -int dss_install_mgr_ops(struct dss_device *dss,
> - const struct dss_mgr_ops *mgr_ops,
> - struct omap_drm_private *priv);
> -void dss_uninstall_mgr_ops(struct dss_device *dss);
> +void omap_crtc_dss_start_update(struct omap_drm_private *priv,
> + enum omap_channel channel);
> +void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable);
> +int omap_crtc_dss_enable(struct omap_drm_private *priv, enum omap_channel channel);
> +void omap_crtc_dss_disable(struct omap_drm_private *priv, enum omap_channel channel);
> +void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> + enum omap_channel channel,
> + const struct videomode *vm);
> +void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> + enum omap_channel channel,
> + const struct dss_lcd_mgr_config *config);
> +int omap_crtc_dss_register_framedone(
> + struct omap_drm_private *priv, enum omap_channel channel,
> + void (*handler)(void *), void *data);
> +void omap_crtc_dss_unregister_framedone(
> + struct omap_drm_private *priv, enum omap_channel channel,
> + void (*handler)(void *), void *data);
>
> void dss_mgr_set_timings(struct omap_dss_device *dssdev,
> const struct videomode *vm);
> diff --git a/drivers/gpu/drm/omapdrm/dss/output.c b/drivers/gpu/drm/omapdrm/dss/output.c
> index 7a14d2b5b2f7..2121c947947b 100644
> --- a/drivers/gpu/drm/omapdrm/dss/output.c
> +++ b/drivers/gpu/drm/omapdrm/dss/output.c
> @@ -81,54 +81,35 @@ void omapdss_device_cleanup_output(struct omap_dss_device *out)
> out->next_bridge : out->bridge);
> }
>
> -int dss_install_mgr_ops(struct dss_device *dss,
> - const struct dss_mgr_ops *mgr_ops,
> - struct omap_drm_private *priv)
> -{
> - if (dss->mgr_ops)
> - return -EBUSY;
> -
> - dss->mgr_ops = mgr_ops;
> - dss->mgr_ops_priv = priv;
> -
> - return 0;
> -}
> -
> -void dss_uninstall_mgr_ops(struct dss_device *dss)
> -{
> - dss->mgr_ops = NULL;
> - dss->mgr_ops_priv = NULL;
> -}
> -
> void dss_mgr_set_timings(struct omap_dss_device *dssdev,
> const struct videomode *vm)
> {
> - dssdev->dss->mgr_ops->set_timings(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_set_timings(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel, vm);
> }
>
> void dss_mgr_set_lcd_config(struct omap_dss_device *dssdev,
> const struct dss_lcd_mgr_config *config)
> {
> - dssdev->dss->mgr_ops->set_lcd_config(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_set_lcd_config(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel, config);
> }
>
> int dss_mgr_enable(struct omap_dss_device *dssdev)
> {
> - return dssdev->dss->mgr_ops->enable(dssdev->dss->mgr_ops_priv,
> + return omap_crtc_dss_enable(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel);
> }
>
> void dss_mgr_disable(struct omap_dss_device *dssdev)
> {
> - dssdev->dss->mgr_ops->disable(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_disable(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel);
> }
>
> void dss_mgr_start_update(struct omap_dss_device *dssdev)
> {
> - dssdev->dss->mgr_ops->start_update(dssdev->dss->mgr_ops_priv,
> + omap_crtc_dss_start_update(dssdev->dss->mgr_ops_priv,
> dssdev->dispc_channel);
> }
>
> @@ -137,7 +118,7 @@ int dss_mgr_register_framedone_handler(struct omap_dss_device *dssdev,
> {
> struct dss_device *dss = dssdev->dss;
>
> - return dss->mgr_ops->register_framedone_handler(dss->mgr_ops_priv,
> + return omap_crtc_dss_register_framedone(dss->mgr_ops_priv,
> dssdev->dispc_channel,
> handler, data);
> }
> @@ -147,7 +128,7 @@ void dss_mgr_unregister_framedone_handler(struct omap_dss_device *dssdev,
> {
> struct dss_device *dss = dssdev->dss;
>
> - dss->mgr_ops->unregister_framedone_handler(dss->mgr_ops_priv,
> + omap_crtc_dss_unregister_framedone(dss->mgr_ops_priv,
> dssdev->dispc_channel,
> handler, data);
> }
> diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c
> index 0bf5cef579b5..e3259338afb9 100644
> --- a/drivers/gpu/drm/omapdrm/omap_crtc.c
> +++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
> @@ -100,14 +100,14 @@ int omap_crtc_wait_pending(struct drm_crtc *crtc)
> * the upstream part of the video pipe.
> */
>
> -static void omap_crtc_dss_start_update(struct omap_drm_private *priv,
> +void omap_crtc_dss_start_update(struct omap_drm_private *priv,
> enum omap_channel channel)
> {
> dispc_mgr_enable(priv->dispc, channel, true);
> }
>
> /* Called only from the encoder enable/disable and suspend/resume handlers. */
> -static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
> +void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
> {
> struct omap_crtc_state *omap_state = to_omap_crtc_state(crtc->state);
> struct drm_device *dev = crtc->dev;
> @@ -180,8 +180,7 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
> }
>
>
> -static int omap_crtc_dss_enable(struct omap_drm_private *priv,
> - enum omap_channel channel)
> +int omap_crtc_dss_enable(struct omap_drm_private *priv, enum omap_channel channel)
> {
> struct drm_crtc *crtc = priv->channels[channel]->crtc;
> struct omap_crtc *omap_crtc = to_omap_crtc(crtc);
> @@ -193,8 +192,7 @@ static int omap_crtc_dss_enable(struct omap_drm_private *priv,
> return 0;
> }
>
> -static void omap_crtc_dss_disable(struct omap_drm_private *priv,
> - enum omap_channel channel)
> +void omap_crtc_dss_disable(struct omap_drm_private *priv, enum omap_channel channel)
> {
> struct drm_crtc *crtc = priv->channels[channel]->crtc;
> struct omap_crtc *omap_crtc = to_omap_crtc(crtc);
> @@ -202,7 +200,7 @@ static void omap_crtc_dss_disable(struct omap_drm_private *priv,
> omap_crtc_set_enabled(&omap_crtc->base, false);
> }
>
> -static void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> +void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> enum omap_channel channel,
> const struct videomode *vm)
> {
> @@ -213,7 +211,7 @@ static void omap_crtc_dss_set_timings(struct omap_drm_private *priv,
> omap_crtc->vm = *vm;
> }
>
> -static void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> +void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> enum omap_channel channel,
> const struct dss_lcd_mgr_config *config)
> {
> @@ -225,7 +223,7 @@ static void omap_crtc_dss_set_lcd_config(struct omap_drm_private *priv,
> config);
> }
>
> -static int omap_crtc_dss_register_framedone(
> +int omap_crtc_dss_register_framedone(
> struct omap_drm_private *priv, enum omap_channel channel,
> void (*handler)(void *), void *data)
> {
> @@ -244,7 +242,7 @@ static int omap_crtc_dss_register_framedone(
> return 0;
> }
>
> -static void omap_crtc_dss_unregister_framedone(
> +void omap_crtc_dss_unregister_framedone(
> struct omap_drm_private *priv, enum omap_channel channel,
> void (*handler)(void *), void *data)
> {
> @@ -261,16 +259,6 @@ static void omap_crtc_dss_unregister_framedone(
> omap_crtc->framedone_handler_data = NULL;
> }
>
> -static const struct dss_mgr_ops mgr_ops = {
> - .start_update = omap_crtc_dss_start_update,
> - .enable = omap_crtc_dss_enable,
> - .disable = omap_crtc_dss_disable,
> - .set_timings = omap_crtc_dss_set_timings,
> - .set_lcd_config = omap_crtc_dss_set_lcd_config,
> - .register_framedone_handler = omap_crtc_dss_register_framedone,
> - .unregister_framedone_handler = omap_crtc_dss_unregister_framedone,
> -};
> -
> /* -----------------------------------------------------------------------------
> * Setup, Flush and Page Flip
> */
> @@ -753,16 +741,6 @@ static const char *channel_names[] = {
> [OMAP_DSS_CHANNEL_LCD3] = "lcd3",
> };
>
> -void omap_crtc_pre_init(struct omap_drm_private *priv)
> -{
> - dss_install_mgr_ops(priv->dss, &mgr_ops, priv);
> -}
> -
> -void omap_crtc_pre_uninit(struct omap_drm_private *priv)
> -{
> - dss_uninstall_mgr_ops(priv->dss);
> -}
> -
> /* initialize crtc */
> struct drm_crtc *omap_crtc_init(struct drm_device *dev,
> struct omap_drm_pipeline *pipe,
> diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.h b/drivers/gpu/drm/omapdrm/omap_crtc.h
> index 2fd57751ae2b..a8b9cbee86e0 100644
> --- a/drivers/gpu/drm/omapdrm/omap_crtc.h
> +++ b/drivers/gpu/drm/omapdrm/omap_crtc.h
> @@ -22,8 +22,6 @@ struct videomode;
>
> struct videomode *omap_crtc_timings(struct drm_crtc *crtc);
> enum omap_channel omap_crtc_channel(struct drm_crtc *crtc);
> -void omap_crtc_pre_init(struct omap_drm_private *priv);
> -void omap_crtc_pre_uninit(struct omap_drm_private *priv);
> struct drm_crtc *omap_crtc_init(struct drm_device *dev,
> struct omap_drm_pipeline *pipe,
> struct drm_plane *plane);
> diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c
> index eb419387ed05..c5b2f50439d6 100644
> --- a/drivers/gpu/drm/omapdrm/omap_drv.c
> +++ b/drivers/gpu/drm/omapdrm/omap_drv.c
> @@ -581,7 +581,7 @@ static int omapdrm_init(struct omap_drm_private *priv, struct device *dev)
> priv->dss = pdata->dss;
> priv->dispc = dispc_get_dispc(priv->dss);
>
> - omap_crtc_pre_init(priv);
> + priv->dss->mgr_ops_priv = priv;
>
> soc = soc_device_match(omapdrm_soc_devices);
> priv->omaprev = soc ? (unsigned int)soc->data : 0;
> @@ -634,7 +634,6 @@ static int omapdrm_init(struct omap_drm_private *priv, struct device *dev)
> omap_gem_deinit(ddev);
> destroy_workqueue(priv->wq);
> omap_disconnect_pipelines(ddev);
> - omap_crtc_pre_uninit(priv);
> drm_dev_put(ddev);
> return ret;
> }
> @@ -660,7 +659,6 @@ static void omapdrm_cleanup(struct omap_drm_private *priv)
> destroy_workqueue(priv->wq);
>
> omap_disconnect_pipelines(ddev);
> - omap_crtc_pre_uninit(priv);
>
> drm_dev_put(ddev);
> }
--
Regards,
Laurent Pinchart
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2020-11-09 11:18 UTC|newest]
Thread overview: 328+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-05 12:02 [PATCH v3 00/56] Convert DSI code to use drm_mipi_dsi and drm_panel Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-05 12:02 ` [PATCH v3 01/56] drm/dsi: add MIPI_DSI_MODE_ULPS_IDLE Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-06 4:41 ` Laurent Pinchart
2020-11-06 4:41 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 02/56] Revert "drm/omap: dss: Remove unused omap_dss_device operations" Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-05 21:27 ` Sam Ravnborg
2020-11-05 21:27 ` Sam Ravnborg
2020-11-06 4:50 ` Laurent Pinchart
2020-11-06 4:50 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 03/56] drm/omap: drop unused dsi.configure_pins Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-06 4:50 ` Laurent Pinchart
2020-11-06 4:50 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 04/56] drm/omap: dsi: use MIPI_DSI_FMT_* instead of OMAP_DSS_DSI_FMT_* Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-06 4:56 ` Laurent Pinchart
2020-11-06 4:56 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 05/56] drm/omap: constify write buffers Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-06 4:57 ` Laurent Pinchart
2020-11-06 4:57 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 06/56] drm/omap: dsi: add generic transfer function Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-06 5:05 ` Laurent Pinchart
2020-11-06 5:05 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 07/56] drm/omap: panel-dsi-cm: convert to transfer API Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-06 5:08 ` Laurent Pinchart
2020-11-06 5:08 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 08/56] drm/omap: dsi: unexport specific data transfer functions Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:10 ` Laurent Pinchart
2020-11-09 8:10 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 09/56] drm/omap: dsi: drop virtual channel logic Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:14 ` Laurent Pinchart
2020-11-09 8:14 ` Laurent Pinchart
2020-11-09 8:20 ` Tomi Valkeinen
2020-11-09 8:20 ` Tomi Valkeinen
2020-11-09 8:18 ` Tomi Valkeinen
2020-11-09 8:18 ` Tomi Valkeinen
2020-11-05 12:02 ` [PATCH v3 10/56] drm/omap: dsi: simplify write function Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:21 ` Laurent Pinchart
2020-11-09 8:21 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 11/56] drm/omap: dsi: simplify read functions Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:28 ` Laurent Pinchart
2020-11-09 8:28 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 12/56] drm/omap: dsi: switch dsi_vc_send_long/short to mipi_dsi_msg Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:33 ` Laurent Pinchart
2020-11-09 8:33 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 13/56] drm/omap: dsi: introduce mipi_dsi_host Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:38 ` Laurent Pinchart
2020-11-09 8:38 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 14/56] drm/omap: panel-dsi-cm: use DSI helpers Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:40 ` Laurent Pinchart
2020-11-09 8:40 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 15/56] drm/omap: dsi: request VC via mipi_dsi_attach Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:42 ` Laurent Pinchart
2020-11-09 8:42 ` Laurent Pinchart
2020-11-09 11:16 ` Tomi Valkeinen
2020-11-09 11:16 ` Tomi Valkeinen
2020-11-05 12:02 ` [PATCH v3 16/56] drm/omap: panel-dsi-cm: drop hardcoded VC Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:43 ` Laurent Pinchart
2020-11-09 8:43 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 17/56] drm/omap: panel-dsi-cm: use common MIPI DCS 1.3 defines Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:44 ` Laurent Pinchart
2020-11-09 8:44 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 18/56] drm/omap: dsi: drop unused memory_read() Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:45 ` Laurent Pinchart
2020-11-09 8:45 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 19/56] drm/omap: dsi: drop unused get_te() Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:45 ` Laurent Pinchart
2020-11-09 8:45 ` Laurent Pinchart
2020-11-09 9:49 ` Tomi Valkeinen
2020-11-09 9:49 ` Tomi Valkeinen
2020-11-05 12:02 ` [PATCH v3 20/56] drm/omap: dsi: drop unused enable_te() Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:46 ` Laurent Pinchart
2020-11-09 8:46 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 21/56] drm/omap: dsi: drop useless sync() Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:46 ` Laurent Pinchart
2020-11-09 8:46 ` Laurent Pinchart
2020-11-05 12:02 ` [PATCH v3 22/56] drm/omap: dsi: use pixel-format and mode from attach Tomi Valkeinen
2020-11-05 12:02 ` Tomi Valkeinen
2020-11-09 8:49 ` Laurent Pinchart
2020-11-09 8:49 ` Laurent Pinchart
2020-11-09 9:45 ` Tomi Valkeinen
2020-11-09 9:45 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 23/56] drm/omap: panel-dsi-cm: use bulk regulator API Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 8:51 ` Laurent Pinchart
2020-11-09 8:51 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 24/56] drm/omap: dsi: lp/hs switching support for transfer() Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 8:53 ` Laurent Pinchart
2020-11-09 8:53 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 25/56] drm/omap: dsi: move TE GPIO handling into core Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 9:19 ` Laurent Pinchart
2020-11-09 9:19 ` Laurent Pinchart
2020-11-11 13:26 ` Tomi Valkeinen
2020-11-11 13:26 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 26/56] drm/omap: dsi: drop custom enable_te() API Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 9:32 ` Laurent Pinchart
2020-11-09 9:32 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 27/56] drm/omap: dsi: do bus locking in host driver Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 9:52 ` Laurent Pinchart
2020-11-09 9:52 ` Laurent Pinchart
2020-11-09 10:08 ` Tomi Valkeinen
2020-11-09 10:08 ` Tomi Valkeinen
2020-11-09 13:27 ` Sebastian Reichel
2020-11-09 13:27 ` Sebastian Reichel
2020-11-09 14:25 ` Tomi Valkeinen
2020-11-09 14:25 ` Tomi Valkeinen
2020-11-11 13:35 ` Tomi Valkeinen
2020-11-11 13:35 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 28/56] drm/omap: dsi: untangle ulps ops from enable/disable Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 9:57 ` Laurent Pinchart
2020-11-09 9:57 ` Laurent Pinchart
2020-11-11 14:05 ` Tomi Valkeinen
2020-11-11 14:05 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 29/56] drm/omap: dsi: do ULPS in host driver Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:03 ` Laurent Pinchart
2020-11-09 10:03 ` Laurent Pinchart
2020-11-11 15:29 ` Tomi Valkeinen
2020-11-11 15:29 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 30/56] drm/omap: dsi: move panel refresh function to host Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:10 ` Laurent Pinchart
2020-11-09 10:10 ` Laurent Pinchart
2020-11-11 15:34 ` Tomi Valkeinen
2020-11-11 15:34 ` Tomi Valkeinen
2020-11-11 15:58 ` Laurent Pinchart
2020-11-11 15:58 ` Laurent Pinchart
2020-11-12 8:08 ` Tomi Valkeinen
2020-11-12 8:08 ` Tomi Valkeinen
2020-11-16 9:22 ` Laurent Pinchart
2020-11-16 9:22 ` Laurent Pinchart
2020-11-17 10:04 ` Sebastian Reichel
2020-11-17 10:04 ` Sebastian Reichel
2020-11-05 12:03 ` [PATCH v3 31/56] drm/omap: dsi: Reverse direction of the DSS device enable/disable operations Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:17 ` Laurent Pinchart
2020-11-09 10:17 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 32/56] drm/omap: dsi: drop custom panel capability support Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:20 ` Laurent Pinchart
2020-11-09 10:20 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 33/56] drm/omap: dsi: convert to drm_panel Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:39 ` Laurent Pinchart
2020-11-09 10:39 ` Laurent Pinchart
2020-11-11 15:54 ` Tomi Valkeinen
2020-11-11 15:54 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 34/56] drm/omap: drop omapdss-boot-init Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:40 ` Laurent Pinchart
2020-11-09 10:40 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 35/56] drm/omap: dsi: implement check timings Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:47 ` Laurent Pinchart
2020-11-09 10:47 ` Laurent Pinchart
2020-11-11 12:36 ` Tomi Valkeinen
2020-11-11 12:36 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 36/56] drm/omap: panel-dsi-cm: use DEVICE_ATTR_RO Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:48 ` Laurent Pinchart
2020-11-09 10:48 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 37/56] drm/omap: panel-dsi-cm: support unbinding Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:49 ` Laurent Pinchart
2020-11-09 10:49 ` Laurent Pinchart
2020-11-11 12:03 ` Tomi Valkeinen
2020-11-11 12:03 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 38/56] drm/omap: panel-dsi-cm: fix remove() Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:50 ` Laurent Pinchart
2020-11-09 10:50 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 39/56] drm/omap: remove global dss_device variable Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:51 ` Laurent Pinchart
2020-11-09 10:51 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 40/56] drm/panel: Move OMAP's DSI command mode panel driver Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-05 15:16 ` Sam Ravnborg
2020-11-05 15:16 ` Sam Ravnborg
2020-11-05 15:27 ` Tomi Valkeinen
2020-11-05 15:27 ` Tomi Valkeinen
2020-11-09 10:53 ` Laurent Pinchart
2020-11-09 10:53 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 41/56] drm/omap: dsi: Register a drm_bridge Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 10:54 ` Laurent Pinchart
2020-11-09 10:54 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 42/56] drm/omap: remove legacy DSS device operations Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:01 ` Laurent Pinchart
2020-11-09 11:01 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 43/56] drm/omap: remove unused omap_connector Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:02 ` Laurent Pinchart
2020-11-09 11:02 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 44/56] drm/omap: simplify omap_display_id Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:03 ` Laurent Pinchart
2020-11-09 11:03 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 45/56] drm/omap: drop unused DSS next pointer Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:04 ` Laurent Pinchart
2020-11-09 11:04 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 46/56] drm/omap: drop empty omap_encoder helper functions Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:05 ` Laurent Pinchart
2020-11-09 11:05 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 47/56] drm/omap: drop DSS ops_flags Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:05 ` Laurent Pinchart
2020-11-09 11:05 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 48/56] drm/omap: drop dssdev display field Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:06 ` Laurent Pinchart
2020-11-09 11:06 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 49/56] drm/omap: simplify DSI manual update code Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:07 ` Laurent Pinchart
2020-11-09 11:07 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 50/56] drm/omap: dsi: simplify pin config Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:09 ` Laurent Pinchart
2020-11-09 11:09 ` Laurent Pinchart
2020-11-11 12:24 ` Tomi Valkeinen
2020-11-11 12:24 ` Tomi Valkeinen
2020-11-05 12:03 ` [PATCH v3 51/56] ARM: omap2plus_defconfig: Update for moved DSI command mode panel Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:10 ` Laurent Pinchart
2020-11-09 11:10 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 52/56] drm/omap: squash omapdrm sub-modules into one Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:15 ` Laurent Pinchart
2020-11-09 11:15 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 53/56] drm/omap: remove unused display.c Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:16 ` Laurent Pinchart
2020-11-09 11:16 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 54/56] drm/omap: drop unused owner field Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:16 ` Laurent Pinchart
2020-11-09 11:16 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 55/56] drm/omap: remove dispc_ops Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:17 ` Laurent Pinchart
2020-11-09 11:17 ` Laurent Pinchart
2020-11-05 12:03 ` [PATCH v3 56/56] drm/omap: remove dss_mgr_ops Tomi Valkeinen
2020-11-05 12:03 ` Tomi Valkeinen
2020-11-09 11:18 ` Laurent Pinchart [this message]
2020-11-09 11:18 ` Laurent Pinchart
2020-11-05 17:15 ` [PATCH v3 00/56] Convert DSI code to use drm_mipi_dsi and drm_panel H. Nikolaus Schaller
2020-11-05 17:15 ` H. Nikolaus Schaller
2020-11-05 17:36 ` Tomi Valkeinen
2020-11-05 17:36 ` Tomi Valkeinen
2020-11-05 18:14 ` H. Nikolaus Schaller
2020-11-05 18:14 ` H. Nikolaus Schaller
2020-11-05 18:28 ` Tomi Valkeinen
2020-11-05 18:28 ` Tomi Valkeinen
2020-11-05 18:56 ` H. Nikolaus Schaller
2020-11-05 18:56 ` H. Nikolaus Schaller
2020-11-06 14:37 ` Tomi Valkeinen
2020-11-06 14:37 ` Tomi Valkeinen
2020-11-06 15:04 ` Tomi Valkeinen
2020-11-06 15:04 ` Tomi Valkeinen
2020-11-07 12:19 ` H. Nikolaus Schaller
2020-11-07 12:19 ` H. Nikolaus Schaller
2020-11-09 8:04 ` Tomi Valkeinen
2020-11-09 8:04 ` Tomi Valkeinen
2020-11-09 9:30 ` H. Nikolaus Schaller
2020-11-09 9:30 ` H. Nikolaus Schaller
2020-11-09 10:22 ` Tomi Valkeinen
2020-11-09 10:22 ` Tomi Valkeinen
2020-11-09 10:31 ` H. Nikolaus Schaller
2020-11-09 10:31 ` H. Nikolaus Schaller
2020-11-09 10:34 ` Tomi Valkeinen
2020-11-09 10:34 ` Tomi Valkeinen
2020-11-09 11:09 ` H. Nikolaus Schaller
2020-11-09 11:09 ` H. Nikolaus Schaller
2020-11-09 11:33 ` Tomi Valkeinen
2020-11-09 11:33 ` Tomi Valkeinen
2020-11-10 13:49 ` H. Nikolaus Schaller
2020-11-10 13:49 ` H. Nikolaus Schaller
2020-11-10 15:25 ` Tomi Valkeinen
2020-11-10 15:25 ` Tomi Valkeinen
2020-11-10 16:49 ` H. Nikolaus Schaller
2020-11-10 16:49 ` H. Nikolaus Schaller
2020-11-10 16:52 ` Tomi Valkeinen
2020-11-10 16:52 ` Tomi Valkeinen
2020-11-10 21:04 ` H. Nikolaus Schaller
2020-11-10 21:04 ` H. Nikolaus Schaller
2020-11-11 6:40 ` Tomi Valkeinen
2020-11-11 6:40 ` Tomi Valkeinen
2020-11-11 7:48 ` H. Nikolaus Schaller
2020-11-11 7:48 ` H. Nikolaus Schaller
2020-11-11 10:11 ` Tomi Valkeinen
2020-11-11 10:11 ` Tomi Valkeinen
2020-11-11 19:27 ` H. Nikolaus Schaller
2020-11-11 19:27 ` H. Nikolaus Schaller
2020-11-05 21:31 ` Sam Ravnborg
2020-11-05 21:31 ` Sam Ravnborg
2020-11-08 16:33 ` Nikhil Devshatwar
2020-11-08 16:33 ` Nikhil Devshatwar
[not found] ` <BAFBC885-9BBE-46D1-B4C4-79910705864A@goldelico.com>
[not found] ` <74abbdc4-cc1e-9caf-d4ee-0a5cdb557643@ti.com>
[not found] ` <b0677958-02ad-1d2f-d755-! 25a9d384eddc@ti.com>
[not found] ` <1A09B4DA-F726-4F37-8CF4-BC192C659950@goldelico.com>
[not found] ` <9a4e373e-9092-6d82-937a-bc663d2376b4@ti.com>
[not found] ` <09ebc3e3-72c7-41fb-fb21-bf28c! f883d3f@ti.com>
[not found] ` <E738362A-8ECE-4ED5-8057-2ABB6F5C3056@goldelico.com>
[not found] ` <9a21b475-eff0-9882-8d65-d1f! dd2139dc4@ti.com>
[not found] ` <A1DEB54D-FEC0-493A-858C-E5C0DB24B35E@goldelico.com>
[not found] ` <1150ba22-1ae2-39f3-0924-7! a1f1b468597@ti.com>
[not found] ` <2999ED77-B9F7-4197-81B8-F1AFF329A1E9@goldelico.com>
[not found] ` <cbc147d2-af41-2bed-5670-530d45cfb24e@ti.com>
[not found] ` <106bfbee-c472-c04c-0f7b-db108a090a63@ti.com>
[not found] ` <420b81bd-fc95-e294-fcbe-f34db1ef! f9e7@ti.c om>
[not found] ` <B2FBCAE4-FAD9-4C0D-9C75-63A701215886@goldelico.com>
[not found] ` <826B2E97-8B77-412A-8093-753BF7A65EE1@goldelico.com>
[not found] ` <acad2006-53a2-6587-b8e6-787e358! 8932a@ti.com>
[not found] ` <AF87C7B4-DCD2-4207-A300-567DB65B08ED@goldelico.com>
[not found] ` <27cfb13a-62e3-0a53-153f-92641c437cee@ti. com>
[not found] ` <27cfb13a-62e3-0a53-153f-92641c437cee@ti.com>
2020-11-16 9:16 ` H. Nikolaus Schaller
2020-11-16 9:16 ` H. Nikolaus Schaller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201109111803.GA6029@pendragon.ideasonboard.com \
--to=laurent.pinchart@ideasonboard.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=hns@goldelico.com \
--cc=linux-omap@vger.kernel.org \
--cc=nikhil.nd@ti.com \
--cc=nsekhar@ti.com \
--cc=sre@kernel.org \
--cc=tomi.valkeinen@ti.com \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.