summaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorArchit Taneja <archit@ti.com>2012-06-05 15:03:28 +0200
committerTomi Valkeinen <tomi.valkeinen@ti.com>2012-09-26 13:58:37 +0200
commit80d81d64d6272a622ee6c9d0de871507daa52c89 (patch)
tree8c8a4643a6749adf15a793340ee40abaec7695be /drivers/video
parentOMAPDSS: MANAGER: Update display sysfs store (diff)
downloadlinux-80d81d64d6272a622ee6c9d0de871507daa52c89.tar.xz
linux-80d81d64d6272a622ee6c9d0de871507daa52c89.zip
OMAPDSS: OVERLAY/MANAGER: Get device via output
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>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/manager.c2
-rw-r--r--drivers/video/omap2/dss/overlay.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/drivers/video/omap2/dss/manager.c b/drivers/video/omap2/dss/manager.c
index edc372e04bcb..f662eb5c2aeb 100644
--- a/drivers/video/omap2/dss/manager.c
+++ b/drivers/video/omap2/dss/manager.c
@@ -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)
diff --git a/drivers/video/omap2/dss/overlay.c b/drivers/video/omap2/dss/overlay.c
index 0f799e2d91bb..45f4994bc6b0 100644
--- a/drivers/video/omap2/dss/overlay.c
+++ b/drivers/video/omap2/dss/overlay.c
@@ -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)