diff options
author | Damien Lespiau <damien.lespiau@intel.com> | 2013-08-06 15:32:14 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-08-08 08:04:45 -0400 |
commit | 72b098964d3c3fb030dcac2d4c869c9851a0d17a (patch) | |
tree | 12a53e67bc5563db2d91f0d89c788b2daa9bfd78 /include/linux/hdmi.h | |
parent | 3c6b054de1c0243a0f708abf337f2a0e270ce247 (diff) |
video/hdmi: Introduce a generic hdmi_infoframe union
And a way to pack hdmi_infoframe generically.
Cc: Thierry Reding <thierry.reding@avionic-design.de>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Acked-by: Dave Airlie <airlied@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'include/linux/hdmi.h')
-rw-r--r-- | include/linux/hdmi.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h index 3b589440ecfe..0f3f82eadef7 100644 --- a/include/linux/hdmi.h +++ b/include/linux/hdmi.h | |||
@@ -23,6 +23,12 @@ enum hdmi_infoframe_type { | |||
23 | #define HDMI_SPD_INFOFRAME_SIZE 25 | 23 | #define HDMI_SPD_INFOFRAME_SIZE 25 |
24 | #define HDMI_AUDIO_INFOFRAME_SIZE 10 | 24 | #define HDMI_AUDIO_INFOFRAME_SIZE 10 |
25 | 25 | ||
26 | struct hdmi_any_infoframe { | ||
27 | enum hdmi_infoframe_type type; | ||
28 | unsigned char version; | ||
29 | unsigned char length; | ||
30 | }; | ||
31 | |||
26 | enum hdmi_colorspace { | 32 | enum hdmi_colorspace { |
27 | HDMI_COLORSPACE_RGB, | 33 | HDMI_COLORSPACE_RGB, |
28 | HDMI_COLORSPACE_YUV422, | 34 | HDMI_COLORSPACE_YUV422, |
@@ -228,4 +234,15 @@ struct hdmi_vendor_infoframe { | |||
228 | ssize_t hdmi_vendor_infoframe_pack(struct hdmi_vendor_infoframe *frame, | 234 | ssize_t hdmi_vendor_infoframe_pack(struct hdmi_vendor_infoframe *frame, |
229 | void *buffer, size_t size); | 235 | void *buffer, size_t size); |
230 | 236 | ||
237 | union hdmi_infoframe { | ||
238 | struct hdmi_any_infoframe any; | ||
239 | struct hdmi_avi_infoframe avi; | ||
240 | struct hdmi_spd_infoframe spd; | ||
241 | struct hdmi_vendor_infoframe vendor; | ||
242 | struct hdmi_audio_infoframe audio; | ||
243 | }; | ||
244 | |||
245 | ssize_t | ||
246 | hdmi_infoframe_pack(union hdmi_infoframe *frame, void *buffer, size_t size); | ||
247 | |||
231 | #endif /* _DRM_HDMI_H */ | 248 | #endif /* _DRM_HDMI_H */ |