ARM: dts: imx6-apalis: Add touchscreens used on Toradex eval boards
authorPhilippe Schenker <philippe.schenker@toradex.com>
Tue, 27 Aug 2019 13:18:28 +0000 (13:18 +0000)
committerShawn Guo <shawnguo@kernel.org>
Wed, 2 Oct 2019 01:09:50 +0000 (09:09 +0800)
This commit adds the touchscreen from Toradex so one can enable it.
It is disabled by default because the pins are also used for PWM<B>,
PWM<C>, aka pwm2, pwm3 which is the standard use for colibri boards.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
arch/arm/boot/dts/imx6q-apalis-eval.dts
arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
arch/arm/boot/dts/imx6q-apalis-ixora.dts

index 9a5d6c9..5e9d844 100644 (file)
 &i2c3 {
        status = "okay";
 
+       /*
+        * Touchscreen is using SODIMM 28/30, also used for PWM<B>, PWM<C>,
+        * aka pwm2, pwm3. so if you enable touchscreen, disable the pwms
+        */
+       touchscreen@4a {
+               compatible = "atmel,maxtouch";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_pcap_1>;
+               reg = <0x4a>;
+               interrupt-parent = <&gpio1>;
+               interrupts = <9 IRQ_TYPE_EDGE_FALLING>;         /* SODIMM 28 */
+               reset-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;     /* SODIMM 30 */
+               status = "disabled";
+       };
+
        /* M41T0M6 real time clock on carrier board */
        rtc_i2c: rtc@68 {
                compatible = "st,m41t0";
        };
 };
 
+&iomuxc {
+       pinctrl_pcap_1: pcap1grp {
+               fsl,pins = <
+                       MX6QDL_PAD_GPIO_9__GPIO1_IO09   0x1b0b0 /* SODIMM 28 */
+                       MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x1b0b0 /* SODIMM 30 */
+               >;
+       };
+
+       pinctrl_mxt_ts: mxttsgrp {
+               fsl,pins = <
+                       MX6QDL_PAD_EIM_CS1__GPIO2_IO24  0x130b0 /* SODIMM 107 */
+                       MX6QDL_PAD_SD2_DAT1__GPIO1_IO14 0x130b0 /* SODIMM 106 */
+               >;
+       };
+};
+
 &ipu1_di0_disp0 {
        remote-endpoint = <&lcd_display_in>;
 };
index 0edd304..4665e15 100644 (file)
 &i2c1 {
        status = "okay";
 
+       /*
+        * Touchscreen is using SODIMM 28/30, also used for PWM<B>, PWM<C>,
+        * aka pwm2, pwm3. so if you enable touchscreen, disable the pwms
+        */
+       touchscreen@4a {
+               compatible = "atmel,maxtouch";
+               reg = <0x4a>;
+               interrupt-parent = <&gpio6>;
+               interrupts = <10 IRQ_TYPE_EDGE_FALLING>;
+               reset-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* SODIMM 13 */
+               status = "disabled";
+       };
+
        pcie-switch@58 {
                compatible = "plx,pex8605";
                reg = <0x58>;
index b94bb68..a3fa04a 100644 (file)
 &i2c1 {
        status = "okay";
 
+       /*
+        * Touchscreen is using SODIMM 28/30, also used for PWM<B>, PWM<C>,
+        * aka pwm2, pwm3. so if you enable touchscreen, disable the pwms
+        */
+       touchscreen@4a {
+               compatible = "atmel,maxtouch";
+               reg = <0x4a>;
+               interrupt-parent = <&gpio6>;
+               interrupts = <10 IRQ_TYPE_EDGE_FALLING>;
+               reset-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* SODIMM 13 */
+               status = "disabled";
+       };
+
        /* M41T0M6 real time clock on carrier board */
        rtc_i2c: rtc@68 {
                compatible = "st,m41t0";
index 302fd6a..5ba49d0 100644 (file)
 &i2c1 {
        status = "okay";
 
+       /*
+        * Touchscreen is using SODIMM 28/30, also used for PWM<B>, PWM<C>,
+        * aka pwm2, pwm3. so if you enable touchscreen, disable the pwms
+        */
+       touchscreen@4a {
+               compatible = "atmel,maxtouch";
+               reg = <0x4a>;
+               interrupt-parent = <&gpio6>;
+               interrupts = <10 IRQ_TYPE_EDGE_FALLING>;
+               reset-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* SODIMM 13 */
+               status = "disabled";
+       };
+
        eeprom@50 {
                compatible = "atmel,24c02";
                reg = <0x50>;