blob: 9fc47b006fd132508b87208751d52f4efb14f4d6 [file] [log] [blame]
Daniel Macka6080262013-06-27 23:42:17 -07001Device tree bindings for TI's ADS7843, ADS7845, ADS7846, ADS7873, TSC2046
2SPI driven touch screen controllers.
3
4The node for this driver must be a child node of a SPI controller, hence
5all mandatory properties described in
6
7 Documentation/devicetree/bindings/spi/spi-bus.txt
8
9must be specified.
10
11Additional required properties:
12
13 compatible Must be one of the following, depending on the
14 model:
15 "ti,tsc2046"
16 "ti,ads7843"
17 "ti,ads7845"
18 "ti,ads7846"
19 "ti,ads7873"
20
21 interrupt-parent
22 interrupts An interrupt node describing the IRQ line the chip's
23 !PENIRQ pin is connected to.
24 vcc-supply A regulator node for the supply voltage.
25
26
27Optional properties:
28
29 ti,vref-delay-usecs vref supply delay in usecs, 0 for
30 external vref (u16).
31 ti,vref-mv The VREF voltage, in millivolts (u16).
Eric Engestrom25da0af2016-04-25 01:24:09 +010032 Set to 0 to use internal references
Alexander Stein299b2072016-02-29 08:06:35 +010033 (ADS7846).
Daniel Macka6080262013-06-27 23:42:17 -070034 ti,keep-vref-on set to keep vref on for differential
35 measurements as well
36 ti,swap-xy swap x and y axis
37 ti,settle-delay-usec Settling time of the analog signals;
38 a function of Vcc and the capacitance
39 on the X/Y drivers. If set to non-zero,
40 two samples are taken with settle_delay
41 us apart, and the second one is used.
42 ~150 uSec with 0.01uF caps (u16).
43 ti,penirq-recheck-delay-usecs If set to non-zero, after samples are
44 taken this delay is applied and penirq
45 is rechecked, to help avoid false
46 events. This value is affected by the
47 material used to build the touch layer
48 (u16).
49 ti,x-plate-ohms Resistance of the X-plate,
50 in Ohms (u16).
51 ti,y-plate-ohms Resistance of the Y-plate,
52 in Ohms (u16).
53 ti,x-min Minimum value on the X axis (u16).
54 ti,y-min Minimum value on the Y axis (u16).
55 ti,x-max Maximum value on the X axis (u16).
56 ti,y-max Minimum value on the Y axis (u16).
57 ti,pressure-min Minimum reported pressure value
58 (threshold) - u16.
59 ti,pressure-max Maximum reported pressure value (u16).
60 ti,debounce-max Max number of additional readings per
61 sample (u16).
62 ti,debounce-tol Tolerance used for filtering (u16).
63 ti,debounce-rep Additional consecutive good readings
64 required after the first two (u16).
65 ti,pendown-gpio-debounce Platform specific debounce time for the
66 pendown-gpio (u32).
67 pendown-gpio GPIO handle describing the pin the !PENIRQ
68 line is connected to.
Dmitry Torokhovabf77a32015-07-16 12:03:39 -070069 wakeup-source use any event on touchscreen as wakeup event.
Sudeep Holla71a01512015-10-21 11:09:59 +010070 (Legacy property support: "linux,wakeup")
Daniel Macka6080262013-06-27 23:42:17 -070071
72
73Example for a TSC2046 chip connected to an McSPI controller of an OMAP SoC::
74
75 spi_controller {
76 tsc2046@0 {
77 reg = <0>; /* CS0 */
78 compatible = "ti,tsc2046";
79 interrupt-parent = <&gpio1>;
80 interrupts = <8 0>; /* BOOT6 / GPIO 8 */
81 spi-max-frequency = <1000000>;
82 pendown-gpio = <&gpio1 8 0>;
83 vcc-supply = <&reg_vcc3>;
84
85 ti,x-min = /bits/ 16 <0>;
86 ti,x-max = /bits/ 16 <8000>;
87 ti,y-min = /bits/ 16 <0>;
88 ti,y-max = /bits/ 16 <4800>;
89 ti,x-plate-ohms = /bits/ 16 <40>;
90 ti,pressure-max = /bits/ 16 <255>;
91
Sudeep Holla71a01512015-10-21 11:09:59 +010092 wakeup-source;
Daniel Macka6080262013-06-27 23:42:17 -070093 };
94 };