Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 1 | * Toradex Colibri VF50 Touchscreen driver |
| 2 | |
| 3 | Required Properties: |
| 4 | - compatible must be toradex,vf50-touchscreen |
| 5 | - io-channels: adc channels being used by the Colibri VF50 module |
| 6 | IIO ADC for Y-, X-, Y+, X+ connections |
| 7 | - xp-gpios: FET gate driver for input of X+ |
| 8 | - xm-gpios: FET gate driver for input of X- |
| 9 | - yp-gpios: FET gate driver for input of Y+ |
| 10 | - ym-gpios: FET gate driver for input of Y- |
| 11 | - interrupts: pen irq interrupt for touch detection, signal from X plate |
| 12 | - pinctrl-names: "idle", "default" |
| 13 | - pinctrl-0: pinctrl node for pen/touch detection, pinctrl must provide |
| 14 | pull-up resistor on X+, X-. |
| 15 | - pinctrl-1: pinctrl node for X/Y and pressure measurement (ADC) state pinmux |
| 16 | - vf50-ts-min-pressure: pressure level at which to stop measuring X/Y values |
| 17 | |
| 18 | Example: |
| 19 | |
| 20 | touchctrl: vf50_touchctrl { |
| 21 | compatible = "toradex,vf50-touchscreen"; |
| 22 | io-channels = <&adc1 0>,<&adc0 0>, |
| 23 | <&adc0 1>,<&adc1 2>; |
| 24 | xp-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; |
| 25 | xm-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>; |
| 26 | yp-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; |
| 27 | ym-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>; |
| 28 | interrupt-parent = <&gpio0>; |
| 29 | interrupts = <8 IRQ_TYPE_LEVEL_LOW>; |
| 30 | pinctrl-names = "idle","default"; |
| 31 | pinctrl-0 = <&pinctrl_touchctrl_idle>, <&pinctrl_touchctrl_gpios>; |
| 32 | pinctrl-1 = <&pinctrl_touchctrl_default>, <&pinctrl_touchctrl_gpios>; |
| 33 | vf50-ts-min-pressure = <200>; |
| 34 | }; |