From 58d3d8412a42080498ecd0e191528dd888aa47fd Mon Sep 17 00:00:00 2001 From: Algea Cao Date: Wed, 28 Mar 2018 11:34:00 +0800 Subject: [PATCH] drm/rockchip: dw_hdmi: Fix up screen flash when switching color After switching color, hdmi output signal may be unstable. If AVMUTE is cleared too early, tv will display err. Change-Id: I595180bfe6e014de5231bcd75ee259d5702121e0 Signed-off-by: Algea Cao --- drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c index 521223914de9..880126bc6e3a 100644 --- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c @@ -2670,6 +2670,11 @@ dw_hdmi_connector_atomic_flush(struct drm_connector *connector, if (hdmi->hdmi_data.update) { dw_hdmi_setup(hdmi, &hdmi->previous_mode); + /* + * Before clear AVMUTE, delay is needed to + * prevent display flash. + */ + msleep(50); hdmi_writeb(hdmi, HDMI_FC_GCP_CLEAR_AVMUTE, HDMI_FC_GCP); hdmi->hdmi_data.update = false; } else if (connector->state->hdr_metadata_changed &&