Skip to contentSkip to conversation

ARM: dts: am57xx-idk: Add DCAN support

PATCH New Sekhar Nori 2 participants 5 messages Feb 21, 2017 – Apr 4, 2017 Device tree bindings

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: dts: am57xx-idk: Add DCAN support

From: Schuyler Patton <[email protected]>

AM571x IDK and the AM572x IDK use CAN1 interface. This patch enables it for both boards.

Tested on AM572x IDK using cansequence.

[nsekhar at ti.com: move to use DRA7XX_CORE_IOPAD())

---
 arch/arm/boot/dts/am57xx-idk-common.dtsi | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
arch/arm/boot/dts/am57xx-idk-common.dtsi +24 -0
index 814a720d5c3d..abdee2e7a18e 100644
@@ -97,6 +97,22 @@
 	};
 };
 
+&dra7_pmx_core {
+	dcan1_pins_default: dcan1_pins_default {
+		pinctrl-single,pins = <
+			DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0)	/* dcan1_tx */
+			DRA7XX_CORE_IOPAD(0x37d4, PIN_INPUT_PULLUP | MUX_MODE0)		/* dcan1_rx */
+		>;
+	};
+
+	dcan1_pins_sleep: dcan1_pins_sleep {
+		pinctrl-single,pins = <
+			DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP)	/* dcan1_tx.off */
+			DRA7XX_CORE_IOPAD(0x37d4, MUX_MODE15 | PULL_UP)	/* dcan1_rx.off */
+		>;
+	};
+};
+
 &i2c1 {
 	status = "okay";
 	clock-frequency = <400000>;
@@ -387,6 +403,14 @@
 	max-frequency = <96000000>;
 };
 
+&dcan1 {
+	status = "okay";
+	pinctrl-names = "default", "sleep", "active";
+	pinctrl-0 = <&dcan1_pins_sleep>;
+	pinctrl-1 = <&dcan1_pins_sleep>;
+	pinctrl-2 = <&dcan1_pins_default>;
+};
+
 &qspi {
 	status = "okay";
 
Signature · 1 line
2.9.0
#1 lore raw

PATCH 1/1 ARM: dts: am57xx-idk: Add DCAN support

Quoted 5 lines · Sekhar Nori

From: Schuyler Patton <[email protected]>

AM571x IDK and the AM572x IDK use CAN1 interface. This patch enables it for both boards.

Quoted 7 lines

Tested on AM572x IDK using cansequence.

[nsekhar at ti.com: move to use DRA7XX_CORE_IOPAD())

I should have noted that although CAN does function on the IDK with this patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" messages that come up due to lack of workaround for errata i893[1]

Roger does have some patches to workaround that errata. If you want to wait for those patches to be submitted and accepted first, it should be fine as well.

Thanks,
Sekhar

[1] http://www.ti.com/lit/er/sprz436b/sprz436b.pdf

#2 lore raw

PATCH 1/1 ARM: dts: am57xx-idk: Add DCAN support

Quoted 14 lines · Sekhar Nori
Quoted 5 lines · Sekhar Nori

From: Schuyler Patton <[email protected]>

AM571x IDK and the AM572x IDK use CAN1 interface. This patch enables it for both boards.

Quoted 7 lines

Tested on AM572x IDK using cansequence.

[nsekhar at ti.com: move to use DRA7XX_CORE_IOPAD())

Quoted 7 lines

I should have noted that although CAN does function on the IDK with this patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" messages that come up due to lack of workaround for errata i893[1]

Roger does have some patches to workaround that errata. If you want to wait for those patches to be submitted and accepted first, it should be fine as well.

OK let's wait a bit on this then to avoid introducing extra warnings.

Regards,

Tony

Quoted 1 line

[1] http://www.ti.com/lit/er/sprz436b/sprz436b.pdf

#3 lore raw

PATCH 1/1 ARM: dts: am57xx-idk: Add DCAN support

Hi Tony,

Quoted 19 lines · Tony Lindgren
Quoted 18 lines · Sekhar Nori
Quoted 5 lines · Sekhar Nori

From: Schuyler Patton <[email protected]>

AM571x IDK and the AM572x IDK use CAN1 interface. This patch enables it for both boards.

Quoted 7 lines

Tested on AM572x IDK using cansequence.

[nsekhar at ti.com: move to use DRA7XX_CORE_IOPAD())

I should have noted that although CAN does function on the IDK with this patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" messages that come up due to lack of workaround for errata i893[1]

Quoted 5 lines
Quoted 3 lines

Roger does have some patches to workaround that errata. If you want to wait for those patches to be submitted and accepted first, it should be fine as well.

OK let's wait a bit on this then to avoid introducing extra warnings.

Now that Roger's hwmod patches for the DCAN errata are in linux-next, this patch can be applied safely. Let me know if you need me to resend it.

Thanks,
Sekhar

#4 lore raw

PATCH 1/1 ARM: dts: am57xx-idk: Add DCAN support

Quoted 22 lines · Sekhar Nori

Hi Tony,

Quoted 19 lines · Tony Lindgren
Quoted 18 lines · Sekhar Nori
Quoted 5 lines · Sekhar Nori

From: Schuyler Patton <[email protected]>

AM571x IDK and the AM572x IDK use CAN1 interface. This patch enables it for both boards.

Quoted 7 lines

Tested on AM572x IDK using cansequence.

[nsekhar at ti.com: move to use DRA7XX_CORE_IOPAD())

I should have noted that although CAN does function on the IDK with this patch, there are "omap_hwmod: dcan1: _wait_target_disable failed" messages that come up due to lack of workaround for errata i893[1]

Quoted 8 lines
Quoted 5 lines
Quoted 3 lines

Roger does have some patches to workaround that errata. If you want to wait for those patches to be submitted and accepted first, it should be fine as well.

OK let's wait a bit on this then to avoid introducing extra warnings.

Now that Roger's hwmod patches for the DCAN errata are in linux-next, this patch can be applied safely. Let me know if you need me to resend it.

No need to resend, applying into omap-for-v4.12/dt-v2.

Thanks,

Tony