OMAPDSS: DVI: Add ops
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 24 May 2013 10:19:30 +0000 (13:19 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 17 Jun 2013 11:01:00 +0000 (14:01 +0300)
Add "ops" style method for using DVI 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>
include/video/omapdss.h

index c5935a824ec5ab0d80024e046f1880b310754db0..3b3903fa1500653322ea6ac9baec0c71bba4a23a 100644 (file)
@@ -611,6 +611,23 @@ struct omapdss_sdi_ops {
        void (*set_datapairs)(struct omap_dss_device *dssdev, int datapairs);
 };
 
+struct omapdss_dvi_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);
+};
+
 struct omap_dss_device {
        /* old device, to be removed */
        struct device old_dev;
@@ -679,6 +696,7 @@ struct omap_dss_device {
        union {
                const struct omapdss_dpi_ops *dpi;
                const struct omapdss_sdi_ops *sdi;
+               const struct omapdss_dvi_ops *dvi;
        } ops;
 
        /* helper variable for driver suspend/resume */