dt-bindings: ps2-gpio: convert binding to json-schema
authorDanilo Krummrich <danilokrummrich@dk-develop.de>
Sun, 29 May 2022 13:26:37 +0000 (15:26 +0200)
committerRob Herring <robh@kernel.org>
Mon, 6 Jun 2022 17:41:25 +0000 (12:41 -0500)
Convert the ps2-gpio dt-binding documentation to DT schema format using
the json-schema.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Danilo Krummrich <danilokrummrich@dk-develop.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220529132638.13420-1-danilokrummrich@dk-develop.de
Documentation/devicetree/bindings/serio/ps2-gpio.txt [deleted file]
Documentation/devicetree/bindings/serio/ps2-gpio.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.txt b/Documentation/devicetree/bindings/serio/ps2-gpio.txt
deleted file mode 100644 (file)
index 7b7bc9c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Device-Tree binding for ps/2 gpio device
-
-Required properties:
-       - compatible = "ps2-gpio"
-       - data-gpios: the data pin
-       - clk-gpios: the clock pin
-       - interrupts: Should trigger on the falling edge of the clock line.
-
-Optional properties:
-       - write-enable: Indicates whether write function is provided
-       to serio device. Possibly providing the write fn will not work, because
-       of the tough timing requirements.
-
-Example nodes:
-
-ps2@0 {
-       compatible = "ps2-gpio";
-       interrupt-parent = <&gpio>;
-       interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
-       data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
-       clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
-       write-enable;
-};
diff --git a/Documentation/devicetree/bindings/serio/ps2-gpio.yaml b/Documentation/devicetree/bindings/serio/ps2-gpio.yaml
new file mode 100644 (file)
index 0000000..304132f
--- /dev/null
@@ -0,0 +1,58 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Bindings for GPIO based PS/2
+
+maintainers:
+  - Danilo Krummrich <danilokrummrich@dk-develop.de>
+
+properties:
+  compatible:
+    const: ps2-gpio
+
+  data-gpios:
+    description:
+      the gpio used for the data signal
+    maxItems: 1
+
+  clk-gpios:
+    description:
+      the gpio used for the clock signal
+    maxItems: 1
+
+  interrupts:
+    description:
+      The given interrupt should trigger on the falling edge of the clock line.
+    maxItems: 1
+
+  write-enable:
+    type: boolean
+    description:
+      Indicates whether write function is provided to serio device. Possibly
+      providing the write function will not work, because of the tough timing
+      requirements.
+
+required:
+  - compatible
+  - data-gpios
+  - clk-gpios
+  - interrupts
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    ps2 {
+        compatible = "ps2-gpio";
+        interrupt-parent = <&gpio>;
+        interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
+        data-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
+        clk-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
+        write-enable;
+    };