From 80d81d64d6272a622ee6c9d0de871507daa52c89 Mon Sep 17 00:00:00 2001 From: Archit Taneja Date: Tue, 5 Jun 2012 18:33:28 +0530 Subject: [PATCH] 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 --- drivers/video/omap2/dss/manager.c | 2 +- drivers/video/omap2/dss/overlay.c | 4 +++- 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)