summaryrefslogtreecommitdiffstats
path: root/dts/Bindings/input/touchscreen/edt-ft5x06.yaml
blob: f2808cb4d99dfdab68755d3211b3e84b38f3b087 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/input/touchscreen/edt-ft5x06.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: FocalTech EDT-FT5x06 Polytouch

description: |
             There are 5 variants of the chip for various touch panel sizes
              FT5206GE1  2.8" .. 3.8"
              FT5306DE4  4.3" .. 7"
              FT5406EE8  7"   .. 8.9"
              FT5506EEG  7"   .. 8.9"
              FT5726NEI  5.7” .. 11.6"

maintainers:
  - Dmitry Torokhov <dmitry.torokhov@gmail.com>

allOf:
  - $ref: touchscreen.yaml#
  - if:
      properties:
        compatible:
          contains:
            enum:
              - evervision,ev-ft5726

    then:
      properties:
        offset-x: true
        offset-y: true

properties:
  compatible:
    enum:
      - edt,edt-ft5206
      - edt,edt-ft5306
      - edt,edt-ft5406
      - edt,edt-ft5506
      - evervision,ev-ft5726
      - focaltech,ft6236

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  reset-gpios:
    maxItems: 1

  wake-gpios:
    maxItems: 1

  wakeup-source: true

  vcc-supply: true
  iovcc-supply: true

  gain:
    description: Allows setting the sensitivity in the range from 0 to 31.
                 Note that lower values indicate higher sensitivity.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 31

  offset:
    description: Allows setting the edge compensation in the range from 0 to 31.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 31

  offset-x:
    description: Same as offset, but applies only to the horizontal position.
                 Range from 0 to 80, only supported by evervision,ev-ft5726 devices.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 80

  offset-y:
    description: Same as offset, but applies only to the vertical position.
                 Range from 0 to 80, only supported by evervision,ev-ft5726 devices.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 80

  report-rate-hz:
    description: |
                 Allows setting the scan rate in Hertz.
                  M06 supports range from 30 to 140 Hz.
                  M12 supports range from 1 to 255 Hz.
    minimum: 1
    maximum: 255

  threshold:
    description: Allows setting the  "click"-threshold in the range from 0 to 255.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 255

  touchscreen-size-x: true
  touchscreen-size-y: true
  touchscreen-fuzz-x: true
  touchscreen-fuzz-y: true
  touchscreen-inverted-x: true
  touchscreen-inverted-y: true
  touchscreen-swapped-x-y: true
  interrupt-controller: true

additionalProperties: false

required:
  - compatible
  - reg
  - interrupts

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    i2c {
      #address-cells = <1>;
      #size-cells = <0>;
      edt-ft5x06@38 {
        compatible = "edt,edt-ft5406";
        reg = <0x38>;
        interrupt-parent = <&gpio2>;
        interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
        reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
        wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
      };
    };

...