1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/input/gpio-mouse.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: GPIO attached mouse
8
9description: |
10  This simply uses standard GPIO handles to define a simple mouse connected
11  to 5-7 GPIO lines.
12
13maintainers:
14  - Anshul Dalal <anshulusr@gmail.com>
15
16properties:
17  compatible:
18    const: gpio-mouse
19
20  scan-interval-ms:
21    maxItems: 1
22
23  up-gpios:
24    maxItems: 1
25
26  down-gpios:
27    maxItems: 1
28
29  left-gpios:
30    maxItems: 1
31
32  right-gpios:
33    maxItems: 1
34
35  button-left-gpios:
36    maxItems: 1
37
38  button-middle-gpios:
39    maxItems: 1
40
41  button-right-gpios:
42    maxItems: 1
43
44required:
45  - compatible
46  - scan-interval-ms
47  - up-gpios
48  - down-gpios
49  - left-gpios
50  - right-gpios
51
52additionalProperties: false
53
54examples:
55  - |
56    #include <dt-bindings/gpio/gpio.h>
57
58    gpio-mouse {
59        compatible = "gpio-mouse";
60        scan-interval-ms = <50>;
61        up-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
62        down-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>;
63        left-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
64        right-gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
65        button-left-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
66        button-middle-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
67        button-right-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
68    };
69