Commit | Line | Data |
---|---|---|
707b61bb OS |
1 | * Cypress cyttsp touchscreen controller |
2 | ||
3 | Required properties: | |
4 | - compatible : must be "cypress,cyttsp-i2c" or "cypress,cyttsp-spi" | |
5 | - reg : Device I2C address or SPI chip select number | |
6 | - spi-max-frequency : Maximum SPI clocking speed of the device (for cyttsp-spi) | |
7 | - interrupt-parent : the phandle for the gpio controller | |
8 | (see interrupt binding[0]). | |
9 | - interrupts : (gpio) interrupt to which the chip is connected | |
10 | (see interrupt binding[0]). | |
11 | - bootloader-key : the 8-byte bootloader key that is required to switch | |
12 | the chip from bootloader mode (default mode) to | |
13 | application mode. | |
14 | This property has to be specified as an array of 8 | |
15 | '/bits/ 8' values. | |
16 | ||
17 | Optional properties: | |
18 | - reset-gpios : the reset gpio the chip is connected to | |
19 | (see GPIO binding[1] for more details). | |
20 | - touchscreen-size-x : horizontal resolution of touchscreen (in pixels) | |
21 | - touchscreen-size-y : vertical resolution of touchscreen (in pixels) | |
22 | - touchscreen-fuzz-x : horizontal noise value of the absolute input device | |
23 | (in pixels) | |
24 | - touchscreen-fuzz-y : vertical noise value of the absolute input device | |
25 | (in pixels) | |
26 | - active-distance : the distance in pixels beyond which a touch must move | |
27 | before movement is detected and reported by the device. | |
28 | Valid values: 0-15. | |
29 | - active-interval-ms : the minimum period in ms between consecutive | |
30 | scanning/processing cycles when the chip is in active mode. | |
31 | Valid values: 0-255. | |
32 | - lowpower-interval-ms : the minimum period in ms between consecutive | |
33 | scanning/processing cycles when the chip is in low-power mode. | |
34 | Valid values: 0-2550 | |
35 | - touch-timeout-ms : minimum time in ms spent in the active power state while no | |
36 | touches are detected before entering low-power mode. | |
37 | Valid values: 0-2550 | |
38 | - use-handshake : enable register-based handshake (boolean). This should | |
39 | only be used if the chip is configured to use 'blocking | |
40 | communication with timeout' (in this case the device | |
41 | generates an interrupt at the end of every | |
42 | scanning/processing cycle). | |
43 | ||
44 | [0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt | |
45 | [1]: Documentation/devicetree/bindings/gpio/gpio.txt | |
46 | ||
47 | Example: | |
48 | &i2c1 { | |
49 | /* ... */ | |
50 | cyttsp@a { | |
51 | compatible = "cypress,cyttsp-i2c"; | |
52 | reg = <0xa>; | |
53 | interrupt-parent = <&gpio0>; | |
54 | interrupts = <28 0>; | |
55 | reset-gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; | |
56 | ||
57 | touchscreen-size-x = <800>; | |
58 | touchscreen-size-y = <480>; | |
59 | touchscreen-fuzz-x = <4>; | |
60 | touchscreen-fuzz-y = <7>; | |
61 | ||
62 | bootloader-key = /bits/ 8 <0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08>; | |
63 | active-distance = <8>; | |
64 | active-interval-ms = <0>; | |
65 | lowpower-interval-ms = <200>; | |
66 | touch-timeout-ms = <100>; | |
67 | }; | |
68 | ||
69 | /* ... */ | |
70 | }; | |
71 | ||
72 | &mcspi1 { | |
73 | /* ... */ | |
74 | cyttsp@0 { | |
75 | compatible = "cypress,cyttsp-spi"; | |
76 | spi-max-frequency = <6000000>; | |
77 | reg = <0>; | |
78 | interrupt-parent = <&gpio0>; | |
79 | interrupts = <28 0>; | |
80 | reset-gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; | |
81 | ||
82 | touchscreen-size-x = <800>; | |
83 | touchscreen-size-y = <480>; | |
84 | touchscreen-fuzz-x = <4>; | |
85 | touchscreen-fuzz-y = <7>; | |
86 | ||
87 | bootloader-key = /bits/ 8 <0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08>; | |
88 | active-distance = <8>; | |
89 | active-interval-ms = <0>; | |
90 | lowpower-interval-ms = <200>; | |
91 | touch-timeout-ms = <100>; | |
92 | }; | |
93 | ||
94 | /* ... */ | |
95 | }; |