aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil-cisco@xs4all.nl>2022-03-03 09:50:50 +0100
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2022-03-03 09:50:50 +0100
commit482610beb4a0d9e5d12783f1b734945677782c2e (patch)
tree8859ba74cdaf6fd7d510f1141e543b94784bdb49
parent467102b5f285d16c5facefb924f63c11de88569a (diff)
downloadv4l-utils-482610beb4a0d9e5d12783f1b734945677782c2e.tar.gz
cec-ctl: only generate eob for CEC pin eventsHEADmaster
An end-of-bit event is generated if a CEC pin event arrives that indicates that the CEC bus remained high for longer than a bit period, which means that it was the end of the message. But this was also done for HPD/5V events, which is incorrect. Especially since HPD/5V events might have a timestamp that is later than a CEC event (probably due to a driver or framework bug). In any case, the eob generator has nothing to do with HPD/5V events. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
-rw-r--r--utils/cec-ctl/cec-ctl.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/utils/cec-ctl/cec-ctl.cpp b/utils/cec-ctl/cec-ctl.cpp
index 20207842..b0073b39 100644
--- a/utils/cec-ctl/cec-ctl.cpp
+++ b/utils/cec-ctl/cec-ctl.cpp
@@ -972,7 +972,9 @@ static void monitor(const struct node &node, __u32 monitor_time, const char *sto
ev.event == CEC_EVENT_PIN_5V_LOW ||
ev.event == CEC_EVENT_PIN_5V_HIGH)
pin_event = true;
- generate_eob_event(ev.ts, fstore);
+ if (ev.event == CEC_EVENT_PIN_CEC_LOW ||
+ ev.event == CEC_EVENT_PIN_CEC_HIGH)
+ generate_eob_event(ev.ts, fstore);
if (pin_event && fstore) {
unsigned int v = ev.event - CEC_EVENT_PIN_CEC_LOW;