From cafa8ebd5f4df41425d6f2f61633d5bc64f20e65 Mon Sep 17 00:00:00 2001 From: Zheng Yang Date: Tue, 12 Sep 2017 14:49:34 +0800 Subject: [PATCH] drm: bridge: dw-hdmi: support workaround to clear the overflow condition on rockchip platform Under some circumstances the Frame Composer arithmetic unit can miss an FC register write due to being busy processing the previous one. The issue can be worked around by issuing a TMDS software reset and then write one of the FC registers several times. After tested, the number of iterations of RK3399/RK3328(v2.11a), RK3368(v2.01a), RK3288(v2.00a) is one. Change-Id: Iba209e25d56aff84a8cc90b4d8dcb87369c9ae52 Signed-off-by: Zheng Yang --- drivers/gpu/drm/bridge/dw-hdmi.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/bridge/dw-hdmi.c b/drivers/gpu/drm/bridge/dw-hdmi.c index 70e4f3ae9dec..ffc4fdf49005 100644 --- a/drivers/gpu/drm/bridge/dw-hdmi.c +++ b/drivers/gpu/drm/bridge/dw-hdmi.c @@ -1963,6 +1963,9 @@ static void dw_hdmi_clear_overflow(struct dw_hdmi *hdmi) count = 4; break; case 0x131a: + case 0x200a: + case 0x201a: + case 0x211a: count = 1; break; default: