[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180725035627.58223-1-icenowy@aosc.io>
Date: Wed, 25 Jul 2018 11:56:27 +0800
From: Icenowy Zheng <icenowy@...c.io>
To: Archit Taneja <architt@...eaurora.org>,
Andrzej Hajda <a.hajda@...sung.com>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Neil Armstrong <narmstrong@...libre.com>,
Maxime Ripard <maxime.ripard@...tlin.com>,
Jernej Skrabec <jernej.skrabec@...l.net>,
Daniel Vetter <daniel.vetter@...ll.ch>
Cc: dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
Icenowy Zheng <icenowy@...c.io>
Subject: [PATCH] drm/bridge/synopsys: dw-hdmi: re-run dw_hdmi_setup when setting mode
Currently dw_hdmi_setup is only run when the dw-hdmi bridge is enabled,
with the mode set last time.
When the bridge is enabled before any mode is set (this may happen when
booting), the mode won't be set at all, some setup steps will be
skipped or fail, and the HDMI output may not work.
Re-run dw_hdmi_setup when setting mode, in order to prevent such
situation.
Signed-off-by: Icenowy Zheng <icenowy@...c.io>
---
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
index 5971976284bf..e2f832182afe 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
@@ -2007,6 +2007,7 @@ static void dw_hdmi_bridge_mode_set(struct drm_bridge *bridge,
/* Store the display mode for plugin/DKMS poweron events */
memcpy(&hdmi->previous_mode, mode, sizeof(hdmi->previous_mode));
+ dw_hdmi_setup(hdmi, mode);
mutex_unlock(&hdmi->mutex);
}
--
2.18.0
Powered by blists - more mailing lists