18c2ecf20Sopenharmony_ci* Cypress cyttsp touchscreen controller 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciRequired properties: 48c2ecf20Sopenharmony_ci - compatible : must be "cypress,cyttsp-i2c" or "cypress,cyttsp-spi" 58c2ecf20Sopenharmony_ci - reg : Device I2C address or SPI chip select number 68c2ecf20Sopenharmony_ci - spi-max-frequency : Maximum SPI clocking speed of the device (for cyttsp-spi) 78c2ecf20Sopenharmony_ci - interrupts : (gpio) interrupt to which the chip is connected 88c2ecf20Sopenharmony_ci (see interrupt binding[0]). 98c2ecf20Sopenharmony_ci - bootloader-key : the 8-byte bootloader key that is required to switch 108c2ecf20Sopenharmony_ci the chip from bootloader mode (default mode) to 118c2ecf20Sopenharmony_ci application mode. 128c2ecf20Sopenharmony_ci This property has to be specified as an array of 8 138c2ecf20Sopenharmony_ci '/bits/ 8' values. 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciOptional properties: 168c2ecf20Sopenharmony_ci - reset-gpios : the reset gpio the chip is connected to 178c2ecf20Sopenharmony_ci (see GPIO binding[1] for more details). 188c2ecf20Sopenharmony_ci - touchscreen-size-x : horizontal resolution of touchscreen (in pixels) 198c2ecf20Sopenharmony_ci - touchscreen-size-y : vertical resolution of touchscreen (in pixels) 208c2ecf20Sopenharmony_ci - touchscreen-fuzz-x : horizontal noise value of the absolute input device 218c2ecf20Sopenharmony_ci (in pixels) 228c2ecf20Sopenharmony_ci - touchscreen-fuzz-y : vertical noise value of the absolute input device 238c2ecf20Sopenharmony_ci (in pixels) 248c2ecf20Sopenharmony_ci - active-distance : the distance in pixels beyond which a touch must move 258c2ecf20Sopenharmony_ci before movement is detected and reported by the device. 268c2ecf20Sopenharmony_ci Valid values: 0-15. 278c2ecf20Sopenharmony_ci - active-interval-ms : the minimum period in ms between consecutive 288c2ecf20Sopenharmony_ci scanning/processing cycles when the chip is in active mode. 298c2ecf20Sopenharmony_ci Valid values: 0-255. 308c2ecf20Sopenharmony_ci - lowpower-interval-ms : the minimum period in ms between consecutive 318c2ecf20Sopenharmony_ci scanning/processing cycles when the chip is in low-power mode. 328c2ecf20Sopenharmony_ci Valid values: 0-2550 338c2ecf20Sopenharmony_ci - touch-timeout-ms : minimum time in ms spent in the active power state while no 348c2ecf20Sopenharmony_ci touches are detected before entering low-power mode. 358c2ecf20Sopenharmony_ci Valid values: 0-2550 368c2ecf20Sopenharmony_ci - use-handshake : enable register-based handshake (boolean). This should 378c2ecf20Sopenharmony_ci only be used if the chip is configured to use 'blocking 388c2ecf20Sopenharmony_ci communication with timeout' (in this case the device 398c2ecf20Sopenharmony_ci generates an interrupt at the end of every 408c2ecf20Sopenharmony_ci scanning/processing cycle). 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt 438c2ecf20Sopenharmony_ci[1]: Documentation/devicetree/bindings/gpio/gpio.txt 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ciExample: 468c2ecf20Sopenharmony_ci &i2c1 { 478c2ecf20Sopenharmony_ci /* ... */ 488c2ecf20Sopenharmony_ci cyttsp@a { 498c2ecf20Sopenharmony_ci compatible = "cypress,cyttsp-i2c"; 508c2ecf20Sopenharmony_ci reg = <0xa>; 518c2ecf20Sopenharmony_ci interrupt-parent = <&gpio0>; 528c2ecf20Sopenharmony_ci interrupts = <28 0>; 538c2ecf20Sopenharmony_ci reset-gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci touchscreen-size-x = <800>; 568c2ecf20Sopenharmony_ci touchscreen-size-y = <480>; 578c2ecf20Sopenharmony_ci touchscreen-fuzz-x = <4>; 588c2ecf20Sopenharmony_ci touchscreen-fuzz-y = <7>; 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci bootloader-key = /bits/ 8 <0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08>; 618c2ecf20Sopenharmony_ci active-distance = <8>; 628c2ecf20Sopenharmony_ci active-interval-ms = <0>; 638c2ecf20Sopenharmony_ci lowpower-interval-ms = <200>; 648c2ecf20Sopenharmony_ci touch-timeout-ms = <100>; 658c2ecf20Sopenharmony_ci }; 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci /* ... */ 688c2ecf20Sopenharmony_ci }; 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci &mcspi1 { 718c2ecf20Sopenharmony_ci /* ... */ 728c2ecf20Sopenharmony_ci cyttsp@0 { 738c2ecf20Sopenharmony_ci compatible = "cypress,cyttsp-spi"; 748c2ecf20Sopenharmony_ci spi-max-frequency = <6000000>; 758c2ecf20Sopenharmony_ci reg = <0>; 768c2ecf20Sopenharmony_ci interrupt-parent = <&gpio0>; 778c2ecf20Sopenharmony_ci interrupts = <28 0>; 788c2ecf20Sopenharmony_ci reset-gpios = <&gpio3 4 GPIO_ACTIVE_LOW>; 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_ci touchscreen-size-x = <800>; 818c2ecf20Sopenharmony_ci touchscreen-size-y = <480>; 828c2ecf20Sopenharmony_ci touchscreen-fuzz-x = <4>; 838c2ecf20Sopenharmony_ci touchscreen-fuzz-y = <7>; 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ci bootloader-key = /bits/ 8 <0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08>; 868c2ecf20Sopenharmony_ci active-distance = <8>; 878c2ecf20Sopenharmony_ci active-interval-ms = <0>; 888c2ecf20Sopenharmony_ci lowpower-interval-ms = <200>; 898c2ecf20Sopenharmony_ci touch-timeout-ms = <100>; 908c2ecf20Sopenharmony_ci }; 918c2ecf20Sopenharmony_ci 928c2ecf20Sopenharmony_ci /* ... */ 938c2ecf20Sopenharmony_ci }; 94