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