devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Philippe Schenker <dev@pschenker.ch>
To: marcel.ziswiler@toradex.com, max.krummenacher@toradex.com,
	stefan@agner.ch, devicetree@vger.kernel.org,
	Rob Herring <robh+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>
Cc: Philippe Schenker <philippe.schenker@toradex.com>,
	Fabio Estevam <festevam@gmail.com>,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	NXP Linux Team <linux-imx@nxp.com>,
	Sascha Hauer <s.hauer@pengutronix.de>
Subject: [PATCH 12/22] ARM: dts: imx6: Add touchscreens used on Toradex eval boards
Date: Tue, 30 Jul 2019 16:46:39 +0200	[thread overview]
Message-ID: <20190730144649.19022-13-dev@pschenker.ch> (raw)
In-Reply-To: <20190730144649.19022-1-dev@pschenker.ch>

From: Philippe Schenker <philippe.schenker@toradex.com>

This commit adds the touchscreens from Toradex so one can enable it.

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

 arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts  | 44 +++++++++++++++++++
 arch/arm/boot/dts/imx6q-apalis-eval.dts       | 19 ++++++++
 arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts | 19 ++++++++
 arch/arm/boot/dts/imx6q-apalis-ixora.dts      | 19 ++++++++
 4 files changed, 101 insertions(+)

diff --git a/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts b/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
index 9a5d6c94cca4..63d4f9ca9ad8 100644
--- a/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
+++ b/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
@@ -168,6 +168,34 @@
 &i2c3 {
 	status = "okay";
 
+	/* Atmel maxtouch controller */
+	atmel_mxt_ts: atmel_mxt_ts@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";
+	};
+
+	/*
+	 * the PCAPs use SODIMM 28/30, also used for PWM<B>, PWM<C>, aka pwm1,
+	 * pwm4. So if you enable one of the PCAP controllers disable the pwms.
+	 */
+	pcap: pcap@10 {
+		/* TouchRevolution Fusion 7 and 10 multi-touch controller */
+		compatible = "touchrevolution,fusion-f0710a";
+		reg = <0x10>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_pcap_1>;
+		gpios = <&gpio1  9 0 /* SODIMM 28, Pen down interrupt */
+			 &gpio2 10 0 /* SODIMM 30, Reset */
+			>;
+		status = "disabled";
+	};
+
 	/* M41T0M6 real time clock on carrier board */
 	rtc_i2c: rtc@68 {
 		compatible = "st,m41t0";
@@ -175,6 +203,22 @@
 	};
 };
 
+&iomuxc {
+	pinctrl_pcap_1: pcap-1 {
+		fsl,pins = <
+			MX6QDL_PAD_GPIO_9__GPIO1_IO09	0x1b0b0 /* SODIMM 28 */
+			MX6QDL_PAD_SD4_DAT2__GPIO2_IO10	0x1b0b0 /* SODIMM 30 */
+		>;
+	};
+
+	pinctrl_mxt_ts: mxt-ts {
+		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>;
 };
diff --git a/arch/arm/boot/dts/imx6q-apalis-eval.dts b/arch/arm/boot/dts/imx6q-apalis-eval.dts
index 0edd3043d9c1..60ec5e89d215 100644
--- a/arch/arm/boot/dts/imx6q-apalis-eval.dts
+++ b/arch/arm/boot/dts/imx6q-apalis-eval.dts
@@ -167,6 +167,25 @@
 &i2c1 {
 	status = "okay";
 
+	/* Atmel maxtouch controller */
+	atmel_mxt_ts: atmel_mxt_ts@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";
+	};
+
+	pcap@10 {
+		/* TouchRevolution Fusion 7 and 10 multi-touch controller */
+		compatible = "touchrevolution,fusion-f0710a";
+		reg = <0x10>;
+		gpios = <&gpio6 10 0 /* MXM3 11, Pen down interrupt */
+			 &gpio6  9 0 /* MXM3 13, Reset */
+			>;
+	};
+
 	pcie-switch@58 {
 		compatible = "plx,pex8605";
 		reg = <0x58>;
diff --git a/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts b/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
index b94bb687be6b..98a8ae20b1f2 100644
--- a/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
+++ b/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
@@ -172,6 +172,25 @@
 &i2c1 {
 	status = "okay";
 
+	/* Atmel maxtouch controller */
+	atmel_mxt_ts: atmel_mxt_ts@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";
+	};
+
+	pcap@10 {
+		/* TouchRevolution Fusion 7 and 10 multi-touch controller */
+		compatible = "touchrevolution,fusion-f0710a";
+		reg = <0x10>;
+		gpios = <&gpio6 10 GPIO_ACTIVE_HIGH /* MXM3 11, Pen down interrupt */
+			 &gpio6  9 GPIO_ACTIVE_HIGH /* MXM3 13, Reset */
+			>;
+	};
+
 	/* M41T0M6 real time clock on carrier board */
 	rtc_i2c: rtc@68 {
 		compatible = "st,m41t0";
diff --git a/arch/arm/boot/dts/imx6q-apalis-ixora.dts b/arch/arm/boot/dts/imx6q-apalis-ixora.dts
index 302fd6adc8a7..67f6b36e6f94 100644
--- a/arch/arm/boot/dts/imx6q-apalis-ixora.dts
+++ b/arch/arm/boot/dts/imx6q-apalis-ixora.dts
@@ -171,6 +171,25 @@
 &i2c1 {
 	status = "okay";
 
+	/* Atmel maxtouch controller */
+	atmel_mxt_ts: atmel_mxt_ts@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";
+	};
+
+	pcap@10 {
+		/* TouchRevolution Fusion 7 and 10 multi-touch controller */
+		compatible = "touchrevolution,fusion-f0710a";
+		reg = <0x10>;
+		gpios = <&gpio6 10 GPIO_ACTIVE_HIGH /* MXM3 11, Pen down interrupt */
+			 &gpio6  9 GPIO_ACTIVE_HIGH /* MXM3 13, Reset */
+			>;
+	};
+
 	eeprom@50 {
 		compatible = "atmel,24c02";
 		reg = <0x50>;
-- 
2.22.0

  parent reply	other threads:[~2019-07-30 14:46 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-30 14:46 [PATCH 00/22] This patchset holds some common changes that were never upstreamed Philippe Schenker
2019-07-30 14:46 ` [PATCH 01/22] ARM: dts: imx7-colibri: make sure module supplies are always on Philippe Schenker
2019-07-30 14:46 ` [PATCH 02/22] ARM: dts: imx7-colibri: disable HS400 Philippe Schenker
2019-07-30 14:46 ` [PATCH 03/22] ARM: dts: imx7-colibri: prepare module device tree for FlexCAN Philippe Schenker
2019-07-30 14:46 ` [PATCH 04/22] ARM: dts: imx7-colibri: Add sleep mode to ethernet Philippe Schenker
2019-07-30 14:46 ` [PATCH 05/22] ARM: dts: add recovery for I2C for iMX7 Philippe Schenker
2019-07-30 14:46 ` [PATCH 06/22] ARM: dts: imx7-colibri: add GPIO wakeup key Philippe Schenker
2019-07-30 14:46 ` [PATCH 07/22] ARM: dts: imx7-colibri: fix 1.8V/UHS support Philippe Schenker
2019-07-30 14:46 ` [PATCH 08/22] ARM: dts: imx7-colibri: Add touch controllers Philippe Schenker
2019-07-30 14:46 ` [PATCH 09/22] ARM: dts: imx6qdl-colibri: add phy to fec Philippe Schenker
2019-07-30 14:46 ` [PATCH 10/22] ARM: dts: imx6qdl-colibri: Add missing pin declaration in iomuxc Philippe Schenker
2019-07-30 14:46 ` [PATCH 11/22] ARM: dts: imx6: Add sleep state to can interfaces Philippe Schenker
2019-07-31  7:14   ` Michal Vokáč
2019-07-31 11:13     ` Philippe Schenker
2019-07-30 14:46 ` Philippe Schenker [this message]
2019-07-30 20:46   ` [PATCH 12/22] ARM: dts: imx6: Add touchscreens used on Toradex eval boards Fabio Estevam
2019-07-31  6:43     ` Philippe Schenker
2019-07-31  6:54       ` Michal Vokáč
2019-07-30 14:46 ` [PATCH 13/22] ARM: dts: colibri-imx6: Add missing pinmuxing to Toradex eval board Philippe Schenker
2019-07-31  7:09   ` Michal Vokáč
2019-07-30 14:46 ` [PATCH 14/22] ARM: dts: apalis-imx6: Add some example I2C devices Philippe Schenker
2019-07-30 20:53   ` Fabio Estevam
2019-07-31 11:36     ` Philippe Schenker
2019-07-30 14:46 ` [PATCH 15/22] ARM: dts: apalis-imx6: Add some optional " Philippe Schenker
2019-07-30 20:43   ` Fabio Estevam
2019-07-31 11:37     ` Philippe Schenker
2019-07-30 14:46 ` [PATCH 16/22] ARM: dts: imx6ull-colibri: Add sleep mode to fec Philippe Schenker
2019-07-30 14:46 ` [PATCH 17/22] ARM: dts: imx6ull-colibri: reduce v_batt current in power off Philippe Schenker
2019-07-30 14:46 ` [PATCH 18/22] ARM: dts: imx6ull-colibri: Add watchdog Philippe Schenker
2019-07-30 14:46 ` [PATCH 19/22] ARM: dts: imx6ull: improve can templates Philippe Schenker
2019-07-30 14:46 ` [PATCH 20/22] ARM: dts: imx6ull-colibri: Add general wakeup key used on Colibri Philippe Schenker
2019-07-30 14:46 ` [PATCH 21/22] ARM: dts: imx6/7-colibri: switch dr_mode to otg Philippe Schenker
2019-07-30 14:46 ` [PATCH 22/22] ARM: dts: imx6ull-colibri: Add touchscreens used with Eval Board Philippe Schenker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190730144649.19022-13-dev@pschenker.ch \
    --to=dev@pschenker.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcel.ziswiler@toradex.com \
    --cc=mark.rutland@arm.com \
    --cc=max.krummenacher@toradex.com \
    --cc=philippe.schenker@toradex.com \
    --cc=robh+dt@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=stefan@agner.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).