blob: 90ebd4f8354c27b5a4fb83ea6f9ad470dba843a2 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/input/touchscreen/melfas,mms114.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Melfas MMS114 family touchscreen controller
8
9maintainers:
10 - Linus Walleij <linus.walleij@linaro.org>
11
12allOf:
13 - $ref: touchscreen.yaml#
14
15properties:
16 $nodename:
17 pattern: "^touchscreen(@.*)?$"
18
19 compatible:
Tom Rini6bb92fc2024-05-20 09:54:58 -060020 oneOf:
Tom Rini53633a82024-02-29 12:33:36 -050021 - enum:
22 - melfas,mms114
23 - melfas,mms134s
24 - melfas,mms136
25 - melfas,mms152
26 - melfas,mms345l
Tom Rini6bb92fc2024-05-20 09:54:58 -060027 - items:
28 - enum:
29 - melfas,mms252
30 - const: melfas,mms114
Tom Rini53633a82024-02-29 12:33:36 -050031
32 reg:
33 description: I2C address
34
35 clock-frequency:
36 description: I2C client clock frequency, defined for host
37 minimum: 100000
38 maximum: 400000
39
40 interrupts:
41 maxItems: 1
42
43 avdd-supply:
44 description: Analog power supply regulator on AVDD pin
45
46 vdd-supply:
47 description: Digital power supply regulator on VDD pin
48
49 touchscreen-size-x: true
50 touchscreen-size-y: true
51 touchscreen-fuzz-x: true
52 touchscreen-fuzz-y: true
53 touchscreen-fuzz-pressure: true
54 touchscreen-inverted-x: true
55 touchscreen-inverted-y: true
56 touchscreen-swapped-x-y: true
57 touchscreen-max-pressure: true
58
59 linux,keycodes:
60 description: Keycodes for the touch keys
61 minItems: 1
62 maxItems: 15
63
64additionalProperties: false
65
66required:
67 - compatible
68 - reg
69 - interrupts
70 - touchscreen-size-x
71 - touchscreen-size-y
72
73examples:
74 - |
75 #include <dt-bindings/interrupt-controller/irq.h>
76 i2c {
77 #address-cells = <1>;
78 #size-cells = <0>;
79 touchscreen@48 {
80 compatible = "melfas,mms114";
81 reg = <0x48>;
82 interrupt-parent = <&gpio>;
83 interrupts = <39 IRQ_TYPE_EDGE_FALLING>;
84 avdd-supply = <&ldo1_reg>;
85 vdd-supply = <&ldo2_reg>;
86 touchscreen-size-x = <720>;
87 touchscreen-size-y = <1280>;
88 touchscreen-fuzz-x = <10>;
89 touchscreen-fuzz-y = <10>;
90 touchscreen-fuzz-pressure = <10>;
91 touchscreen-inverted-x;
92 touchscreen-inverted-y;
93 };
94 };
95
96...