diff options
Diffstat (limited to 'include/video/omapdss.h')
-rw-r--r-- | include/video/omapdss.h | 44 |
1 files changed, 39 insertions, 5 deletions
diff --git a/include/video/omapdss.h b/include/video/omapdss.h index adb103633bd1..709e8015f324 100644 --- a/include/video/omapdss.h +++ b/include/video/omapdss.h | |||
@@ -172,6 +172,11 @@ enum omap_dss_audio_state { | |||
172 | OMAP_DSS_AUDIO_PLAYING, | 172 | OMAP_DSS_AUDIO_PLAYING, |
173 | }; | 173 | }; |
174 | 174 | ||
175 | struct omap_dss_audio { | ||
176 | struct snd_aes_iec958 *iec; | ||
177 | struct snd_cea_861_aud_if *cea; | ||
178 | }; | ||
179 | |||
175 | enum omap_dss_rotation_type { | 180 | enum omap_dss_rotation_type { |
176 | OMAP_DSS_ROT_DMA = 1 << 0, | 181 | OMAP_DSS_ROT_DMA = 1 << 0, |
177 | OMAP_DSS_ROT_VRFB = 1 << 1, | 182 | OMAP_DSS_ROT_VRFB = 1 << 1, |
@@ -653,6 +658,39 @@ struct omapdss_atv_ops { | |||
653 | u32 (*get_wss)(struct omap_dss_device *dssdev); | 658 | u32 (*get_wss)(struct omap_dss_device *dssdev); |
654 | }; | 659 | }; |
655 | 660 | ||
661 | struct omapdss_hdmi_ops { | ||
662 | int (*connect)(struct omap_dss_device *dssdev, | ||
663 | struct omap_dss_device *dst); | ||
664 | void (*disconnect)(struct omap_dss_device *dssdev, | ||
665 | struct omap_dss_device *dst); | ||
666 | |||
667 | int (*enable)(struct omap_dss_device *dssdev); | ||
668 | void (*disable)(struct omap_dss_device *dssdev); | ||
669 | |||
670 | int (*check_timings)(struct omap_dss_device *dssdev, | ||
671 | struct omap_video_timings *timings); | ||
672 | void (*set_timings)(struct omap_dss_device *dssdev, | ||
673 | struct omap_video_timings *timings); | ||
674 | void (*get_timings)(struct omap_dss_device *dssdev, | ||
675 | struct omap_video_timings *timings); | ||
676 | |||
677 | int (*read_edid)(struct omap_dss_device *dssdev, u8 *buf, int len); | ||
678 | bool (*detect)(struct omap_dss_device *dssdev); | ||
679 | |||
680 | /* | ||
681 | * Note: These functions might sleep. Do not call while | ||
682 | * holding a spinlock/readlock. | ||
683 | */ | ||
684 | int (*audio_enable)(struct omap_dss_device *dssdev); | ||
685 | void (*audio_disable)(struct omap_dss_device *dssdev); | ||
686 | bool (*audio_supported)(struct omap_dss_device *dssdev); | ||
687 | int (*audio_config)(struct omap_dss_device *dssdev, | ||
688 | struct omap_dss_audio *audio); | ||
689 | /* Note: These functions may not sleep */ | ||
690 | int (*audio_start)(struct omap_dss_device *dssdev); | ||
691 | void (*audio_stop)(struct omap_dss_device *dssdev); | ||
692 | }; | ||
693 | |||
656 | struct omap_dss_device { | 694 | struct omap_dss_device { |
657 | /* old device, to be removed */ | 695 | /* old device, to be removed */ |
658 | struct device old_dev; | 696 | struct device old_dev; |
@@ -722,6 +760,7 @@ struct omap_dss_device { | |||
722 | const struct omapdss_dpi_ops *dpi; | 760 | const struct omapdss_dpi_ops *dpi; |
723 | const struct omapdss_sdi_ops *sdi; | 761 | const struct omapdss_sdi_ops *sdi; |
724 | const struct omapdss_dvi_ops *dvi; | 762 | const struct omapdss_dvi_ops *dvi; |
763 | const struct omapdss_hdmi_ops *hdmi; | ||
725 | const struct omapdss_atv_ops *atv; | 764 | const struct omapdss_atv_ops *atv; |
726 | } ops; | 765 | } ops; |
727 | 766 | ||
@@ -759,11 +798,6 @@ struct omap_dss_hdmi_data | |||
759 | int hpd_gpio; | 798 | int hpd_gpio; |
760 | }; | 799 | }; |
761 | 800 | ||
762 | struct omap_dss_audio { | ||
763 | struct snd_aes_iec958 *iec; | ||
764 | struct snd_cea_861_aud_if *cea; | ||
765 | }; | ||
766 | |||
767 | struct omap_dss_driver { | 801 | struct omap_dss_driver { |
768 | struct device_driver driver; | 802 | struct device_driver driver; |
769 | 803 | ||