1 .. SPDX-License-Identifier: GFDL-1.1-no-invari 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 2 3 .. _cec-intro: 3 .. _cec-intro: 4 4 5 Introduction 5 Introduction 6 ============ 6 ============ 7 7 8 HDMI connectors provide a single pin for use b 8 HDMI connectors provide a single pin for use by the Consumer Electronics 9 Control protocol. This protocol allows differe 9 Control protocol. This protocol allows different devices connected by an 10 HDMI cable to communicate. The protocol for CE 10 HDMI cable to communicate. The protocol for CEC version 1.4 is defined 11 in supplements 1 (CEC) and 2 (HEAC or HDMI Eth 11 in supplements 1 (CEC) and 2 (HEAC or HDMI Ethernet and Audio Return 12 Channel) of the HDMI 1.4a (:ref:`hdmi`) specif 12 Channel) of the HDMI 1.4a (:ref:`hdmi`) specification and the 13 extensions added to CEC version 2.0 are define 13 extensions added to CEC version 2.0 are defined in chapter 11 of the 14 HDMI 2.0 (:ref:`hdmi2`) specification. 14 HDMI 2.0 (:ref:`hdmi2`) specification. 15 15 16 The bitrate is very slow (effectively no more 16 The bitrate is very slow (effectively no more than 36 bytes per second) 17 and is based on the ancient AV.link protocol u 17 and is based on the ancient AV.link protocol used in old SCART 18 connectors. The protocol closely resembles a c 18 connectors. The protocol closely resembles a crazy Rube Goldberg 19 contraption and is an unholy mix of low and hi 19 contraption and is an unholy mix of low and high level messages. Some 20 messages, especially those part of the HEAC pr 20 messages, especially those part of the HEAC protocol layered on top of 21 CEC, need to be handled by the kernel, others 21 CEC, need to be handled by the kernel, others can be handled either by 22 the kernel or by userspace. 22 the kernel or by userspace. 23 23 24 In addition, CEC can be implemented in HDMI re 24 In addition, CEC can be implemented in HDMI receivers, transmitters and 25 in USB devices that have an HDMI input and an 25 in USB devices that have an HDMI input and an HDMI output and that 26 control just the CEC pin. 26 control just the CEC pin. 27 27 28 Drivers that support CEC will create a CEC dev 28 Drivers that support CEC will create a CEC device node (/dev/cecX) to 29 give userspace access to the CEC adapter. The 29 give userspace access to the CEC adapter. The 30 :ref:`CEC_ADAP_G_CAPS` ioctl will tell userspa 30 :ref:`CEC_ADAP_G_CAPS` ioctl will tell userspace what it is allowed to do. 31 31 32 In order to check the support and test it, it 32 In order to check the support and test it, it is suggested to download 33 the `v4l-utils <https://git.linuxtv.org/v4l-ut 33 the `v4l-utils <https://git.linuxtv.org/v4l-utils.git/>`_ package. It 34 provides three tools to handle CEC: 34 provides three tools to handle CEC: 35 35 36 - cec-ctl: the Swiss army knife of CEC. Allows 36 - cec-ctl: the Swiss army knife of CEC. Allows you to configure, transmit 37 and monitor CEC messages. 37 and monitor CEC messages. 38 38 39 - cec-compliance: does a CEC compliance test o 39 - cec-compliance: does a CEC compliance test of a remote CEC device to 40 determine how compliant the CEC implementati 40 determine how compliant the CEC implementation is. 41 41 42 - cec-follower: emulates a CEC follower. 42 - cec-follower: emulates a CEC follower.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.