This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:

Subject: edid-decode: support HF-EEODB when reading EDID over DDC
Author:  Hans Verkuil <hverk...@xs4all.nl>
Date:    Thu Jan 16 09:49:41 2025 +0100

The code to read an EDID directly over the DDC bus did not support the
HDMI Forum EDID Extension Override Data Block, so EDIDs that support
that would ignore the extra extension data blocks.

Check for the presence of this data block and obtain the correct number
of extension blocks.

Signed-off-by: Hans Verkuil <hverk...@xs4all.nl>

 utils/edid-decode/ddc.cpp | 10 ++++++++++
 1 file changed, 10 insertions(+)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=bbb6a0f149469484339238afa0aafa5c0b3d7782
diff --git a/utils/edid-decode/ddc.cpp b/utils/edid-decode/ddc.cpp
index d391a5287437..3bdcbb4e9363 100644
--- a/utils/edid-decode/ddc.cpp
+++ b/utils/edid-decode/ddc.cpp
@@ -109,6 +109,16 @@ int read_edid(int adapter_fd, unsigned char *edid, bool 
silent)
        n_extension_blocks = edid[126];
        if (!n_extension_blocks)
                return 1;
+
+       // Check for HDMI Forum EDID Extension Override Data Block
+       if (n_extension_blocks >= 1 &&
+           edid[128] == 2 &&
+           edid[133] == 0x78 &&
+           (edid[132] & 0xe0) == 0xe0 &&
+           (edid[132] & 0x1f) >= 2 &&
+           edid[134] > 1)
+               n_extension_blocks = edid[134];
+
        for (unsigned i = 2; i <= n_extension_blocks; i += 2) {
                err = read_edid_block(adapter_fd, edid + i * 128, i / 2, 0,
                                      (i + 1 > n_extension_blocks ? 1 : 2),

Reply via email to