diff options
author | Dong Aisheng <b29396@freescale.com> | 2014-06-19 07:16:51 -0400 |
---|---|---|
committer | Dong Aisheng <b29396@freescale.com> | 2014-06-20 02:00:08 -0400 |
commit | 4d7797bf66c59204534d8dcf53d632293965debe (patch) | |
tree | b8bce65295ce4eb1d94112069c0fd1d454a2b907 /arch/arm/boot | |
parent | 601c6a478be4bb7fcecd1078e379958305882024 (diff) |
ENGR00319455-3 dts: imx6sx-sdb: add canfd support
Introduce a new dtb imx6sx-sdb-canfd.dtb due to pin conflict with flexcan.
Signed-off-by: Dong Aisheng <b29396@freescale.com>
Diffstat (limited to 'arch/arm/boot')
-rw-r--r-- | arch/arm/boot/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx6sx-sdb-canfd.dts | 35 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx6sx.dtsi | 38 |
3 files changed, 74 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index e37e1a092912..efc8bb828ae5 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -152,6 +152,7 @@ dtb-$(CONFIG_ARCH_MXC) += \ | |||
152 | imx6sx-sdb-sai.dtb \ | 152 | imx6sx-sdb-sai.dtb \ |
153 | imx6sx-sdb-emmc.dtb \ | 153 | imx6sx-sdb-emmc.dtb \ |
154 | imx6sx-sdb-m4.dtb \ | 154 | imx6sx-sdb-m4.dtb \ |
155 | imx6sx-sdb-canfd.dtb \ | ||
155 | vf610-twr.dtb | 156 | vf610-twr.dtb |
156 | dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \ | 157 | dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \ |
157 | imx23-olinuxino.dtb \ | 158 | imx23-olinuxino.dtb \ |
diff --git a/arch/arm/boot/dts/imx6sx-sdb-canfd.dts b/arch/arm/boot/dts/imx6sx-sdb-canfd.dts new file mode 100644 index 000000000000..496f24a40162 --- /dev/null +++ b/arch/arm/boot/dts/imx6sx-sdb-canfd.dts | |||
@@ -0,0 +1,35 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2014 Freescale Semiconductor, Inc. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | #include "imx6sx-sdb.dts" | ||
10 | |||
11 | /* | ||
12 | * flexcan and canfd are sharing the same pads, so disable flexcan to | ||
13 | * enable canfd. | ||
14 | * There's a trick here that the tranceiver configuration gpios are still | ||
15 | * got from the flexcan node since they're using the same tranceiver. | ||
16 | */ | ||
17 | &flexcan1 { | ||
18 | status = "disabled"; | ||
19 | }; | ||
20 | |||
21 | &flexcan2 { | ||
22 | status = "disabled"; | ||
23 | }; | ||
24 | |||
25 | &canfd1 { | ||
26 | pinctrl-names = "default"; | ||
27 | pinctrl-0 = <&pinctrl_canfd1_1>; | ||
28 | status = "okay"; | ||
29 | }; | ||
30 | |||
31 | &canfd2 { | ||
32 | pinctrl-names = "default"; | ||
33 | pinctrl-0 = <&pinctrl_canfd2_1>; | ||
34 | status = "okay"; | ||
35 | }; | ||
diff --git a/arch/arm/boot/dts/imx6sx.dtsi b/arch/arm/boot/dts/imx6sx.dtsi index bfbc2b7647fe..b3863694bc94 100644 --- a/arch/arm/boot/dts/imx6sx.dtsi +++ b/arch/arm/boot/dts/imx6sx.dtsi | |||
@@ -673,6 +673,26 @@ | |||
673 | }; | 673 | }; |
674 | }; | 674 | }; |
675 | 675 | ||
676 | canfd1: canfd@020e8000 { | ||
677 | compatible = "bosch,m_can"; | ||
678 | reg = <0x020e8000 0x4000>, <0x02298000 0x4000>; | ||
679 | reg-names = "canfd", "message_ram"; | ||
680 | interrupts = <0 114 0x04>; | ||
681 | clocks = <&clks IMX6SX_CLK_CANFD>; | ||
682 | mram-cfg = <0x0 0 0 32 32 32 0 1>; | ||
683 | status = "disabled"; | ||
684 | }; | ||
685 | |||
686 | canfd2: canfd@020f0000 { | ||
687 | compatible = "bosch,m_can"; | ||
688 | reg = <0x020f0000 0x4000>, <0x02298000 0x4000>; | ||
689 | reg-names = "canfd", "message_ram"; | ||
690 | interrupts = <0 115 0x04>; | ||
691 | clocks = <&clks IMX6SX_CLK_CANFD>; | ||
692 | mram-cfg = <0x2000 0 0 32 32 32 0 1>; | ||
693 | status = "disabled"; | ||
694 | }; | ||
695 | |||
676 | pwm1: pwm@02080000 { | 696 | pwm1: pwm@02080000 { |
677 | #pwm-cells = <2>; | 697 | #pwm-cells = <2>; |
678 | compatible = "fsl,imx6sx-pwm", "fsl,imx27-pwm"; | 698 | compatible = "fsl,imx6sx-pwm", "fsl,imx27-pwm"; |
@@ -1222,6 +1242,24 @@ | |||
1222 | }; | 1242 | }; |
1223 | }; | 1243 | }; |
1224 | 1244 | ||
1245 | canfd1 { | ||
1246 | pinctrl_canfd1_1: canfd1grp-1 { | ||
1247 | fsl,pins = < | ||
1248 | MX6SX_PAD_QSPI1B_DQS__CANFD_TX1 0x1b0b0 | ||
1249 | MX6SX_PAD_QSPI1A_SS1_B__CANFD_RX1 0x1b0b0 | ||
1250 | >; | ||
1251 | }; | ||
1252 | }; | ||
1253 | |||
1254 | canfd2 { | ||
1255 | pinctrl_canfd2_1: canfd2grp-1 { | ||
1256 | fsl,pins = < | ||
1257 | MX6SX_PAD_QSPI1B_SS1_B__CANFD_RX2 0x1b0b0 | ||
1258 | MX6SX_PAD_QSPI1A_DQS__CANFD_TX2 0x1b0b0 | ||
1259 | >; | ||
1260 | }; | ||
1261 | }; | ||
1262 | |||
1225 | csi { | 1263 | csi { |
1226 | pinctrl_csi_0: csigrp-0 { | 1264 | pinctrl_csi_0: csigrp-0 { |
1227 | fsl,pins = < | 1265 | fsl,pins = < |