| * HDMI CEC GPIO driver |
| |
| The HDMI CEC GPIO module supports CEC implementations where the CEC line |
| is hooked up to a pull-up GPIO line and - optionally - the HPD line is |
| hooked up to another GPIO line. |
| |
| Please note: the maximum voltage for the CEC line is 3.63V, for the HPD and |
| 5V lines it is 5.3V. So you may need some sort of level conversion circuitry |
| when connecting them to a GPIO line. |
| |
| Required properties: |
| - compatible: value must be "cec-gpio". |
| - cec-gpios: gpio that the CEC line is connected to. The line should be |
| tagged as open drain. |
| |
| If the CEC line is associated with an HDMI receiver/transmitter, then the |
| following property is also required: |
| |
| - hdmi-phandle - phandle to the HDMI controller, see also cec.txt. |
| |
| If the CEC line is not associated with an HDMI receiver/transmitter, then |
| the following property is optional and can be used for debugging HPD changes: |
| |
| - hpd-gpios: gpio that the HPD line is connected to. |
| |
| This property is optional and can be used for debugging changes on the 5V line: |
| |
| - v5-gpios: gpio that the 5V line is connected to. |
| |
| Example for the Raspberry Pi 3 where the CEC line is connected to |
| pin 26 aka BCM7 aka CE1 on the GPIO pin header, the HPD line is |
| connected to pin 11 aka BCM17 and the 5V line is connected to pin |
| 15 aka BCM22 (some level shifter is needed for the HPD and 5V lines!): |
| |
| #include <dt-bindings/gpio/gpio.h> |
| |
| cec-gpio { |
| compatible = "cec-gpio"; |
| cec-gpios = <&gpio 7 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; |
| hpd-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; |
| v5-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; |
| }; |