+/* Workaround to clear the overflow condition */
+static void imx_hdmi_clear_overflow(struct imx_hdmi *hdmi)
+{
+       int count;
+       u8 val;
+
+       /* TMDS software reset */
+       hdmi_writeb(hdmi, (u8)~HDMI_MC_SWRSTZ_TMDSSWRST_REQ, HDMI_MC_SWRSTZ);
+
+       val = hdmi_readb(hdmi, HDMI_FC_INVIDCONF);
+       if (hdmi->dev_type == IMX6DL_HDMI) {
+               hdmi_writeb(hdmi, val, HDMI_FC_INVIDCONF);
+               return;
+       }
+
+       for (count = 0; count < 5; count++)
+               hdmi_writeb(hdmi, val, HDMI_FC_INVIDCONF);
+}
+

Hi Fabio,

I get a magenta line down the left side of the screen unless I replace the 5 with a 6.
ie.

+       for (count = 0; count < 6; count++)
+               hdmi_writeb(hdmi, val, HDMI_FC_INVIDCONF);


This is with a imx6q processor. With the 6, the picture looks great!

Troy

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to