diff options
author | Hans Verkuil <hans.verkuil@cisco.com> | 2017-09-29 09:31:13 +0200 |
---|---|---|
committer | Hans Verkuil <hans.verkuil@cisco.com> | 2017-09-29 09:31:13 +0200 |
commit | 997ed5a4abba619282d9ffb8bb173e8589176d73 (patch) | |
tree | 0723da06f324d6dc94df1b736b2c161b7c9103d3 /utils/cec-compliance/cec-test-power.cpp | |
parent | 8be65674f9a57e4bc35858f86bb5489f0afd22c1 (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.cpp | 10 |
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) |