OMAPDSS: fix registering the vsync isr in apply
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 10 Aug 2012 11:17:47 +0000 (14:17 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 18 Oct 2012 10:11:10 +0000 (13:11 +0300)
When we enable an output we don't check if we need to register the vsync
isr. This causes us to miss vsync interrupts until somebody changes the
configuration of an overlay or an overlay manager.

Add the registration to dss_mgr_enable to fix the problem.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/omap2/dss/apply.c

index e923d9f..e85ec05 100644 (file)
@@ -1035,6 +1035,9 @@ int dss_mgr_enable(struct omap_overlay_manager *mgr)
        if (!mgr_manual_update(mgr))
                mp->updating = true;
 
+       if (!dss_data.irq_enabled && need_isr())
+               dss_register_vsync_isr();
+
        spin_unlock_irqrestore(&data_lock, flags);
 
        if (!mgr_manual_update(mgr))