Re: Fix for dispc's error "omapfb omapfb: irq error status 4020"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Fri, 2008-11-07 at 12:55 -0800, ext Rick Bronson wrote:
> Folks,
> 
>   Please take a look at this change to drivers/video/omap/dispc.c.  It
> addresses a problem seen on some boots of OMAP's.  On about 1 in 30
> boots one gets an endless stream of interrupts from the
> DISPC_IRQ_SYNC_LOST bit in the DISPC_IRQSTATUS register.  The
> following messages are printed.
> 
>  omapfb omapfb: irq error status 4020

Can you try the patch below if it fixes this problem for you? On my new
display subsystem adding a sleep between enabling clocks and doing the
soft reset removed the problem.

I tried a bit with different sleep times. With 1ms sleep I still got
sync losts. With 10ms I didn't, but I went safe and put 40ms.

 Tomi



diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
index c140c21..bdfda0c 100644
--- a/drivers/video/omap/dispc.c
+++ b/drivers/video/omap/dispc.c
@@ -24,6 +24,7 @@
 #include <linux/vmalloc.h>
 #include <linux/clk.h>
 #include <linux/io.h>
+#include <linux/delay.h>
 
 #include <mach/sram.h>
 #include <mach/omapfb.h>
@@ -1402,6 +1403,10 @@ static int omap_dispc_init(struct omapfb_device *fbdev, int ext_mode,
                /* Reset monitoring works only w/ the 54M clk */
                enable_digit_clocks(1);
 
+               /* We need to wait here a bit, otherwise we sometimes start to get
+                * synclost errors. */
+               msleep(40);
+
                /* Soft reset */
                MOD_REG_FLD(DISPC_SYSCONFIG, 1 << 1, 1 << 1);


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux