Patchwork [U-Boot,3/3] ARM: at91: change nand flash table

login
register
mail settings
Submitter Bo Shen
Date Feb. 20, 2013, 10:16 a.m.
Message ID <1361355385-13135-4-git-send-email-voice.shen@atmel.com>
Download mbox | patch
Permalink /patch/222033/
State Accepted
Delegated to: Andreas Bießmann
Headers show

Comments

Bo Shen - Feb. 20, 2013, 10:16 a.m.
Change nand flash partition tablke according to www.at91.com/linux4sam

more information: http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted#Linux4SAM_NandFlash_demo_Memory

Signed-off-by: Bo Shen <voice.shen@atmel.com>
---
 include/configs/at91sam9260ek.h    |   18 +++++++++---------
 include/configs/at91sam9261ek.h    |   19 +++++++++----------
 include/configs/at91sam9263ek.h    |   17 +++++++++--------
 include/configs/at91sam9m10g45ek.h |   16 ++++++++--------
 include/configs/at91sam9x5ek.h     |   11 ++++++-----
 5 files changed, 41 insertions(+), 40 deletions(-)
Tom Rini - Feb. 21, 2013, 2:05 a.m.
On Wed, Feb 20, 2013 at 06:16:25PM +0800, Bo Shen wrote:

> Change nand flash partition tablke according to www.at91.com/linux4sam
> 
> more information: http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted#Linux4SAM_NandFlash_demo_Memory
> 
> Signed-off-by: Bo Shen <voice.shen@atmel.com>

Question.  Is there a reason to not being doing the MTDIDS / MTDPARTS
and adding CONFIG_CMD_MTDPARTS ?  Doing that should also "just" enable
the nand info to be passed in the device tree.
Bo Shen - Feb. 21, 2013, 6:58 a.m.
Hi Tom,

On 2/21/2013 10:05, Tom Rini wrote:
> On Wed, Feb 20, 2013 at 06:16:25PM +0800, Bo Shen wrote:
>
>> Change nand flash partition tablke according to www.at91.com/linux4sam
>>
>> more information: http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted#Linux4SAM_NandFlash_demo_Memory
>>
>> Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
> Question.  Is there a reason to not being doing the MTDIDS / MTDPARTS
> and adding CONFIG_CMD_MTDPARTS ?

Yes, MTDIDS/MTDPARTS is missing, however, we can set mtdids and mtdpart 
environment to use mtdparts command. (Maybe this is not a good idea, 
will consider to add MTDIDS / MTDPARTS later, not in this patch series.)

> Doing that should also "just" enable
> the nand info to be passed in the device tree.

I am not fully understand this. You means add MTDIDS / MTDPARTS, it can 
automatically pass the nand info to device tree, not through the command 
line, am I right?

Best Regards,
Bo Shen
Tom Rini - Feb. 21, 2013, 2:24 p.m.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 02/21/2013 01:58 AM, Bo Shen wrote:
> Hi Tom,
> 
> On 2/21/2013 10:05, Tom Rini wrote:
>> On Wed, Feb 20, 2013 at 06:16:25PM +0800, Bo Shen wrote:
>> 
>>> Change nand flash partition tablke according to
>>> www.at91.com/linux4sam
>>> 
>>> more information: 
>>> http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted#Linux4SAM_NandFlash_demo_Memory
>>>
>>>
>>>
>>> 
Signed-off-by: Bo Shen <voice.shen@atmel.com>
>> 
>> Question.  Is there a reason to not being doing the MTDIDS /
>> MTDPARTS and adding CONFIG_CMD_MTDPARTS ?
> 
> Yes, MTDIDS/MTDPARTS is missing, however, we can set mtdids and
> mtdpart environment to use mtdparts command. (Maybe this is not a
> good idea, will consider to add MTDIDS / MTDPARTS later, not in
> this patch series.)

Right.  But without CONFIG_CMD_MTDPARTS you don't have the mtdparts
commands / infrastructure in U-Boot :)

>> Doing that should also "just" enable the nand info to be passed
>> in the device tree.
> 
> I am not fully understand this. You means add MTDIDS / MTDPARTS, it
> can automatically pass the nand info to device tree, not through
> the command line, am I right?

I was mis-remembering the code.  If you have
CONFIG_FDT_FIXUP_PARTITIONS set and the board support code calls
fdt_fixup_mtdparts then yes, the mtdparts info will be put into the
device tree and then CONFIG_MTD_OF_PARTS in the kernel should take
that and run with it.  At least I think that's all there is to it,
I've meant to, but not had a chance, to try that all out again.
Perhaps soon tho.

- -- 
Tom
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBAgAGBQJRJi4EAAoJENk4IS6UOR1WDGoP/ineyNosxYT2e1yLIWNKDeI6
S+tTcYU6fLyI/0rB9mSfALXCbWVaVq6NVmkpwwKBYZhOSOAt7QiQTPI4wVRVnK85
801qUEIBral3NKeSULkQJ/Nk22SjwRWu+lURksuHISkPuXNKMve0R66pJeZYR1Eo
mLCEW+yI+ugnoNJgUCOZNFBTdsbMQzScSCRzJ5MEorHS2xBuygZxfHpw8CKKjlbs
sEENBtc5bXqmZ33n0Yw1Hy08eAsySowSqo3z4OOFNvILq2Jh0RvIrYXQ04W8Uakr
GAwXV3kPLbbAaZ4r7nIfWnIdAq0QWB/AK0N5EaXReiW+k3BJbvcS+0Aha+o1RlWs
Cxho2n3UGuuPOB792ioobbd74NuoLGZR5arj14nrD5mI2edh7p9jd0yiYAW61Lri
+D+iE2JVxsAfj9qWy+1B6Ha8b7VmnR8qnsLgXiAFtoHG546M5aINJlr1wLAKsiDc
CGNeFi1Xh4StApcOOzq53NfNxoCAPhr7c/0Zw0wkFbyztUrWPjqmp07HocRBINWl
jFqiiSrxIskeQe56qd8nc2u7wFw/Of7kDBbMiVqJ24mQwM8pp0LQLLXdRdi9Xj53
mXvl9GtiFAXPaoOkLA5X5M4cySC3yhftoHAd94/Soj6B1cRajhYXIGEL5+ZX5wRx
Jg15Mk+3nt2gFXfbXnPy
=wEzg
-----END PGP SIGNATURE-----
Andreas Bießmann - March 12, 2013, 12:01 p.m.
Dear Bo Shen,

Bo Shen <voice.shen@atmel.com> writes:
>Change nand flash partition tablke according to www.at91.com/linux4sam
>
>more information: http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted#Linux4SAM_NandFlash_demo_Memory
>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>Signed-off-by: Bo Shen <voice.shen@atmel.com>
>
>---
>include/configs/at91sam9260ek.h    |   18 +++++++++---------
> include/configs/at91sam9261ek.h    |   19 +++++++++----------
> include/configs/at91sam9263ek.h    |   17 +++++++++--------
> include/configs/at91sam9m10g45ek.h |   16 ++++++++--------
> include/configs/at91sam9x5ek.h     |   11 ++++++-----
> 5 files changed, 41 insertions(+), 40 deletions(-)

applied with some minor changes in commit message to u-boot-atmel/master, thanks!

Best regards,
Andreas Bießmann

Patch

diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index 392a818..ebcc69a 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -215,16 +215,16 @@ 
 
 /* bootstrap + u-boot + env + linux in nandflash */
 #define CONFIG_ENV_IS_IN_NAND	1
-#define CONFIG_ENV_OFFSET		0x60000
-#define CONFIG_ENV_OFFSET_REDUND	0x80000
+#define CONFIG_ENV_OFFSET		0xc0000
+#define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
-#define CONFIG_BOOTCOMMAND	"nand read 0x22000000 0xA0000 0x200000; bootm"
-#define CONFIG_BOOTARGS		"console=ttyS0,115200 "			\
-				"root=/dev/mtdblock5 "			\
-				"mtdparts=atmel_nand:128k(bootstrap)ro,"	\
-				"256k(uboot)ro,128k(env1)ro,"		\
-				"128k(env2)ro,2M(linux),-(root) "	\
-				"rw rootfstype=jffs2"
+#define CONFIG_BOOTCOMMAND	"nand read 0x22000000 0x200000 0x300000; bootm"
+#define CONFIG_BOOTARGS							\
+	"console=ttyS0,115200 earlyprintk "				\
+	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\
+	"256k(env),256k(env_redundant),256k(spare),"			\
+	"512k(dtb),6M(kernel)ro,-(rootfs) "				\
+	"root=/dev/mtdblock7 rw rootfstype=jffs2"
 
 #endif
 
diff --git a/include/configs/at91sam9261ek.h b/include/configs/at91sam9261ek.h
index 611e3e2..cabff9a 100644
--- a/include/configs/at91sam9261ek.h
+++ b/include/configs/at91sam9261ek.h
@@ -212,17 +212,16 @@ 
 
 /* bootstrap + u-boot + env + linux in nandflash */
 #define CONFIG_ENV_IS_IN_NAND
-#define CONFIG_ENV_OFFSET		0x60000
-#define CONFIG_ENV_OFFSET_REDUND	0x80000
+#define CONFIG_ENV_OFFSET		0xc0000
+#define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
-#define CONFIG_BOOTCOMMAND	"nand read 0x22000000 0xA0000 0x200000; bootm"
-#define CONFIG_BOOTARGS		"console=ttyS0,115200 "			\
-				"root=/dev/mtdblock5 "			\
-				"mtdparts=atmel_nand:128k(bootstrap)ro,"	\
-				"256k(uboot)ro,128k(env1)ro,"		\
-				"128k(env2)ro,2M(linux),-(root) "	\
-				"rw rootfstype=jffs2"
-
+#define CONFIG_BOOTCOMMAND	"nand read 0x22000000 0x200000 0x300000; bootm"
+#define CONFIG_BOOTARGS							\
+	"console=ttyS0,115200 earlyprintk "				\
+	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\
+	"256k(env),256k(env_redundant),256k(spare),"			\
+	"512k(dtb),6M(kernel)ro,-(rootfs) "				\
+	"root=/dev/mtdblock7 rw rootfstype=jffs2"
 #endif
 
 #define CONFIG_SYS_PROMPT		"U-Boot> "
diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h
index da2a931..1ab9c30 100644
--- a/include/configs/at91sam9263ek.h
+++ b/include/configs/at91sam9263ek.h
@@ -327,15 +327,16 @@ 
 
 /* bootstrap + u-boot + env + linux in nandflash */
 #define CONFIG_ENV_IS_IN_NAND		1
-#define CONFIG_ENV_OFFSET		0x60000
-#define CONFIG_ENV_OFFSET_REDUND	0x80000
+#define CONFIG_ENV_OFFSET		0xc0000
+#define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE		0x20000		/* 1 sector = 128 kB */
-#define CONFIG_BOOTCOMMAND	"nand read 0x22000000 0xA0000 0x200000; bootm"
-#define CONFIG_BOOTARGS		"console=ttyS0,115200 " \
-				"root=/dev/mtdblock5 " \
-				"mtdparts=atmel_nand:128k(bootstrap)ro,256k(uboot)ro,128k(env1)ro,128k(env2)ro,2M(linux),-(root) " \
-				"rw rootfstype=jffs2"
-
+#define CONFIG_BOOTCOMMAND	"nand read 0x22000000 0x200000 0x300000; bootm"
+#define CONFIG_BOOTARGS							\
+	"console=ttyS0,115200 earlyprintk "				\
+	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\
+	"256k(env),256k(env_redundant),256k(spare),"			\
+	"512k(dtb),6M(kernel)ro,-(rootfs) "				\
+	"root=/dev/mtdblock7 rw rootfstype=jffs2"
 #endif
 
 #define CONFIG_SYS_PROMPT		"U-Boot> "
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index f1a4db3..07e1c9f 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -150,19 +150,19 @@ 
 
 /* bootstrap + u-boot + env in nandflash */
 #define CONFIG_ENV_IS_IN_NAND
-#define CONFIG_ENV_OFFSET		0x60000
-#define CONFIG_ENV_OFFSET_REDUND	0x80000
+#define CONFIG_ENV_OFFSET		0xc0000
+#define CONFIG_ENV_OFFSET_REDUND	0x100000
 #define CONFIG_ENV_SIZE			0x20000
 
-#define CONFIG_BOOTCOMMAND	"nand read 0x70000000 0x100000 0x200000;" \
+#define CONFIG_BOOTCOMMAND						\
+	"nand read 0x70000000 0x200000 0x300000;"			\
 	"bootm 0x70000000"
 #define CONFIG_BOOTARGS							\
 	"console=ttyS0,115200 earlyprintk "				\
-	"root=/dev/mtdblock5 "						\
-	"mtdparts=atmel_nand:128k(bootstrap)ro,"			\
-	"256k(uboot)ro,128k(env1)ro,128k(env2)ro,"			\
-	"2M@1M(linux),-(root) "						\
-	"rw rootfstype=jffs2"
+	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\
+	"256k(env),256k(env_redundant),256k(spare),"			\
+	"512k(dtb),6M(kernel)ro,-(rootfs) "				\
+	"root=/dev/mtdblock7 rw rootfstype=jffs2"
 
 #define CONFIG_BAUDRATE			115200
 
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index 1bc56a5..ee6e3fc 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -232,11 +232,12 @@ 
 				"root=/dev/mmcblk0p2 " \
 				"rw rootfstype=ext4 rootwait"
 #else
-#define CONFIG_BOOTARGS		"mem=128M console=ttyS0,115200 " \
-				"mtdparts=atmel_nand:" \
-				"8M(bootstrap/uboot/kernel)ro,-(rootfs) " \
-				"root=/dev/mtdblock1 rw " \
-				"rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs"
+#define CONFIG_BOOTARGS							\
+	"console=ttyS0,115200 earlyprintk "				\
+	"mtdparts=atmel_nand:256k(bootstrap)ro,512k(uboot)ro,"		\
+	"256k(env),256k(env_redundant),256k(spare),"			\
+	"512k(dtb),6M(kernel)ro,-(rootfs) "				\
+	"rootfstype=ubifs ubi.mtd=7 root=ubi0:rootfs rw"
 #endif
 
 #define CONFIG_BAUDRATE		115200