aboutsummaryrefslogtreecommitdiffstats
path: root/utils/cec-compliance/cec-test-power.cpp
diff options
context:
space:
mode:
authorHans Verkuil <hans.verkuil@cisco.com>2017-09-29 09:31:13 +0200
committerHans Verkuil <hans.verkuil@cisco.com>2017-09-29 09:31:13 +0200
commit997ed5a4abba619282d9ffb8bb173e8589176d73 (patch)
tree0723da06f324d6dc94df1b736b2c161b7c9103d3 /utils/cec-compliance/cec-test-power.cpp
parent8be65674f9a57e4bc35858f86bb5489f0afd22c1 (diff)
cec-compliance: use correct initiator in Image View On
The initiator for Image View On should be 0xf (Unregistered) if there is no HPD, or the adapter's logical address if there is a valid HPD. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Diffstat (limited to 'utils/cec-compliance/cec-test-power.cpp')
-rw-r--r--utils/cec-compliance/cec-test-power.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/utils/cec-compliance/cec-test-power.cpp b/utils/cec-compliance/cec-test-power.cpp
index e3360d17..1f9c7e80 100644
--- a/utils/cec-compliance/cec-test-power.cpp
+++ b/utils/cec-compliance/cec-test-power.cpp
@@ -426,7 +426,13 @@ static int wakeup_tv(struct node *node, unsigned me, unsigned la)
cec_msg_init(&msg, me, la);
cec_msg_image_view_on(&msg);
- fail_on_test(!transmit_timeout(node, &msg));
+ msg.timeout = 2000;
+ int res = doioctl(node, CEC_TRANSMIT, &msg);
+ if (res == ENONET && la == CEC_LOG_ADDR_TV) {
+ msg.msg[0] = (CEC_LOG_ADDR_UNREGISTERED << 4) | la;
+ res = doioctl(node, CEC_TRANSMIT, &msg);
+ }
+ fail_on_test(res || !(msg.tx_status & CEC_TX_STATUS_OK));
if (!cec_msg_status_is_abort(&msg))
return 0;
@@ -460,7 +466,7 @@ static int standby_resume_wakeup(struct node *node, unsigned me, unsigned la, bo
int ret;
if (is_tv(la, node->remote[la].prim_type))
- ret = wakeup_tv(node, CEC_LOG_ADDR_UNREGISTERED, la);
+ ret = wakeup_tv(node, me, la);
else
ret = wakeup_source(node, me, la);
if (ret)

Privacy Policy