diff mbox series

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

Message ID 20221204182908.138910-7-krzysztof.kozlowski@linaro.org (mailing list archive)
State New, archived
Headers show
Series [1/9] media: dt-bindings: amlogic,meson-gx-ao-cec: move to cec subfolder | expand

Commit Message

Krzysztof Kozlowski Dec. 4, 2022, 6:29 p.m. UTC
Convert HDMI CEC GPIO bindings to DT schema.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../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

Comments

Hans Verkuil Dec. 5, 2022, 8:09 a.m. UTC | #1
On 04/12/2022 19:29, Krzysztof Kozlowski wrote:
> Convert HDMI CEC GPIO bindings to DT schema.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Acked-by: Hans Verkuil <hverkuil-cisco@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@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@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
diff mbox series

Patch

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@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@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