Allwinner SoCs have dw hdmi controller v1.32a which exhibits same
magenta line issue as i.MX6Q and i.MX6DL. Enable workaround for it.

Tests show that one iteration is enough.

Acked-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Signed-off-by: Jernej Skrabec <jernej.skra...@siol.net>
---
 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 a38db40ce990..7ca14d7325b5 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
@@ -1634,9 +1634,10 @@ static void dw_hdmi_clear_overflow(struct dw_hdmi *hdmi)
         * then write one of the FC registers several times.
         *
         * The number of iterations matters and depends on the HDMI TX revision
-        * (and possibly on the platform). So far only i.MX6Q (v1.30a) and
-        * i.MX6DL (v1.31a) have been identified as needing the workaround, with
-        * 4 and 1 iterations respectively.
+        * (and possibly on the platform). So far i.MX6Q (v1.30a), i.MX6DL
+        * (v1.31a) and multiple Allwinner SoCs (v1.32a) have been identified
+        * as needing the workaround, with 4 iterations for v1.30a and 1
+        * iteration for others.
         */
 
        switch (hdmi->version) {
@@ -1644,6 +1645,7 @@ static void dw_hdmi_clear_overflow(struct dw_hdmi *hdmi)
                count = 4;
                break;
        case 0x131a:
+       case 0x132a:
                count = 1;
                break;
        default:
-- 
2.16.1

Reply via email to