OMAPDSS: OVERLAY/MANAGER: Get device via output
authorArchit Taneja <archit@ti.com>
Tue, 5 Jun 2012 13:03:28 +0000 (18:33 +0530)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 26 Sep 2012 11:58:37 +0000 (14:58 +0300)
A manager is not connected to a device directly any more. It first connects
to an output, and then to the display. Update overlay and manager get_device ops
to return the device via the connected output.

Signed-off-by: Archit Taneja <archit@ti.com>
drivers/video/omap2/dss/manager.c
drivers/video/omap2/dss/overlay.c

index edc372e..f662eb5 100644 (file)
@@ -38,7 +38,7 @@ static struct omap_overlay_manager *managers;
 
 static inline struct omap_dss_device *dss_mgr_get_device(struct omap_overlay_manager *mgr)
 {
-       return mgr->device;
+       return mgr->output ? mgr->output->device : NULL;
 }
 
 static int dss_mgr_wait_for_vsync(struct omap_overlay_manager *mgr)
index 0f799e2..45f4994 100644 (file)
@@ -40,7 +40,9 @@ static struct omap_overlay *overlays;
 
 static inline struct omap_dss_device *dss_ovl_get_device(struct omap_overlay *ovl)
 {
-       return ovl->manager ? ovl->manager->device : NULL;
+       return ovl->manager ?
+               (ovl->manager->output ? ovl->manager->output->device : NULL) :
+               NULL;
 }
 
 int omap_dss_get_num_overlays(void)