summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2014-12-20 14:30:27 +0100
committerHans de Goede <hdegoede@redhat.com>2015-01-14 14:56:38 +0100
commitd2fabdc71ccf0eee938cd77a0eabffb5debef42d (patch)
treeb9f723710437c171fd66ab8826feaa9be0695fd8
parente745d064b441dbf48eac4bc2c494263d54262dec (diff)
downloadu-boot-imx-d2fabdc71ccf0eee938cd77a0eabffb5debef42d.zip
u-boot-imx-d2fabdc71ccf0eee938cd77a0eabffb5debef42d.tar.gz
u-boot-imx-d2fabdc71ccf0eee938cd77a0eabffb5debef42d.tar.bz2
edid: Add struct and defines for cea681 extension blocks
Add a struct describing the (fixed) bits of cea681 edid extension blocks, and defines for accessing various bitfields. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Anatolij Gustschin <agust@denx.de>
-rw-r--r--include/edid.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/edid.h b/include/edid.h
index a69f43a..18ec1d5 100644
--- a/include/edid.h
+++ b/include/edid.h
@@ -230,6 +230,25 @@ struct edid1_info {
unsigned char checksum;
} __attribute__ ((__packed__));
+struct edid_cea861_info {
+ unsigned char extension_tag;
+#define EDID_CEA861_EXTENSION_TAG 0x02
+ unsigned char revision;
+ unsigned char dtd_offset;
+ unsigned char dtd_count;
+#define EDID_CEA861_SUPPORTS_UNDERSCAN(_x) \
+ GET_BIT(((_x).dtd_count), 7)
+#define EDID_CEA861_SUPPORTS_BASIC_AUDIO(_x) \
+ GET_BIT(((_x).dtd_count), 6)
+#define EDID_CEA861_SUPPORTS_YUV444(_x) \
+ GET_BIT(((_x).dtd_count), 5)
+#define EDID_CEA861_SUPPORTS_YUV422(_x) \
+ GET_BIT(((_x).dtd_count), 4)
+#define EDID_CEA861_DTD_COUNT(_x) \
+ GET_BITS(((_x).dtd_count), 3, 0)
+ unsigned char data[124];
+} __attribute__ ((__packed__));
+
/**
* Print the EDID info.
*