From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Stile Date: Fri, 01 Feb 2013 16:13:50 -0800 Subject: [U-Boot] booting from half of NAND, and mounting jffs on other half of NAND In-Reply-To: <1359751671.7974.390.camel@genx> References: <1359751671.7974.390.camel@genx> Message-ID: <1359764030.7974.397.camel@genx> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Fri, 2013-02-01 at 12:47 -0800, John Stile wrote: > Using uboot 2013.01, booting from NAND, I am having difficulty > understanding how partitions (areas of NAND) work. > > I have written to NAND in the following layout: > 0x0000000 at91bootstrap1 > 0x0020000 uboot1 > 0x0060000 uboot-env1 > 0x0200000 kernel1 > 0x0400000 rootfs1 > 0x8000000 at91bootstrap2 > 0x8020000 uboot2 > 0x8060000 uboot-env2 > 0x8200000 kernel > 0x8400000 rootfs2 > > I hacked at91bootstrap to load into ram a uboot and an environment, and > I can stop uboot and 'env print' to see that the proper environment was > loaded. > > While booted into linux on one rootfs I would like to access the other > rootfs. > > I try tried to use the mtdparts parameter that describes the partitions > of NAND, but this isn't working, and I don't think I understand what it > should be. > > First problem, or signs that I'm doing something wrong is my mtdparts > parameter. If I try to edit on the interactive uboot shell, the line is > too long to change, so I have to write flash for each test. That can't > be correct? Regardless of which uboot environemnt I use, this is what I > am trying to use to describe my NAND layout: > mtdparts=at91_nand:128k(bootstrap1)ro,256k(uboot1)ro,128k(env1)ro,1536K(unused),2M(linux1),124M(rootfs1),128k(bootstrap2)ro,256k(uboot2)ro,128k(env2)ro,1536k(unused2),2M(linux2),124M(rootfs2) > What should I use here? > > Second problem is what to use for root=/dev/mtdblock*. I have tried > many things, but most lead to an inability to find the file system, and > since each test requires re-writing NAND flash it takes a really long > time to debug. What should I use here? I solved my own problem. bootargs mtdparts= addressed the wrong name for nand. I had at91_nand. The kernel messages said, "Creating 3 MTD partitions on "atmel_nand":". Changing at91_nand to atmel_nand, my partitions are visible.