[PATCH 7/9] media: dt-bindings: cec-gpio: convert to DT schema

Hans Verkuil hverkuil-cisco at xs4all.nl
Mon Dec 5 00:09:24 PST 2022


On 04/12/2022 19:29, Krzysztof Kozlowski wrote:
> Convert HDMI CEC GPIO bindings to DT schema.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>

Acked-by: Hans Verkuil <hverkuil-cisco at xs4all.nl>

Thanks!

	Hans

> ---
>  .../devicetree/bindings/media/cec-gpio.txt    | 42 -----------
>  .../bindings/media/cec/cec-gpio.yaml          | 73 +++++++++++++++++++
>  MAINTAINERS                                   |  2 +-
>  3 files changed, 74 insertions(+), 43 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/media/cec-gpio.txt
>  create mode 100644 Documentation/devicetree/bindings/media/cec/cec-gpio.yaml
> 
> diff --git a/Documentation/devicetree/bindings/media/cec-gpio.txt b/Documentation/devicetree/bindings/media/cec-gpio.txt
> deleted file mode 100644
> index 47e8d73d32a3..000000000000
> --- a/Documentation/devicetree/bindings/media/cec-gpio.txt
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -* 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>;
> -};
> diff --git a/Documentation/devicetree/bindings/media/cec/cec-gpio.yaml b/Documentation/devicetree/bindings/media/cec/cec-gpio.yaml
> new file mode 100644
> index 000000000000..19169d58316a
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/cec/cec-gpio.yaml
> @@ -0,0 +1,73 @@
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/cec/cec-gpio.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: HDMI CEC GPIO
> +
> +maintainers:
> +  - Hans Verkuil <hverkuil-cisco at xs4all.nl>
> +
> +description: |
> +  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.
> +
> +properties:
> +  compatible:
> +    const: cec-gpio
> +
> +  cec-gpios:
> +    maxItems: 1
> +    description:
> +      GPIO that the CEC line is connected to. The line should be tagged as open
> +      drain.
> +
> +  hpd-gpios:
> +    maxItems: 1
> +    description:
> +      GPIO that the HPD line is connected to.  Used for debugging HPD changes
> +      when the CEC line is not associated with an HDMI receiver/transmitter.
> +
> +  v5-gpios:
> +    maxItems: 1
> +    description:
> +      GPIO that the 5V line is connected to.  Used for debugging changes on the
> +      5V line.
> +
> +required:
> +  - compatible
> +  - cec-gpios
> +
> +allOf:
> +  - $ref: cec-common.yaml#
> +  - if:
> +      required:
> +        - hdmi-phandle
> +    then:
> +      properties:
> +        hpd-gpios: false
> +
> +  - if:
> +      required:
> +        - hpd-gpios
> +    then:
> +      properties:
> +        hdmi-phandle: false
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/gpio/gpio.h>
> +
> +    cec {
> +        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>;
> +    };
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 05acbaecef52..197351d3bb57 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -4848,7 +4848,7 @@ L:	linux-media at vger.kernel.org
>  S:	Supported
>  W:	http://linuxtv.org
>  T:	git git://linuxtv.org/media_tree.git
> -F:	Documentation/devicetree/bindings/media/cec-gpio.txt
> +F:	Documentation/devicetree/bindings/media/cec/cec-gpio.yaml
>  F:	drivers/media/cec/platform/cec-gpio/
>  
>  CELL BROADBAND ENGINE ARCHITECTURE




More information about the linux-amlogic mailing list