Add touch controller that is connected over an I2C bus.

Signed-off-by: Philippe Schenker <philippe.schen...@toradex.com>

---

Changes in v3:
- Fix commit message

Changes in v2:
- Deleted touchrevolution downstream stuff
- Use generic node name
- Better comment

 arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi | 24 +++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi 
b/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi
index d4dbc4fc1adf..576dec9ff81c 100644
--- a/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi
+++ b/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi
@@ -145,6 +145,21 @@
 &i2c4 {
        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_gpiotouch>;
+               reg = <0x4a>;
+               interrupt-parent = <&gpio1>;
+               interrupts = <9 IRQ_TYPE_EDGE_FALLING>;         /* SODIMM 28 */
+               reset-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;     /* SODIMM 30 */
+               status = "disabled";
+       };
+
        /* M41T0M6 real time clock on carrier board */
        rtc: m41t0m6@68 {
                compatible = "st,m41t0";
@@ -200,3 +215,12 @@
        vmmc-supply = <&reg_3v3>;
        status = "okay";
 };
+
+&iomuxc {
+       pinctrl_gpiotouch: touchgpios {
+               fsl,pins = <
+                       MX7D_PAD_GPIO1_IO09__GPIO1_IO9          0x74
+                       MX7D_PAD_GPIO1_IO10__GPIO1_IO10         0x14
+               >;
+       };
+};
-- 
2.22.0

Reply via email to