xref: /openbmc/linux/Documentation/devicetree/bindings/input/touchscreen/cypress,tt21000.yaml (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
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
37cdb51323SAlistair Francis  reset-gpios:
38cdb51323SAlistair Francis    maxItems: 1
39cdb51323SAlistair Francis
40cdb51323SAlistair Francis  linux,keycodes:
41cdb51323SAlistair Francis    description: EV_ABS specific event code generated by the axis.
42cdb51323SAlistair Francis
43*90c64911SMaximilian Weigand  wakeup-source: true
44*90c64911SMaximilian Weigand
45cdb51323SAlistair FrancispatternProperties:
46cdb51323SAlistair Francis  "^button@[0-9]+$":
47cdb51323SAlistair Francis    type: object
48cdb51323SAlistair Francis    $ref: ../input.yaml#
49cdb51323SAlistair Francis    properties:
50cdb51323SAlistair Francis      reg:
51cdb51323SAlistair Francis        maxItems: 1
52cdb51323SAlistair Francis      linux,keycodes:
53cdb51323SAlistair Francis        description: Keycode to emit
54cdb51323SAlistair Francis
55cdb51323SAlistair Francis    required:
56cdb51323SAlistair Francis      - reg
57cdb51323SAlistair Francis      - linux,keycodes
58cdb51323SAlistair Francis
59cdb51323SAlistair Francis    additionalProperties: false
60cdb51323SAlistair Francis
61cdb51323SAlistair Francisrequired:
62cdb51323SAlistair Francis  - compatible
63cdb51323SAlistair Francis  - reg
64cdb51323SAlistair Francis  - interrupts
65cdb51323SAlistair Francis  - vdd-supply
66cdb51323SAlistair Francis
67cdb51323SAlistair FrancisunevaluatedProperties: false
68cdb51323SAlistair Francis
69cdb51323SAlistair Francisexamples:
70cdb51323SAlistair Francis  - |
71cdb51323SAlistair Francis    #include <dt-bindings/interrupt-controller/irq.h>
72cdb51323SAlistair Francis    #include <dt-bindings/gpio/gpio.h>
73cdb51323SAlistair Francis    #include <dt-bindings/input/linux-event-codes.h>
74cdb51323SAlistair Francis
75cdb51323SAlistair Francis    i2c {
76cdb51323SAlistair Francis        #address-cells = <1>;
77cdb51323SAlistair Francis        #size-cells = <0>;
78cdb51323SAlistair Francis
79cdb51323SAlistair Francis        touchscreen@24 {
80cdb51323SAlistair Francis            #address-cells = <1>;
81cdb51323SAlistair Francis            #size-cells = <0>;
82cdb51323SAlistair Francis
83cdb51323SAlistair Francis            compatible = "cypress,tt21000";
84cdb51323SAlistair Francis            reg = <0x24>;
85cdb51323SAlistair Francis            pinctrl-names = "default";
86cdb51323SAlistair Francis            pinctrl-0 = <&tp_reset_ds203>;
87cdb51323SAlistair Francis            interrupt-parent = <&pio>;
88cdb51323SAlistair Francis            interrupts = <1 5 IRQ_TYPE_LEVEL_LOW>;
89cdb51323SAlistair Francis            reset-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>;
90cdb51323SAlistair Francis            vdd-supply = <&reg_touch>;
91cdb51323SAlistair Francis
92cdb51323SAlistair Francis            button@0 {
93cdb51323SAlistair Francis                reg = <0>;
94cdb51323SAlistair Francis                linux,keycodes = <KEY_HOMEPAGE>;
95cdb51323SAlistair Francis            };
96cdb51323SAlistair Francis
97cdb51323SAlistair Francis            button@1 {
98cdb51323SAlistair Francis                reg = <1>;
99cdb51323SAlistair Francis                linux,keycodes = <KEY_MENU>;
100cdb51323SAlistair Francis            };
101cdb51323SAlistair Francis
102cdb51323SAlistair Francis            button@2 {
103cdb51323SAlistair Francis                reg = <2>;
104cdb51323SAlistair Francis                linux,keycodes = <KEY_BACK>;
105cdb51323SAlistair Francis            };
106cdb51323SAlistair Francis        };
107cdb51323SAlistair Francis    };
108cdb51323SAlistair Francis...
109