Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / input / touchscreen / colibri-vf50-ts.txt
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         };