Skip to content

Commit

Permalink
ARM: dts: cm-t3x: add NAND support
Browse files Browse the repository at this point in the history
CM-T3517, CM-T3530 and CM-T3730 features NAND storage chip connected to
GPMC bus.

Add GPMC DT entry into the root DT file omap3-cm-t3x.dtsi, common for
all three modules.

NAND timings are calculated to be safe for CM-T3x devices as it works
now in non DT boot (in this case the timings are updated by U-Boot).

Update GPMC ranges in boards DT files to include all connected devices.

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Acked-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
  • Loading branch information
Dmitry Lifshitz authored and Tony Lindgren committed Jan 13, 2015
1 parent 7a03f2c commit df73b7f
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 10 deletions.
58 changes: 58 additions & 0 deletions arch/arm/boot/dts/omap3-cm-t3x.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -259,3 +259,61 @@
pinctrl-names = "default";
pinctrl-0 = <&mcbsp2_pins>;
};

&gpmc {
ranges = <0 0 0x00000000 0x01000000>;

nand@0,0 {
reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
nand-bus-width = <8>;
gpmc,device-width = <1>;
ti,nand-ecc-opt = "sw";

gpmc,cs-on-ns = <0>;
gpmc,cs-rd-off-ns = <120>;
gpmc,cs-wr-off-ns = <120>;

gpmc,adv-on-ns = <0>;
gpmc,adv-rd-off-ns = <120>;
gpmc,adv-wr-off-ns = <120>;

gpmc,we-on-ns = <6>;
gpmc,we-off-ns = <90>;

gpmc,oe-on-ns = <6>;
gpmc,oe-off-ns = <90>;

gpmc,page-burst-access-ns = <6>;
gpmc,access-ns = <72>;
gpmc,cycle2cycle-delay-ns = <60>;

gpmc,rd-cycle-ns = <120>;
gpmc,wr-cycle-ns = <120>;
gpmc,wr-access-ns = <186>;
gpmc,wr-data-mux-bus-ns = <90>;

#address-cells = <1>;
#size-cells = <1>;

partition@0 {
label = "xloader";
reg = <0 0x80000>;
};
partition@0x80000 {
label = "uboot";
reg = <0x80000 0x1e0000>;
};
partition@0x260000 {
label = "uboot environment";
reg = <0x260000 0x40000>;
};
partition@0x2a0000 {
label = "linux";
reg = <0x2a0000 0x400000>;
};
partition@0x6a0000 {
label = "rootfs";
reg = <0x6a0000 0x1f880000>;
};
};
};
3 changes: 2 additions & 1 deletion arch/arm/boot/dts/omap3-cm-t3x30.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,8 @@
#include "omap-gpmc-smsc911x.dtsi"

&gpmc {
ranges = <5 0 0x2c000000 0x01000000>;
ranges = <5 0 0x2c000000 0x01000000>, /* CM-T3x30 SMSC9x Eth */
<0 0 0x00000000 0x01000000>; /* CM-T3x NAND */

smsc1: ethernet@gpmc {
compatible = "smsc,lan9221", "smsc,lan9115";
Expand Down
4 changes: 4 additions & 0 deletions arch/arm/boot/dts/omap3-sbc-t3517.dts
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,7 @@
};
};

&gpmc {
ranges = <4 0 0x2d000000 0x01000000>, /* SB-T35 SMSC9x Eth */
<0 0 0x00000000 0x01000000>; /* CM-T3x NAND */
};
10 changes: 3 additions & 7 deletions arch/arm/boot/dts/omap3-sbc-t3530.dts
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,10 @@
};
};

/*
* The following ranges correspond to SMSC9x eth chips on CM-T3530 CoM and
* SB-T35 baseboard respectively.
* This setting includes both chips in SBC-T3530 board device tree.
*/
&gpmc {
ranges = <5 0 0x2c000000 0x01000000>,
<4 0 0x2d000000 0x01000000>;
ranges = <5 0 0x2c000000 0x01000000>, /* CM-T3x30 SMSC9x Eth */
<4 0 0x2d000000 0x01000000>, /* SB-T35 SMSC9x Eth */
<0 0 0x00000000 0x01000000>; /* CM-T3x NAND */
};

&mmc1 {
Expand Down
5 changes: 3 additions & 2 deletions arch/arm/boot/dts/omap3-sbc-t3730.dts
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,9 @@
};

&gpmc {
ranges = <5 0 0x2c000000 0x01000000>,
<4 0 0x2d000000 0x01000000>;
ranges = <5 0 0x2c000000 0x01000000>, /* CM-T3x30 SMSC9x Eth */
<4 0 0x2d000000 0x01000000>, /* SB-T35 SMSC9x Eth */
<0 0 0x00000000 0x01000000>; /* CM-T3x NAND */
};

&dss {
Expand Down

0 comments on commit df73b7f

Please sign in to comment.