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: ignore failed Ri' reads
Author:  Hans Verkuil <hverk...@xs4all.nl>
Date:    Fri Jan 17 11:50:28 2025 +0100

--i2c-hdcp-ri should ignore invalid Ri' reads.

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

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

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=1316a80455ef70889bea89491f37cd69170f3ee7
diff --git a/utils/edid-decode/ddc.cpp b/utils/edid-decode/ddc.cpp
index eacea38d919e..8d864a9bea7a 100644
--- a/utils/edid-decode/ddc.cpp
+++ b/utils/edid-decode/ddc.cpp
@@ -465,25 +465,27 @@ int read_hdcp_ri(int adapter_fd, double ri_time)
        __u64 last_ts = current_ts();
        bool first = true;
        __u16 ri = 0;
+       __u16 last_ri = 0;
 
        clock_gettime(CLOCK_MONOTONIC, &start_monotonic);
        gettimeofday(&start_timeofday, nullptr);
 
        while (1) {
                __u64 ts = current_ts();
-               __u16 last = ri;
 
                printf("Timestamp: %s", ts2s(ts).c_str());
-               if (!read_hdcp_ri_register(adapter_fd, &ri))
-                       printf(" Ri': %04x", ri);
-               if (!first && ri != last) {
-                       printf(" (changed from %04x after %llu ms)",
-                              last, (ts - last_ts) / 1000000);
-                       last_ts = ts;
+               if (!read_hdcp_ri_register(adapter_fd, &ri)) {
+                       printf(" Ri': 0x%04x", ri);
+                       if (!first && ri != last_ri) {
+                               printf(" (changed from 0x%04x after %llu ms)",
+                                      last_ri, (ts - last_ts) / 1000000);
+                               last_ts = ts;
+                               last_ri = ri;
+                       }
+                       first = false;
                }
                printf("\n");
                fflush(stdout);
-               first = false;
                usleep(ri_time * 1000000);
        }
        return 0;

Reply via email to