From ea568669199f66ad6bba5f6dc6d4b010bb740040 Mon Sep 17 00:00:00 2001 From: Zheng Yang Date: Fri, 2 Feb 2018 12:21:36 +0800 Subject: [PATCH] drm: bridge: synopsys: update more hdmi status in dw_hdmi_bind If hdmi is enabled in uboot, hdmi->disabled and bridge_is_on and phy status need to be updated. Change-Id: Ib21d894b673bf12b46a271c91d3e08fe7475ea89 Signed-off-by: Zheng Yang --- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c index 6227a3c0fce4..36efc391626b 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -2650,8 +2650,6 @@ dw_hdmi_connector_atomic_flush(struct drm_connector *connector, if (hdmi_bus_fmt_is_yuv420(hdmi->hdmi_data.enc_out_bus_format)) vmode->mtmdsclock /= 2; - hdmi->phy.enabled = true; - hdmi->bridge_is_on = true; if (in_bus_format != hdmi->hdmi_data.enc_in_bus_format || out_bus_format != hdmi->hdmi_data.enc_out_bus_format) hdmi->hdmi_data.update = true; @@ -3599,8 +3597,12 @@ int dw_hdmi_bind(struct device *dev, struct device *master, hdmi->phy.name); ret = hdmi_readb(hdmi, HDMI_PHY_STAT0); - if (ret & (HDMI_PHY_TX_PHY_LOCK | HDMI_PHY_HPD)) + if (ret & (HDMI_PHY_TX_PHY_LOCK | HDMI_PHY_HPD)) { hdmi->mc_clkdis = hdmi_readb(hdmi, HDMI_MC_CLKDIS); + hdmi->disabled = false; + hdmi->bridge_is_on = true; + hdmi->phy.enabled = true; + } init_hpd_work(hdmi); initialize_hdmi_ih_mutes(hdmi);