Message ID | 20191202193230.21310-7-sam@ravnborg.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/panel infrastructure + backlight update | expand |
Hi Sam, Thank you for the patch. On Mon, Dec 02, 2019 at 08:32:10PM +0100, Sam Ravnborg wrote: > To facilitate that connector creation will be moved > to display drivers, decouple the drm_connector from drm_panel. "To facilitate moving connector creation to display drivers, ..." > Add a connector argument to drm_panel_get_modes() > > All users of drm_panel_get_modes() already had the connector > available, so updating users was trivial. > > With this patch drm_panel no longer keep a copy of the drm_connector. s/keep a copy of/keeps a reference to/ > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > Cc: Thierry Reding <thierry.reding@gmail.com> > Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com> > Cc: Sam Ravnborg <sam@ravnborg.org> > Cc: Andrzej Hajda <a.hajda@samsung.com> > Cc: Neil Armstrong <narmstrong@baylibre.com> > Cc: Jonas Karlman <jonas@kwiboo.se> > Cc: Jernej Skrabec <jernej.skrabec@siol.net> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Cc: Maxime Ripard <mripard@kernel.org> > Cc: David Airlie <airlied@linux.ie> > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Inki Dae <inki.dae@samsung.com> > Cc: Joonyoung Shim <jy0922.shim@samsung.com> > Cc: Seung-Woo Kim <sw0312.kim@samsung.com> > Cc: Kyungmin Park <kyungmin.park@samsung.com> > Cc: Kukjin Kim <kgene@kernel.org> > Cc: Krzysztof Kozlowski <krzk@kernel.org> > Cc: Stefan Agner <stefan@agner.ch> > Cc: Alison Wang <alison.wang@nxp.com> > Cc: Philipp Zabel <p.zabel@pengutronix.de> > Cc: Shawn Guo <shawnguo@kernel.org> > Cc: Sascha Hauer <s.hauer@pengutronix.de> > Cc: Pengutronix Kernel Team <kernel@pengutronix.de> > Cc: Fabio Estevam <festevam@gmail.com> > Cc: NXP Linux Team <linux-imx@nxp.com> > Cc: CK Hu <ck.hu@mediatek.com> > Cc: Matthias Brugger <matthias.bgg@gmail.com> > Cc: Marek Vasut <marex@denx.de> > Cc: Tomi Valkeinen <tomi.valkeinen@ti.com> > Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> > Cc: Sandy Huang <hjc@rock-chips.com> > Cc: "Heiko Stübner" <heiko@sntech.de> > Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org> > Cc: Vincent Abriou <vincent.abriou@st.com> > Cc: Chen-Yu Tsai <wens@csie.org> > Cc: Jonathan Hunter <jonathanh@nvidia.com> > Cc: Torsten Duwe <duwe@lst.de> > Cc: Vasily Khoruzhick <anarsoul@gmail.com> > Cc: Icenowy Zheng <icenowy@aosc.io> > Cc: Sean Paul <seanpaul@chromium.org> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Boris Brezillon <boris.brezillon@collabora.com> > Cc: Hariprasad Kelam <hariprasad.kelam@gmail.com> > Cc: Alexios Zavras <alexios.zavras@intel.com> > Cc: Brian Masney <masneyb@onstation.org> > Cc: Rob Clark <robdclark@chromium.org> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Allison Randal <allison@lohutok.net> > Cc: Shayenne Moura <shayenneluzmoura@gmail.com> > Cc: Abhinav Kumar <abhinavk@codeaurora.org> > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-samsung-soc@vger.kernel.org > Cc: linux-mediatek@lists.infradead.org > Cc: linux-renesas-soc@vger.kernel.org > Cc: linux-rockchip@lists.infradead.org > Cc: linux-tegra@vger.kernel.org > --- > drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 2 +- > drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 2 +- > drivers/gpu/drm/bridge/panel.c | 2 +- > drivers/gpu/drm/bridge/parade-ps8622.c | 2 +- > drivers/gpu/drm/bridge/tc358764.c | 2 +- > drivers/gpu/drm/bridge/tc358767.c | 2 +- > drivers/gpu/drm/bridge/ti-sn65dsi86.c | 2 +- > drivers/gpu/drm/drm_panel.c | 10 +++++----- > drivers/gpu/drm/exynos/exynos_drm_dpi.c | 2 +- > drivers/gpu/drm/exynos/exynos_drm_dsi.c | 2 +- > drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 2 +- > drivers/gpu/drm/imx/imx-ldb.c | 2 +- > drivers/gpu/drm/imx/parallel-display.c | 2 +- > drivers/gpu/drm/mediatek/mtk_dsi.c | 2 +- > drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c | 2 +- > drivers/gpu/drm/msm/dsi/dsi_manager.c | 2 +- > drivers/gpu/drm/mxsfb/mxsfb_out.c | 2 +- > drivers/gpu/drm/omapdrm/omap_connector.c | 3 ++- > drivers/gpu/drm/rcar-du/rcar_lvds.c | 2 +- > drivers/gpu/drm/rockchip/rockchip_lvds.c | 2 +- > drivers/gpu/drm/sti/sti_dvo.c | 2 +- > drivers/gpu/drm/sun4i/sun4i_lvds.c | 2 +- > drivers/gpu/drm/sun4i/sun4i_rgb.c | 2 +- > drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 2 +- > drivers/gpu/drm/tegra/output.c | 2 +- > include/drm/drm_panel.h | 9 +-------- > 26 files changed, 31 insertions(+), 37 deletions(-) Another big set of manual changes :-) > > diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > index b4f3a923a52a..9917ce0d86a0 100644 > --- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > @@ -493,7 +493,7 @@ static int anx6345_get_modes(struct drm_connector *connector) > mutex_unlock(&anx6345->lock); > > if (!num_modes && anx6345->panel) > - num_modes += drm_panel_get_modes(anx6345->panel); > + num_modes += drm_panel_get_modes(anx6345->panel, connector); > > return num_modes; > } > diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > index bb411fe52ae8..6effe532f820 100644 > --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > @@ -1111,7 +1111,7 @@ static int analogix_dp_get_modes(struct drm_connector *connector) > int ret, num_modes = 0; > > if (dp->plat_data->panel) { > - num_modes += drm_panel_get_modes(dp->plat_data->panel); > + num_modes += drm_panel_get_modes(dp->plat_data->panel, connector); > } else { > ret = analogix_dp_prepare_panel(dp, true, false); > if (ret) { > diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c > index c5e27b81588a..65cbd4a283fb 100644 > --- a/drivers/gpu/drm/bridge/panel.c > +++ b/drivers/gpu/drm/bridge/panel.c > @@ -37,7 +37,7 @@ static int panel_bridge_connector_get_modes(struct drm_connector *connector) > struct panel_bridge *panel_bridge = > drm_connector_to_panel_bridge(connector); > > - return drm_panel_get_modes(panel_bridge->panel); > + return drm_panel_get_modes(panel_bridge->panel, connector); > } > > static const struct drm_connector_helper_funcs > diff --git a/drivers/gpu/drm/bridge/parade-ps8622.c b/drivers/gpu/drm/bridge/parade-ps8622.c > index b7a72dfdcac3..10c47c008b40 100644 > --- a/drivers/gpu/drm/bridge/parade-ps8622.c > +++ b/drivers/gpu/drm/bridge/parade-ps8622.c > @@ -461,7 +461,7 @@ static int ps8622_get_modes(struct drm_connector *connector) > > ps8622 = connector_to_ps8622(connector); > > - return drm_panel_get_modes(ps8622->panel); > + return drm_panel_get_modes(ps8622->panel, connector); > } > > static const struct drm_connector_helper_funcs ps8622_connector_helper_funcs = { > diff --git a/drivers/gpu/drm/bridge/tc358764.c b/drivers/gpu/drm/bridge/tc358764.c > index db298f550a5a..96207fcfde19 100644 > --- a/drivers/gpu/drm/bridge/tc358764.c > +++ b/drivers/gpu/drm/bridge/tc358764.c > @@ -282,7 +282,7 @@ static int tc358764_get_modes(struct drm_connector *connector) > { > struct tc358764 *ctx = connector_to_tc358764(connector); > > - return drm_panel_get_modes(ctx->panel); > + return drm_panel_get_modes(ctx->panel, connector); > } > > static const > diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c > index 8029478ffebb..3709e5ace724 100644 > --- a/drivers/gpu/drm/bridge/tc358767.c > +++ b/drivers/gpu/drm/bridge/tc358767.c > @@ -1346,7 +1346,7 @@ static int tc_connector_get_modes(struct drm_connector *connector) > return 0; > } > > - count = drm_panel_get_modes(tc->panel); > + count = drm_panel_get_modes(tc->panel, connector); > if (count > 0) > return count; > > diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > index 43abf01ebd4c..9a2dd986afa5 100644 > --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c > +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c > @@ -206,7 +206,7 @@ static int ti_sn_bridge_connector_get_modes(struct drm_connector *connector) > { > struct ti_sn_bridge *pdata = connector_to_ti_sn_bridge(connector); > > - return drm_panel_get_modes(pdata->panel); > + return drm_panel_get_modes(pdata->panel, connector); > } > > static enum drm_mode_status > diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c > index 9927e28d93e6..fd428b6d25b0 100644 > --- a/drivers/gpu/drm/drm_panel.c > +++ b/drivers/gpu/drm/drm_panel.c > @@ -113,10 +113,9 @@ EXPORT_SYMBOL(drm_panel_remove); > */ > int drm_panel_attach(struct drm_panel *panel, struct drm_connector *connector) > { > - if (panel->connector) > + if (panel->drm) > return -EBUSY; > > - panel->connector = connector; > panel->drm = connector->dev; > > return 0; > @@ -135,7 +134,6 @@ EXPORT_SYMBOL(drm_panel_attach); > */ > void drm_panel_detach(struct drm_panel *panel) > { > - panel->connector = NULL; > panel->drm = NULL; > } > EXPORT_SYMBOL(drm_panel_detach); > @@ -239,6 +237,7 @@ EXPORT_SYMBOL(drm_panel_disable); > /** > * drm_panel_get_modes - probe the available display modes of a panel > * @panel: DRM panel > + * @connector: DRM connector > * > * The modes probed from the panel are automatically added to the connector > * that the panel is attached to. "... to the given connector." > @@ -246,13 +245,14 @@ EXPORT_SYMBOL(drm_panel_disable); > * Return: The number of modes available from the panel on success or a > * negative error code on failure. > */ > -int drm_panel_get_modes(struct drm_panel *panel) > +int drm_panel_get_modes(struct drm_panel *panel, > + struct drm_connector *connector) > { > if (!panel) > return -EINVAL; > > if (panel->funcs && panel->funcs->get_modes) > - return panel->funcs->get_modes(panel, panel->connector); > + return panel->funcs->get_modes(panel, connector); I really like how you've split 05/26 and 06/26 in two patches. With the small issues above addressed, Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > > return 0; > } > diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c > index 5479ff71cbc6..43fa0f26c052 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_dpi.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c > @@ -85,7 +85,7 @@ static int exynos_dpi_get_modes(struct drm_connector *connector) > } > > if (ctx->panel) > - return drm_panel_get_modes(ctx->panel); > + return drm_panel_get_modes(ctx->panel, connector); > > return 0; > } > diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c > index ceb370864cc4..d14d3f25d344 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c > @@ -1461,7 +1461,7 @@ static int exynos_dsi_get_modes(struct drm_connector *connector) > struct exynos_dsi *dsi = connector_to_dsi(connector); > > if (dsi->panel) > - return drm_panel_get_modes(dsi->panel); > + return drm_panel_get_modes(dsi->panel, connector); > > return 0; > } > diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c > index 82c972e9c024..9598ee3cc4d2 100644 > --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c > +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c > @@ -68,7 +68,7 @@ static int fsl_dcu_drm_connector_get_modes(struct drm_connector *connector) > struct fsl_dcu_drm_connector *fsl_connector; > > fsl_connector = to_fsl_dcu_connector(connector); > - return drm_panel_get_modes(fsl_connector->panel); > + return drm_panel_get_modes(fsl_connector->panel, connector); > } > > static int fsl_dcu_drm_connector_mode_valid(struct drm_connector *connector, > diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c > index 208069faf183..8cb2665b2c74 100644 > --- a/drivers/gpu/drm/imx/imx-ldb.c > +++ b/drivers/gpu/drm/imx/imx-ldb.c > @@ -127,7 +127,7 @@ static int imx_ldb_connector_get_modes(struct drm_connector *connector) > struct imx_ldb_channel *imx_ldb_ch = con_to_imx_ldb_ch(connector); > int num_modes; > > - num_modes = drm_panel_get_modes(imx_ldb_ch->panel); > + num_modes = drm_panel_get_modes(imx_ldb_ch->panel, connector); > if (num_modes > 0) > return num_modes; > > diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c > index 35518e5de356..3dca424059f7 100644 > --- a/drivers/gpu/drm/imx/parallel-display.c > +++ b/drivers/gpu/drm/imx/parallel-display.c > @@ -50,7 +50,7 @@ static int imx_pd_connector_get_modes(struct drm_connector *connector) > struct device_node *np = imxpd->dev->of_node; > int num_modes; > > - num_modes = drm_panel_get_modes(imxpd->panel); > + num_modes = drm_panel_get_modes(imxpd->panel, connector); > if (num_modes > 0) > return num_modes; > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > index e9931bbbe846..3b5e016d16c4 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > @@ -821,7 +821,7 @@ static int mtk_dsi_connector_get_modes(struct drm_connector *connector) > { > struct mtk_dsi *dsi = connector_to_dsi(connector); > > - return drm_panel_get_modes(dsi->panel); > + return drm_panel_get_modes(dsi->panel, connector); > } > > static const struct drm_encoder_helper_funcs mtk_dsi_encoder_helper_funcs = { > diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c > index 31abd2352f3e..c7df71e2fafc 100644 > --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c > +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c > @@ -53,7 +53,7 @@ static int mdp4_lvds_connector_get_modes(struct drm_connector *connector) > if (panel) { > drm_panel_attach(panel, connector); > > - ret = drm_panel_get_modes(panel); > + ret = drm_panel_get_modes(panel, connector); > > drm_panel_detach(panel); > } > diff --git a/drivers/gpu/drm/msm/dsi/dsi_manager.c b/drivers/gpu/drm/msm/dsi/dsi_manager.c > index 271aa7bbca92..0fc29f1be8cc 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi_manager.c > +++ b/drivers/gpu/drm/msm/dsi/dsi_manager.c > @@ -329,7 +329,7 @@ static int dsi_mgr_connector_get_modes(struct drm_connector *connector) > * attached to the drm_panel. > */ > drm_panel_attach(panel, connector); > - num = drm_panel_get_modes(panel); > + num = drm_panel_get_modes(panel, connector); > if (!num) > return 0; > > diff --git a/drivers/gpu/drm/mxsfb/mxsfb_out.c b/drivers/gpu/drm/mxsfb/mxsfb_out.c > index 4eb94744c526..9eca1605d11d 100644 > --- a/drivers/gpu/drm/mxsfb/mxsfb_out.c > +++ b/drivers/gpu/drm/mxsfb/mxsfb_out.c > @@ -31,7 +31,7 @@ static int mxsfb_panel_get_modes(struct drm_connector *connector) > drm_connector_to_mxsfb_drm_private(connector); > > if (mxsfb->panel) > - return drm_panel_get_modes(mxsfb->panel); > + return drm_panel_get_modes(mxsfb->panel, connector); > > return 0; > } > diff --git a/drivers/gpu/drm/omapdrm/omap_connector.c b/drivers/gpu/drm/omapdrm/omap_connector.c > index 5b8799c69f68..94cded387174 100644 > --- a/drivers/gpu/drm/omapdrm/omap_connector.c > +++ b/drivers/gpu/drm/omapdrm/omap_connector.c > @@ -229,7 +229,8 @@ static int omap_connector_get_modes(struct drm_connector *connector) > * operation to the panel API. > */ > if (omap_connector->output->panel) > - return drm_panel_get_modes(omap_connector->output->panel); > + return drm_panel_get_modes(omap_connector->output->panel, > + connector); > > /* > * We can't retrieve modes, which can happen for instance for a DVI or > diff --git a/drivers/gpu/drm/rcar-du/rcar_lvds.c b/drivers/gpu/drm/rcar-du/rcar_lvds.c > index 8c6c172bbf2e..2cf44b91853c 100644 > --- a/drivers/gpu/drm/rcar-du/rcar_lvds.c > +++ b/drivers/gpu/drm/rcar-du/rcar_lvds.c > @@ -91,7 +91,7 @@ static int rcar_lvds_connector_get_modes(struct drm_connector *connector) > { > struct rcar_lvds *lvds = connector_to_rcar_lvds(connector); > > - return drm_panel_get_modes(lvds->panel); > + return drm_panel_get_modes(lvds->panel, connector); > } > > static int rcar_lvds_connector_atomic_check(struct drm_connector *connector, > diff --git a/drivers/gpu/drm/rockchip/rockchip_lvds.c b/drivers/gpu/drm/rockchip/rockchip_lvds.c > index 8a4c9af0ba73..325811d2e26e 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_lvds.c > +++ b/drivers/gpu/drm/rockchip/rockchip_lvds.c > @@ -201,7 +201,7 @@ static int rockchip_lvds_connector_get_modes(struct drm_connector *connector) > struct rockchip_lvds *lvds = connector_to_lvds(connector); > struct drm_panel *panel = lvds->panel; > > - return drm_panel_get_modes(panel); > + return drm_panel_get_modes(panel, connector); > } > > static const > diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c > index 68289b0b063a..df2ee86cd4c1 100644 > --- a/drivers/gpu/drm/sti/sti_dvo.c > +++ b/drivers/gpu/drm/sti/sti_dvo.c > @@ -339,7 +339,7 @@ static int sti_dvo_connector_get_modes(struct drm_connector *connector) > struct sti_dvo *dvo = dvo_connector->dvo; > > if (dvo->panel) > - return drm_panel_get_modes(dvo->panel); > + return drm_panel_get_modes(dvo->panel, connector); > > return 0; > } > diff --git a/drivers/gpu/drm/sun4i/sun4i_lvds.c b/drivers/gpu/drm/sun4i/sun4i_lvds.c > index 25ab2ef6d545..65b7a8739666 100644 > --- a/drivers/gpu/drm/sun4i/sun4i_lvds.c > +++ b/drivers/gpu/drm/sun4i/sun4i_lvds.c > @@ -43,7 +43,7 @@ static int sun4i_lvds_get_modes(struct drm_connector *connector) > struct sun4i_lvds *lvds = > drm_connector_to_sun4i_lvds(connector); > > - return drm_panel_get_modes(lvds->panel); > + return drm_panel_get_modes(lvds->panel, connector); > } > > static struct drm_connector_helper_funcs sun4i_lvds_con_helper_funcs = { > diff --git a/drivers/gpu/drm/sun4i/sun4i_rgb.c b/drivers/gpu/drm/sun4i/sun4i_rgb.c > index e74b9eddca01..b27f16af50f5 100644 > --- a/drivers/gpu/drm/sun4i/sun4i_rgb.c > +++ b/drivers/gpu/drm/sun4i/sun4i_rgb.c > @@ -47,7 +47,7 @@ static int sun4i_rgb_get_modes(struct drm_connector *connector) > struct sun4i_rgb *rgb = > drm_connector_to_sun4i_rgb(connector); > > - return drm_panel_get_modes(rgb->panel); > + return drm_panel_get_modes(rgb->panel, connector); > } > > /* > diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c > index c958ca9bae63..4e8f634cc2db 100644 > --- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c > +++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c > @@ -795,7 +795,7 @@ static int sun6i_dsi_get_modes(struct drm_connector *connector) > { > struct sun6i_dsi *dsi = connector_to_sun6i_dsi(connector); > > - return drm_panel_get_modes(dsi->panel); > + return drm_panel_get_modes(dsi->panel, connector); > } > > static struct drm_connector_helper_funcs sun6i_dsi_connector_helper_funcs = { > diff --git a/drivers/gpu/drm/tegra/output.c b/drivers/gpu/drm/tegra/output.c > index 5bdbf9ffcda1..4948373d8c75 100644 > --- a/drivers/gpu/drm/tegra/output.c > +++ b/drivers/gpu/drm/tegra/output.c > @@ -23,7 +23,7 @@ int tegra_output_connector_get_modes(struct drm_connector *connector) > * ignore any other means of obtaining a mode. > */ > if (output->panel) { > - err = drm_panel_get_modes(output->panel); > + err = drm_panel_get_modes(output->panel, connector); > if (err > 0) > return err; > } > diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h > index a5f7199807f2..4fd61cb9eb93 100644 > --- a/include/drm/drm_panel.h > +++ b/include/drm/drm_panel.h > @@ -124,13 +124,6 @@ struct drm_panel { > */ > struct drm_device *drm; > > - /** > - * @connector: > - * > - * DRM connector that the panel is attached to. > - */ > - struct drm_connector *connector; > - > /** > * @dev: > * > @@ -187,7 +180,7 @@ int drm_panel_unprepare(struct drm_panel *panel); > int drm_panel_enable(struct drm_panel *panel); > int drm_panel_disable(struct drm_panel *panel); > > -int drm_panel_get_modes(struct drm_panel *panel); > +int drm_panel_get_modes(struct drm_panel *panel, struct drm_connector *connector); > > #if defined(CONFIG_OF) && defined(CONFIG_DRM_PANEL) > struct drm_panel *of_drm_find_panel(const struct device_node *np);
On Mon, Dec 2, 2019 at 8:33 PM Sam Ravnborg <sam@ravnborg.org> wrote: > To facilitate that connector creation will be moved > to display drivers, decouple the drm_connector from drm_panel. > Add a connector argument to drm_panel_get_modes() > > All users of drm_panel_get_modes() already had the connector > available, so updating users was trivial. > > With this patch drm_panel no longer keep a copy of the drm_connector. > > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > Cc: Thierry Reding <thierry.reding@gmail.com> > Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com> > Cc: Sam Ravnborg <sam@ravnborg.org> > Cc: Andrzej Hajda <a.hajda@samsung.com> > Cc: Neil Armstrong <narmstrong@baylibre.com> > Cc: Jonas Karlman <jonas@kwiboo.se> > Cc: Jernej Skrabec <jernej.skrabec@siol.net> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Cc: Maxime Ripard <mripard@kernel.org> > Cc: David Airlie <airlied@linux.ie> > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Inki Dae <inki.dae@samsung.com> > Cc: Joonyoung Shim <jy0922.shim@samsung.com> > Cc: Seung-Woo Kim <sw0312.kim@samsung.com> > Cc: Kyungmin Park <kyungmin.park@samsung.com> > Cc: Kukjin Kim <kgene@kernel.org> > Cc: Krzysztof Kozlowski <krzk@kernel.org> > Cc: Stefan Agner <stefan@agner.ch> > Cc: Alison Wang <alison.wang@nxp.com> > Cc: Philipp Zabel <p.zabel@pengutronix.de> > Cc: Shawn Guo <shawnguo@kernel.org> > Cc: Sascha Hauer <s.hauer@pengutronix.de> > Cc: Pengutronix Kernel Team <kernel@pengutronix.de> > Cc: Fabio Estevam <festevam@gmail.com> > Cc: NXP Linux Team <linux-imx@nxp.com> > Cc: CK Hu <ck.hu@mediatek.com> > Cc: Matthias Brugger <matthias.bgg@gmail.com> > Cc: Marek Vasut <marex@denx.de> > Cc: Tomi Valkeinen <tomi.valkeinen@ti.com> > Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> > Cc: Sandy Huang <hjc@rock-chips.com> > Cc: "Heiko Stübner" <heiko@sntech.de> > Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org> > Cc: Vincent Abriou <vincent.abriou@st.com> > Cc: Chen-Yu Tsai <wens@csie.org> > Cc: Jonathan Hunter <jonathanh@nvidia.com> > Cc: Torsten Duwe <duwe@lst.de> > Cc: Vasily Khoruzhick <anarsoul@gmail.com> > Cc: Icenowy Zheng <icenowy@aosc.io> > Cc: Sean Paul <seanpaul@chromium.org> > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Boris Brezillon <boris.brezillon@collabora.com> > Cc: Hariprasad Kelam <hariprasad.kelam@gmail.com> > Cc: Alexios Zavras <alexios.zavras@intel.com> > Cc: Brian Masney <masneyb@onstation.org> > Cc: Rob Clark <robdclark@chromium.org> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Allison Randal <allison@lohutok.net> > Cc: Shayenne Moura <shayenneluzmoura@gmail.com> > Cc: Abhinav Kumar <abhinavk@codeaurora.org> > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-samsung-soc@vger.kernel.org > Cc: linux-mediatek@lists.infradead.org > Cc: linux-renesas-soc@vger.kernel.org > Cc: linux-rockchip@lists.infradead.org > Cc: linux-tegra@vger.kernel.org This is a good refactoring. It makes it easier to understand where things belong. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij
diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c index b4f3a923a52a..9917ce0d86a0 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c +++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c @@ -493,7 +493,7 @@ static int anx6345_get_modes(struct drm_connector *connector) mutex_unlock(&anx6345->lock); if (!num_modes && anx6345->panel) - num_modes += drm_panel_get_modes(anx6345->panel); + num_modes += drm_panel_get_modes(anx6345->panel, connector); return num_modes; } diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c index bb411fe52ae8..6effe532f820 100644 --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c @@ -1111,7 +1111,7 @@ static int analogix_dp_get_modes(struct drm_connector *connector) int ret, num_modes = 0; if (dp->plat_data->panel) { - num_modes += drm_panel_get_modes(dp->plat_data->panel); + num_modes += drm_panel_get_modes(dp->plat_data->panel, connector); } else { ret = analogix_dp_prepare_panel(dp, true, false); if (ret) { diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c index c5e27b81588a..65cbd4a283fb 100644 --- a/drivers/gpu/drm/bridge/panel.c +++ b/drivers/gpu/drm/bridge/panel.c @@ -37,7 +37,7 @@ static int panel_bridge_connector_get_modes(struct drm_connector *connector) struct panel_bridge *panel_bridge = drm_connector_to_panel_bridge(connector); - return drm_panel_get_modes(panel_bridge->panel); + return drm_panel_get_modes(panel_bridge->panel, connector); } static const struct drm_connector_helper_funcs diff --git a/drivers/gpu/drm/bridge/parade-ps8622.c b/drivers/gpu/drm/bridge/parade-ps8622.c index b7a72dfdcac3..10c47c008b40 100644 --- a/drivers/gpu/drm/bridge/parade-ps8622.c +++ b/drivers/gpu/drm/bridge/parade-ps8622.c @@ -461,7 +461,7 @@ static int ps8622_get_modes(struct drm_connector *connector) ps8622 = connector_to_ps8622(connector); - return drm_panel_get_modes(ps8622->panel); + return drm_panel_get_modes(ps8622->panel, connector); } static const struct drm_connector_helper_funcs ps8622_connector_helper_funcs = { diff --git a/drivers/gpu/drm/bridge/tc358764.c b/drivers/gpu/drm/bridge/tc358764.c index db298f550a5a..96207fcfde19 100644 --- a/drivers/gpu/drm/bridge/tc358764.c +++ b/drivers/gpu/drm/bridge/tc358764.c @@ -282,7 +282,7 @@ static int tc358764_get_modes(struct drm_connector *connector) { struct tc358764 *ctx = connector_to_tc358764(connector); - return drm_panel_get_modes(ctx->panel); + return drm_panel_get_modes(ctx->panel, connector); } static const diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c index 8029478ffebb..3709e5ace724 100644 --- a/drivers/gpu/drm/bridge/tc358767.c +++ b/drivers/gpu/drm/bridge/tc358767.c @@ -1346,7 +1346,7 @@ static int tc_connector_get_modes(struct drm_connector *connector) return 0; } - count = drm_panel_get_modes(tc->panel); + count = drm_panel_get_modes(tc->panel, connector); if (count > 0) return count; diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c index 43abf01ebd4c..9a2dd986afa5 100644 --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -206,7 +206,7 @@ static int ti_sn_bridge_connector_get_modes(struct drm_connector *connector) { struct ti_sn_bridge *pdata = connector_to_ti_sn_bridge(connector); - return drm_panel_get_modes(pdata->panel); + return drm_panel_get_modes(pdata->panel, connector); } static enum drm_mode_status diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c index 9927e28d93e6..fd428b6d25b0 100644 --- a/drivers/gpu/drm/drm_panel.c +++ b/drivers/gpu/drm/drm_panel.c @@ -113,10 +113,9 @@ EXPORT_SYMBOL(drm_panel_remove); */ int drm_panel_attach(struct drm_panel *panel, struct drm_connector *connector) { - if (panel->connector) + if (panel->drm) return -EBUSY; - panel->connector = connector; panel->drm = connector->dev; return 0; @@ -135,7 +134,6 @@ EXPORT_SYMBOL(drm_panel_attach); */ void drm_panel_detach(struct drm_panel *panel) { - panel->connector = NULL; panel->drm = NULL; } EXPORT_SYMBOL(drm_panel_detach); @@ -239,6 +237,7 @@ EXPORT_SYMBOL(drm_panel_disable); /** * drm_panel_get_modes - probe the available display modes of a panel * @panel: DRM panel + * @connector: DRM connector * * The modes probed from the panel are automatically added to the connector * that the panel is attached to. @@ -246,13 +245,14 @@ EXPORT_SYMBOL(drm_panel_disable); * Return: The number of modes available from the panel on success or a * negative error code on failure. */ -int drm_panel_get_modes(struct drm_panel *panel) +int drm_panel_get_modes(struct drm_panel *panel, + struct drm_connector *connector) { if (!panel) return -EINVAL; if (panel->funcs && panel->funcs->get_modes) - return panel->funcs->get_modes(panel, panel->connector); + return panel->funcs->get_modes(panel, connector); return 0; } diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c index 5479ff71cbc6..43fa0f26c052 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_dpi.c +++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c @@ -85,7 +85,7 @@ static int exynos_dpi_get_modes(struct drm_connector *connector) } if (ctx->panel) - return drm_panel_get_modes(ctx->panel); + return drm_panel_get_modes(ctx->panel, connector); return 0; } diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c index ceb370864cc4..d14d3f25d344 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c @@ -1461,7 +1461,7 @@ static int exynos_dsi_get_modes(struct drm_connector *connector) struct exynos_dsi *dsi = connector_to_dsi(connector); if (dsi->panel) - return drm_panel_get_modes(dsi->panel); + return drm_panel_get_modes(dsi->panel, connector); return 0; } diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c index 82c972e9c024..9598ee3cc4d2 100644 --- a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c +++ b/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c @@ -68,7 +68,7 @@ static int fsl_dcu_drm_connector_get_modes(struct drm_connector *connector) struct fsl_dcu_drm_connector *fsl_connector; fsl_connector = to_fsl_dcu_connector(connector); - return drm_panel_get_modes(fsl_connector->panel); + return drm_panel_get_modes(fsl_connector->panel, connector); } static int fsl_dcu_drm_connector_mode_valid(struct drm_connector *connector, diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c index 208069faf183..8cb2665b2c74 100644 --- a/drivers/gpu/drm/imx/imx-ldb.c +++ b/drivers/gpu/drm/imx/imx-ldb.c @@ -127,7 +127,7 @@ static int imx_ldb_connector_get_modes(struct drm_connector *connector) struct imx_ldb_channel *imx_ldb_ch = con_to_imx_ldb_ch(connector); int num_modes; - num_modes = drm_panel_get_modes(imx_ldb_ch->panel); + num_modes = drm_panel_get_modes(imx_ldb_ch->panel, connector); if (num_modes > 0) return num_modes; diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c index 35518e5de356..3dca424059f7 100644 --- a/drivers/gpu/drm/imx/parallel-display.c +++ b/drivers/gpu/drm/imx/parallel-display.c @@ -50,7 +50,7 @@ static int imx_pd_connector_get_modes(struct drm_connector *connector) struct device_node *np = imxpd->dev->of_node; int num_modes; - num_modes = drm_panel_get_modes(imxpd->panel); + num_modes = drm_panel_get_modes(imxpd->panel, connector); if (num_modes > 0) return num_modes; diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c index e9931bbbe846..3b5e016d16c4 100644 --- a/drivers/gpu/drm/mediatek/mtk_dsi.c +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c @@ -821,7 +821,7 @@ static int mtk_dsi_connector_get_modes(struct drm_connector *connector) { struct mtk_dsi *dsi = connector_to_dsi(connector); - return drm_panel_get_modes(dsi->panel); + return drm_panel_get_modes(dsi->panel, connector); } static const struct drm_encoder_helper_funcs mtk_dsi_encoder_helper_funcs = { diff --git a/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c b/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c index 31abd2352f3e..c7df71e2fafc 100644 --- a/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c +++ b/drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c @@ -53,7 +53,7 @@ static int mdp4_lvds_connector_get_modes(struct drm_connector *connector) if (panel) { drm_panel_attach(panel, connector); - ret = drm_panel_get_modes(panel); + ret = drm_panel_get_modes(panel, connector); drm_panel_detach(panel); } diff --git a/drivers/gpu/drm/msm/dsi/dsi_manager.c b/drivers/gpu/drm/msm/dsi/dsi_manager.c index 271aa7bbca92..0fc29f1be8cc 100644 --- a/drivers/gpu/drm/msm/dsi/dsi_manager.c +++ b/drivers/gpu/drm/msm/dsi/dsi_manager.c @@ -329,7 +329,7 @@ static int dsi_mgr_connector_get_modes(struct drm_connector *connector) * attached to the drm_panel. */ drm_panel_attach(panel, connector); - num = drm_panel_get_modes(panel); + num = drm_panel_get_modes(panel, connector); if (!num) return 0; diff --git a/drivers/gpu/drm/mxsfb/mxsfb_out.c b/drivers/gpu/drm/mxsfb/mxsfb_out.c index 4eb94744c526..9eca1605d11d 100644 --- a/drivers/gpu/drm/mxsfb/mxsfb_out.c +++ b/drivers/gpu/drm/mxsfb/mxsfb_out.c @@ -31,7 +31,7 @@ static int mxsfb_panel_get_modes(struct drm_connector *connector) drm_connector_to_mxsfb_drm_private(connector); if (mxsfb->panel) - return drm_panel_get_modes(mxsfb->panel); + return drm_panel_get_modes(mxsfb->panel, connector); return 0; } diff --git a/drivers/gpu/drm/omapdrm/omap_connector.c b/drivers/gpu/drm/omapdrm/omap_connector.c index 5b8799c69f68..94cded387174 100644 --- a/drivers/gpu/drm/omapdrm/omap_connector.c +++ b/drivers/gpu/drm/omapdrm/omap_connector.c @@ -229,7 +229,8 @@ static int omap_connector_get_modes(struct drm_connector *connector) * operation to the panel API. */ if (omap_connector->output->panel) - return drm_panel_get_modes(omap_connector->output->panel); + return drm_panel_get_modes(omap_connector->output->panel, + connector); /* * We can't retrieve modes, which can happen for instance for a DVI or diff --git a/drivers/gpu/drm/rcar-du/rcar_lvds.c b/drivers/gpu/drm/rcar-du/rcar_lvds.c index 8c6c172bbf2e..2cf44b91853c 100644 --- a/drivers/gpu/drm/rcar-du/rcar_lvds.c +++ b/drivers/gpu/drm/rcar-du/rcar_lvds.c @@ -91,7 +91,7 @@ static int rcar_lvds_connector_get_modes(struct drm_connector *connector) { struct rcar_lvds *lvds = connector_to_rcar_lvds(connector); - return drm_panel_get_modes(lvds->panel); + return drm_panel_get_modes(lvds->panel, connector); } static int rcar_lvds_connector_atomic_check(struct drm_connector *connector, diff --git a/drivers/gpu/drm/rockchip/rockchip_lvds.c b/drivers/gpu/drm/rockchip/rockchip_lvds.c index 8a4c9af0ba73..325811d2e26e 100644 --- a/drivers/gpu/drm/rockchip/rockchip_lvds.c +++ b/drivers/gpu/drm/rockchip/rockchip_lvds.c @@ -201,7 +201,7 @@ static int rockchip_lvds_connector_get_modes(struct drm_connector *connector) struct rockchip_lvds *lvds = connector_to_lvds(connector); struct drm_panel *panel = lvds->panel; - return drm_panel_get_modes(panel); + return drm_panel_get_modes(panel, connector); } static const diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c index 68289b0b063a..df2ee86cd4c1 100644 --- a/drivers/gpu/drm/sti/sti_dvo.c +++ b/drivers/gpu/drm/sti/sti_dvo.c @@ -339,7 +339,7 @@ static int sti_dvo_connector_get_modes(struct drm_connector *connector) struct sti_dvo *dvo = dvo_connector->dvo; if (dvo->panel) - return drm_panel_get_modes(dvo->panel); + return drm_panel_get_modes(dvo->panel, connector); return 0; } diff --git a/drivers/gpu/drm/sun4i/sun4i_lvds.c b/drivers/gpu/drm/sun4i/sun4i_lvds.c index 25ab2ef6d545..65b7a8739666 100644 --- a/drivers/gpu/drm/sun4i/sun4i_lvds.c +++ b/drivers/gpu/drm/sun4i/sun4i_lvds.c @@ -43,7 +43,7 @@ static int sun4i_lvds_get_modes(struct drm_connector *connector) struct sun4i_lvds *lvds = drm_connector_to_sun4i_lvds(connector); - return drm_panel_get_modes(lvds->panel); + return drm_panel_get_modes(lvds->panel, connector); } static struct drm_connector_helper_funcs sun4i_lvds_con_helper_funcs = { diff --git a/drivers/gpu/drm/sun4i/sun4i_rgb.c b/drivers/gpu/drm/sun4i/sun4i_rgb.c index e74b9eddca01..b27f16af50f5 100644 --- a/drivers/gpu/drm/sun4i/sun4i_rgb.c +++ b/drivers/gpu/drm/sun4i/sun4i_rgb.c @@ -47,7 +47,7 @@ static int sun4i_rgb_get_modes(struct drm_connector *connector) struct sun4i_rgb *rgb = drm_connector_to_sun4i_rgb(connector); - return drm_panel_get_modes(rgb->panel); + return drm_panel_get_modes(rgb->panel, connector); } /* diff --git a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c index c958ca9bae63..4e8f634cc2db 100644 --- a/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c +++ b/drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c @@ -795,7 +795,7 @@ static int sun6i_dsi_get_modes(struct drm_connector *connector) { struct sun6i_dsi *dsi = connector_to_sun6i_dsi(connector); - return drm_panel_get_modes(dsi->panel); + return drm_panel_get_modes(dsi->panel, connector); } static struct drm_connector_helper_funcs sun6i_dsi_connector_helper_funcs = { diff --git a/drivers/gpu/drm/tegra/output.c b/drivers/gpu/drm/tegra/output.c index 5bdbf9ffcda1..4948373d8c75 100644 --- a/drivers/gpu/drm/tegra/output.c +++ b/drivers/gpu/drm/tegra/output.c @@ -23,7 +23,7 @@ int tegra_output_connector_get_modes(struct drm_connector *connector) * ignore any other means of obtaining a mode. */ if (output->panel) { - err = drm_panel_get_modes(output->panel); + err = drm_panel_get_modes(output->panel, connector); if (err > 0) return err; } diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h index a5f7199807f2..4fd61cb9eb93 100644 --- a/include/drm/drm_panel.h +++ b/include/drm/drm_panel.h @@ -124,13 +124,6 @@ struct drm_panel { */ struct drm_device *drm; - /** - * @connector: - * - * DRM connector that the panel is attached to. - */ - struct drm_connector *connector; - /** * @dev: * @@ -187,7 +180,7 @@ int drm_panel_unprepare(struct drm_panel *panel); int drm_panel_enable(struct drm_panel *panel); int drm_panel_disable(struct drm_panel *panel); -int drm_panel_get_modes(struct drm_panel *panel); +int drm_panel_get_modes(struct drm_panel *panel, struct drm_connector *connector); #if defined(CONFIG_OF) && defined(CONFIG_DRM_PANEL) struct drm_panel *of_drm_find_panel(const struct device_node *np);
To facilitate that connector creation will be moved to display drivers, decouple the drm_connector from drm_panel. Add a connector argument to drm_panel_get_modes() All users of drm_panel_get_modes() already had the connector available, so updating users was trivial. With this patch drm_panel no longer keep a copy of the drm_connector. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Andrzej Hajda <a.hajda@samsung.com> Cc: Neil Armstrong <narmstrong@baylibre.com> Cc: Jonas Karlman <jonas@kwiboo.se> Cc: Jernej Skrabec <jernej.skrabec@siol.net> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Maxime Ripard <mripard@kernel.org> Cc: David Airlie <airlied@linux.ie> Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Inki Dae <inki.dae@samsung.com> Cc: Joonyoung Shim <jy0922.shim@samsung.com> Cc: Seung-Woo Kim <sw0312.kim@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Kukjin Kim <kgene@kernel.org> Cc: Krzysztof Kozlowski <krzk@kernel.org> Cc: Stefan Agner <stefan@agner.ch> Cc: Alison Wang <alison.wang@nxp.com> Cc: Philipp Zabel <p.zabel@pengutronix.de> Cc: Shawn Guo <shawnguo@kernel.org> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Pengutronix Kernel Team <kernel@pengutronix.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP Linux Team <linux-imx@nxp.com> Cc: CK Hu <ck.hu@mediatek.com> Cc: Matthias Brugger <matthias.bgg@gmail.com> Cc: Marek Vasut <marex@denx.de> Cc: Tomi Valkeinen <tomi.valkeinen@ti.com> Cc: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Cc: Sandy Huang <hjc@rock-chips.com> Cc: "Heiko Stübner" <heiko@sntech.de> Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org> Cc: Vincent Abriou <vincent.abriou@st.com> Cc: Chen-Yu Tsai <wens@csie.org> Cc: Jonathan Hunter <jonathanh@nvidia.com> Cc: Torsten Duwe <duwe@lst.de> Cc: Vasily Khoruzhick <anarsoul@gmail.com> Cc: Icenowy Zheng <icenowy@aosc.io> Cc: Sean Paul <seanpaul@chromium.org> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Boris Brezillon <boris.brezillon@collabora.com> Cc: Hariprasad Kelam <hariprasad.kelam@gmail.com> Cc: Alexios Zavras <alexios.zavras@intel.com> Cc: Brian Masney <masneyb@onstation.org> Cc: Rob Clark <robdclark@chromium.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Allison Randal <allison@lohutok.net> Cc: Shayenne Moura <shayenneluzmoura@gmail.com> Cc: Abhinav Kumar <abhinavk@codeaurora.org> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-samsung-soc@vger.kernel.org Cc: linux-mediatek@lists.infradead.org Cc: linux-renesas-soc@vger.kernel.org Cc: linux-rockchip@lists.infradead.org Cc: linux-tegra@vger.kernel.org --- drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 2 +- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 2 +- drivers/gpu/drm/bridge/panel.c | 2 +- drivers/gpu/drm/bridge/parade-ps8622.c | 2 +- drivers/gpu/drm/bridge/tc358764.c | 2 +- drivers/gpu/drm/bridge/tc358767.c | 2 +- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 2 +- drivers/gpu/drm/drm_panel.c | 10 +++++----- drivers/gpu/drm/exynos/exynos_drm_dpi.c | 2 +- drivers/gpu/drm/exynos/exynos_drm_dsi.c | 2 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 2 +- drivers/gpu/drm/imx/imx-ldb.c | 2 +- drivers/gpu/drm/imx/parallel-display.c | 2 +- drivers/gpu/drm/mediatek/mtk_dsi.c | 2 +- drivers/gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c | 2 +- drivers/gpu/drm/msm/dsi/dsi_manager.c | 2 +- drivers/gpu/drm/mxsfb/mxsfb_out.c | 2 +- drivers/gpu/drm/omapdrm/omap_connector.c | 3 ++- drivers/gpu/drm/rcar-du/rcar_lvds.c | 2 +- drivers/gpu/drm/rockchip/rockchip_lvds.c | 2 +- drivers/gpu/drm/sti/sti_dvo.c | 2 +- drivers/gpu/drm/sun4i/sun4i_lvds.c | 2 +- drivers/gpu/drm/sun4i/sun4i_rgb.c | 2 +- drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 2 +- drivers/gpu/drm/tegra/output.c | 2 +- include/drm/drm_panel.h | 9 +-------- 26 files changed, 31 insertions(+), 37 deletions(-)