summaryrefslogtreecommitdiffstats
path: root/include/video
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2013-05-24 13:19:50 +0300
committerTomi Valkeinen <tomi.valkeinen@ti.com>2013-06-17 14:01:00 +0300
commitfb8efa49660ea450ad632c9d8b70f12e4a43a495 (patch)
tree04d9704190f3e7700966a786b7f377368744affc /include/video
parent7700c2d4f79c423f29a5c2c10ca5a9b9c8c5c60f (diff)
downloadop-kernel-dev-fb8efa49660ea450ad632c9d8b70f12e4a43a495.zip
op-kernel-dev-fb8efa49660ea450ad632c9d8b70f12e4a43a495.tar.gz
OMAPDSS: AnalogTV: Add ops
Add "ops" style method for using analog TV functionality. Ops style calls will allow us to have arbitrarily long display pipelines, where each entity can call ops in the previous display entity. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'include/video')
-rw-r--r--include/video/omapdss.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/video/omapdss.h b/include/video/omapdss.h
index 3b3903f..adb1036 100644
--- a/include/video/omapdss.h
+++ b/include/video/omapdss.h
@@ -628,6 +628,31 @@ struct omapdss_dvi_ops {
struct omap_video_timings *timings);
};
+struct omapdss_atv_ops {
+ int (*connect)(struct omap_dss_device *dssdev,
+ struct omap_dss_device *dst);
+ void (*disconnect)(struct omap_dss_device *dssdev,
+ struct omap_dss_device *dst);
+
+ int (*enable)(struct omap_dss_device *dssdev);
+ void (*disable)(struct omap_dss_device *dssdev);
+
+ int (*check_timings)(struct omap_dss_device *dssdev,
+ struct omap_video_timings *timings);
+ void (*set_timings)(struct omap_dss_device *dssdev,
+ struct omap_video_timings *timings);
+ void (*get_timings)(struct omap_dss_device *dssdev,
+ struct omap_video_timings *timings);
+
+ void (*set_type)(struct omap_dss_device *dssdev,
+ enum omap_dss_venc_type type);
+ void (*invert_vid_out_polarity)(struct omap_dss_device *dssdev,
+ bool invert_polarity);
+
+ int (*set_wss)(struct omap_dss_device *dssdev, u32 wss);
+ u32 (*get_wss)(struct omap_dss_device *dssdev);
+};
+
struct omap_dss_device {
/* old device, to be removed */
struct device old_dev;
@@ -697,6 +722,7 @@ struct omap_dss_device {
const struct omapdss_dpi_ops *dpi;
const struct omapdss_sdi_ops *sdi;
const struct omapdss_dvi_ops *dvi;
+ const struct omapdss_atv_ops *atv;
} ops;
/* helper variable for driver suspend/resume */
OpenPOWER on IntegriCloud