Commit 8c1bfd0c authored by Sandor Yu's avatar Sandor Yu Committed by Robert Foss

drm: bridge: dw_hdmi: default enable workaround to clear the overflow

i.MX8MPlus (v2.13a) has verified need the workaround to clear the
overflow with one iteration.
Only i.MX6Q(v1.30a) need the workaround with 4 iterations,
the others versions later than v1.3a have been identified as needing
the workaround with a single iteration.

Default enable the workaround with one iteration for all versions
later than v1.30a.
Signed-off-by: default avatarSandor Yu <Sandor.yu@nxp.com>
Acked-by: default avatarNeil Armstrong <narmstrong@baylibre.com>
Signed-off-by: default avatarRobert Foss <robert.foss@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/561951005a85574dcdd108e5d6a3a87df930ea3d.1649989179.git.Sandor.yu@nxp.com
parent 34263c1b
...@@ -2086,30 +2086,21 @@ static void dw_hdmi_clear_overflow(struct dw_hdmi *hdmi) ...@@ -2086,30 +2086,21 @@ static void dw_hdmi_clear_overflow(struct dw_hdmi *hdmi)
* then write one of the FC registers several times. * then write one of the FC registers several times.
* *
* The number of iterations matters and depends on the HDMI TX revision * The number of iterations matters and depends on the HDMI TX revision
* (and possibly on the platform). So far i.MX6Q (v1.30a), i.MX6DL * (and possibly on the platform).
* (v1.31a) and multiple Allwinner SoCs (v1.32a) have been identified * 4 iterations for i.MX6Q(v1.30a) and 1 iteration for others.
* as needing the workaround, with 4 iterations for v1.30a and 1 * i.MX6DL (v1.31a), Allwinner SoCs (v1.32a), Rockchip RK3288 SoC (v2.00a),
* iteration for others. * Amlogic Meson GX SoCs (v2.01a), RK3328/RK3399 SoCs (v2.11a)
* The Amlogic Meson GX SoCs (v2.01a) have been identified as needing * and i.MX8MPlus (v2.13a) have been identified as needing the workaround
* the workaround with a single iteration. * with a single iteration.
* The Rockchip RK3288 SoC (v2.00a) and RK3328/RK3399 SoCs (v2.11a) have
* been identified as needing the workaround with a single iteration.
*/ */
switch (hdmi->version) { switch (hdmi->version) {
case 0x130a: case 0x130a:
count = 4; count = 4;
break; break;
case 0x131a: default:
case 0x132a:
case 0x200a:
case 0x201a:
case 0x211a:
case 0x212a:
count = 1; count = 1;
break; break;
default:
return;
} }
/* TMDS software reset */ /* TMDS software reset */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment