xref: /linux/Documentation/devicetree/bindings/input/touchscreen/cypress,tt21000.yaml (revision 0ea5c948cb64bab5bc7a5516774eb8536f05aa0d)
1cdb51323SAlistair Francis# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2cdb51323SAlistair Francis%YAML 1.2
3cdb51323SAlistair Francis---
4cdb51323SAlistair Francis$id: http://devicetree.org/schemas/input/touchscreen/cypress,tt21000.yaml#
5cdb51323SAlistair Francis$schema: http://devicetree.org/meta-schemas/core.yaml#
6cdb51323SAlistair Francis
7cdb51323SAlistair Francistitle: Cypress TT21000 touchscreen controller
8cdb51323SAlistair Francis
9cdb51323SAlistair Francisdescription: The Cypress TT21000 series (also known as "CYTTSP5" after
10cdb51323SAlistair Francis  the marketing name Cypress TrueTouch Standard Product series 5).
11cdb51323SAlistair Francis
12cdb51323SAlistair Francismaintainers:
13cdb51323SAlistair Francis  - Alistair Francis <alistair@alistair23.me>
14cdb51323SAlistair Francis
15cdb51323SAlistair FrancisallOf:
16cdb51323SAlistair Francis  - $ref: touchscreen.yaml#
17cdb51323SAlistair Francis
18cdb51323SAlistair Francisproperties:
19cdb51323SAlistair Francis  compatible:
20cdb51323SAlistair Francis    const: cypress,tt21000
21cdb51323SAlistair Francis
22cdb51323SAlistair Francis  reg:
23cdb51323SAlistair Francis    maxItems: 1
24cdb51323SAlistair Francis
25cdb51323SAlistair Francis  '#address-cells':
26cdb51323SAlistair Francis    const: 1
27cdb51323SAlistair Francis
28cdb51323SAlistair Francis  '#size-cells':
29cdb51323SAlistair Francis    const: 0
30cdb51323SAlistair Francis
31cdb51323SAlistair Francis  interrupts:
32cdb51323SAlistair Francis    maxItems: 1
33cdb51323SAlistair Francis
34cdb51323SAlistair Francis  vdd-supply:
35cdb51323SAlistair Francis    description: Regulator for voltage.
36cdb51323SAlistair Francis
37*fade5a92SLin, Meng-Bo  vddio-supply:
38*fade5a92SLin, Meng-Bo    description: Optional Regulator for I/O voltage.
39*fade5a92SLin, Meng-Bo
40cdb51323SAlistair Francis  reset-gpios:
41cdb51323SAlistair Francis    maxItems: 1
42cdb51323SAlistair Francis
43cdb51323SAlistair Francis  linux,keycodes:
44cdb51323SAlistair Francis    description: EV_ABS specific event code generated by the axis.
45cdb51323SAlistair Francis
4690c64911SMaximilian Weigand  wakeup-source: true
4790c64911SMaximilian Weigand
48cdb51323SAlistair FrancispatternProperties:
49cdb51323SAlistair Francis  "^button@[0-9]+$":
50cdb51323SAlistair Francis    type: object
51cdb51323SAlistair Francis    $ref: ../input.yaml#
52cdb51323SAlistair Francis    properties:
53cdb51323SAlistair Francis      reg:
54cdb51323SAlistair Francis        maxItems: 1
55cdb51323SAlistair Francis      linux,keycodes:
56cdb51323SAlistair Francis        description: Keycode to emit
57cdb51323SAlistair Francis
58cdb51323SAlistair Francis    required:
59cdb51323SAlistair Francis      - reg
60cdb51323SAlistair Francis      - linux,keycodes
61cdb51323SAlistair Francis
62cdb51323SAlistair Francis    additionalProperties: false
63cdb51323SAlistair Francis
64cdb51323SAlistair Francisrequired:
65cdb51323SAlistair Francis  - compatible
66cdb51323SAlistair Francis  - reg
67cdb51323SAlistair Francis  - interrupts
68cdb51323SAlistair Francis  - vdd-supply
69cdb51323SAlistair Francis
70cdb51323SAlistair FrancisunevaluatedProperties: false
71cdb51323SAlistair Francis
72cdb51323SAlistair Francisexamples:
73cdb51323SAlistair Francis  - |
74cdb51323SAlistair Francis    #include <dt-bindings/interrupt-controller/irq.h>
75cdb51323SAlistair Francis    #include <dt-bindings/gpio/gpio.h>
76cdb51323SAlistair Francis    #include <dt-bindings/input/linux-event-codes.h>
77cdb51323SAlistair Francis
78cdb51323SAlistair Francis    i2c {
79cdb51323SAlistair Francis        #address-cells = <1>;
80cdb51323SAlistair Francis        #size-cells = <0>;
81cdb51323SAlistair Francis
82cdb51323SAlistair Francis        touchscreen@24 {
83cdb51323SAlistair Francis            #address-cells = <1>;
84cdb51323SAlistair Francis            #size-cells = <0>;
85cdb51323SAlistair Francis
86cdb51323SAlistair Francis            compatible = "cypress,tt21000";
87cdb51323SAlistair Francis            reg = <0x24>;
88cdb51323SAlistair Francis            pinctrl-names = "default";
89cdb51323SAlistair Francis            pinctrl-0 = <&tp_reset_ds203>;
90cdb51323SAlistair Francis            interrupt-parent = <&pio>;
91cdb51323SAlistair Francis            interrupts = <1 5 IRQ_TYPE_LEVEL_LOW>;
92cdb51323SAlistair Francis            reset-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>;
93cdb51323SAlistair Francis            vdd-supply = <&reg_touch>;
94cdb51323SAlistair Francis
95cdb51323SAlistair Francis            button@0 {
96cdb51323SAlistair Francis                reg = <0>;
97cdb51323SAlistair Francis                linux,keycodes = <KEY_HOMEPAGE>;
98cdb51323SAlistair Francis            };
99cdb51323SAlistair Francis
100cdb51323SAlistair Francis            button@1 {
101cdb51323SAlistair Francis                reg = <1>;
102cdb51323SAlistair Francis                linux,keycodes = <KEY_MENU>;
103cdb51323SAlistair Francis            };
104cdb51323SAlistair Francis
105cdb51323SAlistair Francis            button@2 {
106cdb51323SAlistair Francis                reg = <2>;
107cdb51323SAlistair Francis                linux,keycodes = <KEY_BACK>;
108cdb51323SAlistair Francis            };
109cdb51323SAlistair Francis        };
110cdb51323SAlistair Francis    };
111cdb51323SAlistair Francis...
112