dt-bindings: input: gpio-mouse: Convert to json-schema
authorAnshul Dalal <anshulusr@gmail.com>
Fri, 8 Dec 2023 07:50:35 +0000 (13:20 +0530)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 8 Dec 2023 23:22:22 +0000 (23:22 +0000)
Convert device tree binding documentation for GPIO attached mouse to
json-schema.

Signed-off-by: Anshul Dalal <anshulusr@gmail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20231208075037.114598-1-anshulusr@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Documentation/devicetree/bindings/input/gpio-mouse.txt [deleted file]
Documentation/devicetree/bindings/input/gpio-mouse.yaml [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/input/gpio-mouse.txt b/Documentation/devicetree/bindings/input/gpio-mouse.txt
deleted file mode 100644 (file)
index 519510a..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-Device-Tree bindings for GPIO attached mice
-
-This simply uses standard GPIO handles to define a simple mouse connected
-to 5-7 GPIO lines.
-
-Required properties:
-       - compatible: must be "gpio-mouse"
-       - scan-interval-ms: The scanning interval in milliseconds
-       - up-gpios: GPIO line phandle to the line indicating "up"
-       - down-gpios: GPIO line phandle to the line indicating "down"
-       - left-gpios: GPIO line phandle to the line indicating "left"
-       - right-gpios: GPIO line phandle to the line indicating "right"
-
-Optional properties:
-       - button-left-gpios: GPIO line handle to the left mouse button
-       - button-middle-gpios: GPIO line handle to the middle mouse button
-       - button-right-gpios: GPIO line handle to the right mouse button
-Example:
-
-#include <dt-bindings/gpio/gpio.h>
-
-gpio-mouse {
-       compatible = "gpio-mouse";
-       scan-interval-ms = <50>;
-       up-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
-       down-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
-       left-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
-       right-gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
-       button-left-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
-       button-middle-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
-       button-right-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
-};
diff --git a/Documentation/devicetree/bindings/input/gpio-mouse.yaml b/Documentation/devicetree/bindings/input/gpio-mouse.yaml
new file mode 100644 (file)
index 0000000..3928ec6
--- /dev/null
@@ -0,0 +1,68 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/gpio-mouse.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: GPIO attached mouse
+
+description: |
+  This simply uses standard GPIO handles to define a simple mouse connected
+  to 5-7 GPIO lines.
+
+maintainers:
+  - Anshul Dalal <anshulusr@gmail.com>
+
+properties:
+  compatible:
+    const: gpio-mouse
+
+  scan-interval-ms:
+    maxItems: 1
+
+  up-gpios:
+    maxItems: 1
+
+  down-gpios:
+    maxItems: 1
+
+  left-gpios:
+    maxItems: 1
+
+  right-gpios:
+    maxItems: 1
+
+  button-left-gpios:
+    maxItems: 1
+
+  button-middle-gpios:
+    maxItems: 1
+
+  button-right-gpios:
+    maxItems: 1
+
+required:
+  - compatible
+  - scan-interval-ms
+  - up-gpios
+  - down-gpios
+  - left-gpios
+  - right-gpios
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    gpio-mouse {
+        compatible = "gpio-mouse";
+        scan-interval-ms = <50>;
+        up-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
+        down-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
+        left-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
+        right-gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
+        button-left-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
+        button-middle-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
+        button-right-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
+    };