1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/input/touchscreen/silead,gsl1680.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Silead GSL1680 Touchscreen Controller
8
9maintainers:
10  - Dmitry Torokhov <dmitry.torokhov@gmail.com>
11
12allOf:
13  - $ref: touchscreen.yaml#
14
15properties:
16  compatible:
17    enum:
18      - silead,gsl1680
19      - silead,gsl1688
20      - silead,gsl3670
21      - silead,gsl3675
22      - silead,gsl3692
23
24  reg:
25    maxItems: 1
26
27  interrupts:
28    maxItems: 1
29
30  power-gpios:
31    maxItems: 1
32
33  firmware-name:
34    $ref: /schemas/types.yaml#/definitions/string
35    description: >
36      File basename for board specific firmware
37
38  silead,max-fingers:
39    $ref: /schemas/types.yaml#/definitions/uint32
40    maximum: 5
41    description: >
42      Maximum number of fingers the touchscreen can detect
43
44  silead,home-button:
45    type: boolean
46    description: >
47      Does the device have a capacitive home-button build into the
48      touchscreen?
49
50  avdd-supply:
51    description: >
52      Regulator phandle for controller AVDD
53
54  vddio-supply:
55    description: >
56      Regulator phandle for controller VDDIO
57
58unevaluatedProperties: false
59
60required:
61  - compatible
62  - reg
63  - interrupts
64  - power-gpios
65  - touchscreen-size-x
66  - touchscreen-size-y
67
68examples:
69  - |
70    #include <dt-bindings/gpio/gpio.h>
71    #include <dt-bindings/interrupt-controller/arm-gic.h>
72
73    i2c {
74        #address-cells = <1>;
75        #size-cells = <0>;
76
77        touchscreen@40 {
78            compatible = "silead,gsl1680";
79            reg = <0x40>;
80            interrupt-parent = <&pio>;
81            interrupts = <6 11 IRQ_TYPE_EDGE_FALLING>;
82            power-gpios = <&pio 1 3 GPIO_ACTIVE_HIGH>;
83            touchscreen-size-x = <480>;
84            touchscreen-size-y = <800>;
85            touchscreen-inverted-x;
86            touchscreen-swapped-x-y;
87            silead,max-fingers = <5>;
88        };
89    };
90
91...
92