summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2020-10-05 15:42:48 +0200
committerLucas Stach <l.stach@pengutronix.de>2021-07-21 22:27:09 +0200
commit1416d0861f74eb85819553b1378a9230504b9e49 (patch)
tree7e82ac8d7a34840067bc1e01ce84b56d0fa489fa
parentde94e301c2f26f15ba31d7667b48506a56ab532d (diff)
downloadlinux-1416d0861f74eb85819553b1378a9230504b9e49.tar.gz
linux-1416d0861f74eb85819553b1378a9230504b9e49.tar.xz
drm/exynos: Init the DSIM PHY in samsung_dsim_enable()
In case the PHY is not initialized, do it in samsung_dsim_enable(), otherwise the link configuration registers are not programmed at all. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: Guido Günther <agx@sigxcpu.org> Cc: Jaehoon Chung <jh80.chung@samsung.com> Cc: Lucas Stach <l.stach@pengutronix.de> Cc: Marek Szyprowski <m.szyprowski@samsung.com> Cc: Michael Tretter <m.tretter@pengutronix.de> Cc: NXP Linux Team <linux-imx@nxp.com> Cc: Shawn Guo <shawnguo@kernel.org> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-samsung-soc@vger.kernel.org To: dri-devel@lists.freedesktop.org -- NOTE: This depends on https://patchwork.kernel.org/project/dri-devel/list/?series=347439
-rw-r--r--drivers/gpu/drm/bridge/samsung-dsim.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/bridge/samsung-dsim.c b/drivers/gpu/drm/bridge/samsung-dsim.c
index 6d2d8dc027de..fbd87a74eb9f 100644
--- a/drivers/gpu/drm/bridge/samsung-dsim.c
+++ b/drivers/gpu/drm/bridge/samsung-dsim.c
@@ -1244,6 +1244,13 @@ static void samsung_dsim_enable(struct samsung_dsim *dsi)
pm_runtime_get_sync(dsi->dev);
dsi->state |= DSIM_STATE_ENABLED;
+ if (!(dsi->state & DSIM_STATE_INITIALIZED)) {
+ ret = samsung_dsim_init(dsi);
+ if (ret)
+ return;
+ dsi->state |= DSIM_STATE_INITIALIZED;
+ }
+
if (dsi->panel) {
ret = drm_panel_prepare(dsi->panel);
if (ret < 0)