1CEC-COMPLIANCE(1)                User Commands               CEC-COMPLIANCE(1)
2
3
4

NAME

6       cec-compliance - An application to verify remote CEC devices
7

SYNOPSIS

9       cec-compliance [-h] [-d <dev>] [other options]
10

DESCRIPTION

12       The  cec-compliance  utility  can  be  used to test how well remote CEC
13       devices comply with the CEC specification. It can also be used to  test
14       the local CEC adapter (with the -A option).
15
16       By  default  it  will  run through all tests, but if one or more of the
17       feature test options is given, then only those tests will be performed.
18       A set of core tests is always run.
19
20       The  CEC  adapter needs to be configured before it is used to run tests
21       with cec-compliance. Use cec-ctl for configuration.
22
23       If the CEC adapter has claimed several logical addresses, the test  set
24       is run from each logical address in succession. The remote device needs
25       to report a valid physical address in order to run tests on it.
26
27       When running compliance tests, cec-follower should be run on  the  same
28       adapter.  cec-follower  will  reply to messages that are not handled by
29       cec-compliance. cec-follower will also monitor the  device  under  test
30       for  behaviors  that  are  not compliant with the specification. Before
31       each test-run cec-follower should be restarted if it  is  already  run‐
32       ning,  to initialize the emulated device with a clean and known initial
33       state.
34
35       Some tests require interactive mode (with the  -i  option)  to  confirm
36       that  the  test  passed. When in interactive mode, the user is asked to
37       observe or perform actions on the remote device. Some tests  also  give
38       conclusive test results when run in interactive mode.
39
40       When testing the local CEC adapter's compliance with the CEC API, there
41       must be at least one remote device present in order to  test  transmit‐
42       ting and receiving.
43
44       The compliance tests can have several possible outcomes besides passing
45       and failing:
46
47           OK                  The test passed.
48
49           OK (Unexpected)     The test passed, but it was unexpected for  the
50       device
51                               under  test to support it. This might for exam‐
52       ple occur
53                               when a TV replies to messages in the Deck  Con‐
54       trol
55                               feature.
56
57           OK (Not Supported)  The feature that was tested is not supported by
58       the
59                               device under test, and  that  feature  was  not
60       mandatory for
61                               the device to pass.
62
63           OK  (Presumed)        Nothing  went  wrong during the test, but the
64       test cannot
65                               positively verify that the required effects  of
66       the test
67                               occurred.  The  test  runner should verify that
68       the test
69                               passed by manually observing the  device  under
70       test. This
71                               is  typically  the  test  result for tests that
72       send
73                               messages that are not  replied  to,  but  which
74       induce some
75                               side effect on the device under test, such as a
76       TV
77                               switching to another input or sending a  Remote
78       Control
79                               command.
80
81           OK  (Refused)         The  device  supports  the feature or message
82       being tested,
83                               but responded <Feature  Abort>  ["Refused"]  to
84       indicate
85                               that  it  cannot  perform  the given operation.
86       This might
87                               for example occur when trying to test  the  One
88       Touch
89                               Record  feature  on  a  TV with copy protection
90       enabled.
91
92           FAIL                The test failed and was expected to pass on the
93       device.
94
95       Some tests depend on other tests being successful. These are not run if
96       the tests they depend on failed, and they will not be shown in the test
97       listing.
98

OPTIONS

100       -d, --device <dev>
101              Use  device  <dev> as the CEC device. If <dev> is a number, then
102              /dev/cec<dev> is used.
103
104       -D, --driver <drv>
105              Use a cec device that has driver name <drv>, as returned by  the
106              CEC_ADAP_G_CAPS  ioctl.   This option can be combined with -a to
107              uniquely identify a CEC device without having  to  rely  on  the
108              device node number.
109
110       -a, --adapter <adap-name>
111              Use  a cec device that has adapter name <adap-name>, as returned
112              by the CEC_ADAP_G_CAPS ioctl.  This option can be combined  with
113              -D  to  uniquely identify a CEC device without having to rely on
114              the device node number.
115
116       -E, --exit-on-fail
117              Exit this application when the first failure occurs  instead  of
118              continuing with a possible inconsistent state.
119
120       -v, --verbose
121              Turn on verbose reporting.
122
123       -w, --wall-clock
124              Show  timestamps  as wall-clock time. This also turns on verbose
125              reporting.
126
127       -T, --trace
128              Trace all called ioctls. Useful for debugging.
129
130       -h, --help
131              Prints the help message.
132
133       -W, --exit-on-warn
134              Exit this application when the first warning occurs  instead  of
135              continuing.
136
137       -s, --skip-info
138              Skip the Driver Info output section.
139
140       -C, --color <when>
141              Highlight  OK/warn/fail/FAIL  strings  with colors. OK is marked
142              green, warn is marked bold, and fail/FAIL are marked bright  red
143              if enabled. <when> can be always, never, or auto (the default).
144
145       -n, --no-warnings
146              Turn off warning messages.
147
148       -r, --remote <la>
149              As  initiator test the remote logical address <la> or all LAs if
150              no LA was given.
151
152       -i, --interactive
153              Interactive mode when doing remote tests.
154
155       -R, --reply-threshold <timeout>
156              Warn  if  replies  take  longer  than  this  threshold  (default
157              1000ms).
158
159       -t, --timeout <secs>
160              Set  the  standby/resume timeout to the given number of seconds.
161              Default is 60s.
162
163       -A, --test-adapter
164              Test the CEC adapter API
165
166       --test-core
167              Test the core functionality
168
169       --test-audio-rate-control
170              Test the Audio Rate Control feature
171
172       --test-audio-return-channel-control
173              Test the Audio Return Channel Control feature
174
175       --test-capability-discovery-and-control
176              Test the Capability Discovery and Control feature
177
178       --test-deck-control
179              Test the Deck Control feature
180
181       --test-device-menu-control
182              Test the Device Menu Control feature
183
184       --test-device-osd-transfer
185              Test the Device OSD Transfer feature
186
187       --test-dynamic-audio-lipsync
188              Test the Dynamic Audio Lipsync feature
189
190       --test-osd-display
191              Test the OSD Display feature
192
193       --test-one-touch-play
194              Test the One Touch Play feature
195
196       --test-one-touch-record
197              Test the One Touch Record feature
198
199       --test-power-status
200              Test the Power Status feature
201
202       --test-remote-control-passthrough
203              Test the Remote Control Passthrough feature
204
205       --test-routing-control
206              Test the Routing Control feature
207
208       --test-system-audio-control
209              Test the System Audio Control feature
210
211       --test-system-information
212              Test the System Information feature
213
214       --test-timer-programming
215              Test the Timer Programming feature
216
217       --test-tuner-control
218              Test the Tuner Control feature
219
220       --test-vendor-specific-commands
221              Test the Vendor Specific Commands feature
222
223       --test-standby-resume
224              Test standby and resume functionality. This will activate  test‐
225              ing of Standby, Give Device Power Status and One Touch Play.
226
227

EXIT STATUS

229       On success, it returns 0. Otherwise, it will return the error code.
230

EXAMPLE

232       We  want  to  test the compliance of a TV when it is interacting with a
233       Playback device. The device node of the CEC adapter  which  the  TV  is
234       connected to is /dev/cec1.
235
236       The  local  CEC  adapter  first  needs  to  be configured as a Playback
237       device, and it must have an appropriate physical address. It is  impor‐
238       tant  that  the  physical  address is correct, so as to not confuse the
239       device under test. For example, if the CEC adapter is connected to  the
240       first input of the TV, the physical address 1.0.0.0 should generally be
241       used.
242
243           cec-ctl -d1 --playback --phys-addr 1.0.0.0
244
245       Most CEC adapters will automatically detect the physical  address,  and
246       for those adapters the --phys-addr option is not needed.
247
248       Next, cec-follower also has to be started on the same device:
249
250           cec-follower -d1
251
252       cec-compliance can now be run towards the TV by supplying the -r option
253       with the logical address 0:
254
255           cec-compliance -d1 -r0
256

BUGS

258       This manual page is a work in progress.
259
260       Bug reports or questions about this  utility  should  be  sent  to  the
261       linux-media@vger.kernel.org mailinglist.
262

SEE ALSO

264       cec-follower(1), cec-ctl(1)
265
266
267
268v4l-utils 1.18.0                  August 2016                CEC-COMPLIANCE(1)
Impressum