1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/input/touchscreen/ilitek_ts_i2c.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Ilitek I2C Touchscreen Controller
8
9maintainers:
10  - Dmitry Torokhov <dmitry.torokhov@gmail.com>
11
12allOf:
13  - $ref: touchscreen.yaml#
14
15properties:
16  compatible:
17    enum:
18      - ilitek,ili210x
19      - ilitek,ili2117
20      - ilitek,ili2120
21      - ilitek,ili2130
22      - ilitek,ili2131
23      - ilitek,ili2132
24      - ilitek,ili2316
25      - ilitek,ili2322
26      - ilitek,ili2323
27      - ilitek,ili2326
28      - ilitek,ili251x
29      - ilitek,ili2520
30      - ilitek,ili2521
31
32  reg:
33    maxItems: 1
34
35  interrupts:
36    maxItems: 1
37
38  reset-gpios:
39    maxItems: 1
40
41  wakeup-source:
42    type: boolean
43    description: touchscreen can be used as a wakeup source.
44
45  touchscreen-size-x: true
46  touchscreen-size-y: true
47  touchscreen-inverted-x: true
48  touchscreen-inverted-y: true
49  touchscreen-swapped-x-y: true
50
51additionalProperties: false
52
53required:
54  - compatible
55  - reg
56  - interrupts
57
58examples:
59  - |
60    #include <dt-bindings/interrupt-controller/irq.h>
61    #include <dt-bindings/gpio/gpio.h>
62    i2c {
63        #address-cells = <1>;
64        #size-cells = <0>;
65
66        touchscreen@41 {
67            compatible = "ilitek,ili2520";
68            reg = <0x41>;
69
70            interrupt-parent = <&gpio1>;
71            interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
72            reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
73            touchscreen-inverted-y;
74            wakeup-source;
75        };
76    };
77