aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorArchit Taneja2012-09-26 16:42:39 +0530
committerTomi Valkeinen2012-09-26 14:58:31 +0300
commit97f01b3a2ed6d46132bf4e2d237c27846e7b260a (patch)
tree27c7a36c7ea6dbd51b6bf0a5edb04a861e8ac381 /include
parent6d71b923e53184808b0206ebd74159c41a2dcf38 (diff)
OMAPDSS: APPLY: Add manager set/unset output ops for omap_overlay_manager
Add set_output/unset_output ops for overlay managers, these form links between managers and outputs. Create a function in dss features which tell all the output instances that connect to a manager, use it when a manager tries to set an output. Add a constraint of not unsetting an output when the manager is enabled. Keep the omap_dss_device pointer and set/unset_device ops in overlay_manager for now to not break things. Keep the dss feature function get_supported_displays as it's used in some places. These will be removed later. Signed-off-by: Archit Taneja <archit@ti.com>
Diffstat (limited to 'include')
-rw-r--r--include/video/omapdss.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/video/omapdss.h b/include/video/omapdss.h
index 6d08cf55e5e2..d8fd1c85fc87 100644
--- a/include/video/omapdss.h
+++ b/include/video/omapdss.h
@@ -459,9 +459,11 @@ struct omap_overlay_manager {
enum omap_overlay_manager_caps caps;
struct list_head overlays;
enum omap_display_type supported_displays;
+ enum omap_dss_output_id supported_outputs;
/* dynamic fields */
struct omap_dss_device *device;
+ struct omap_dss_output *output;
/*
* The following functions do not block:
@@ -477,6 +479,9 @@ struct omap_overlay_manager {
int (*set_device)(struct omap_overlay_manager *mgr,
struct omap_dss_device *dssdev);
int (*unset_device)(struct omap_overlay_manager *mgr);
+ int (*set_output)(struct omap_overlay_manager *mgr,
+ struct omap_dss_output *output);
+ int (*unset_output)(struct omap_overlay_manager *mgr);
int (*set_manager_info)(struct omap_overlay_manager *mgr,
struct omap_overlay_manager_info *info);