ARM: dts: vf500-colibri: Add device tree node for touchscreen support
authorSanchayan Maity <maitysanchayan@gmail.com>
Tue, 1 Sep 2015 12:36:53 +0000 (18:06 +0530)
committerShawn Guo <shawnguo@kernel.org>
Mon, 19 Oct 2015 14:45:19 +0000 (22:45 +0800)
Add device tree node for touchscreen support on Colibri VF50. The
touchscreen functionality on VF50 uses the ADC channels of Vybrid
and some GPIOs. Also add pinctrl nodes for proper pinmux.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/vf500-colibri-eval-v3.dts
arch/arm/boot/dts/vf500-colibri.dtsi

index 7fc782c4fc52894d68b555c914e4a1d013b83f59..c3173fc9e8336d97af3d60570b2d5eab7c6cad7f 100644 (file)
@@ -15,3 +15,8 @@
        model = "Toradex Colibri VF50 on Colibri Evaluation Board";
        compatible = "toradex,vf500-colibri_vf50-on-eval", "toradex,vf500-colibri_vf50", "fsl,vf500";
 };
+
+&touchscreen {
+       vf50-ts-min-pressure = <200>;
+       status = "okay";
+};
index cee34a32f25be2cf8bd6219e0a35871d5d7bf34e..84f091d1fcf29bb3c24ce7c8f9e8c9163f1169c1 100644 (file)
        memory {
                reg = <0x80000000 0x8000000>;
        };
+
+       touchscreen: vf50-touchscreen {
+               compatible = "toradex,vf50-touchscreen";
+               io-channels = <&adc1 0>,<&adc0 0>,
+                               <&adc0 1>,<&adc1 2>;
+               xp-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
+               xm-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>;
+               yp-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
+               ym-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
+               interrupt-parent = <&gpio0>;
+               interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
+               pinctrl-names = "idle","default","gpios";
+               pinctrl-0 = <&pinctrl_touchctrl_idle>;
+               pinctrl-1 = <&pinctrl_touchctrl_default>;
+               pinctrl-2 = <&pinctrl_touchctrl_gpios>;
+               vf50-ts-min-pressure = <200>;
+               status = "disabled";
+       };
+};
+
+&iomuxc {
+       vf610-colibri {
+               pinctrl_touchctrl_idle: touchctrl_idle {
+                       fsl,pins = <
+                               VF610_PAD_PTA18__GPIO_8         0x006d
+                               VF610_PAD_PTA19__GPIO_9         0x006c
+                               >;
+               };
+
+               pinctrl_touchctrl_default: touchctrl_default {
+                       fsl,pins = <
+                               VF610_PAD_PTA18__ADC0_SE0       0x0040
+                               VF610_PAD_PTA19__ADC0_SE1       0x0040
+                               VF610_PAD_PTA16__ADC1_SE0       0x0040
+                               VF610_PAD_PTB2__ADC1_SE2        0x0040
+                               >;
+               };
+
+               pinctrl_touchctrl_gpios: touchctrl_gpios {
+                       fsl,pins = <
+                               VF610_PAD_PTA23__GPIO_13        0x22e9
+                               VF610_PAD_PTB23__GPIO_93        0x22e9
+                               VF610_PAD_PTA22__GPIO_12        0x22e9
+                               VF610_PAD_PTA11__GPIO_4         0x22e9
+                               >;
+               };
+       };
 };