> -----Original Message----- > From: Jens Gehrlein [mailto:[EMAIL PROTECTED] > Sent: Friday, September 19, 2008 6:05 PM > To: Jin Zhengxiong-R64188; Wood Scott-B07421 > Cc: u-boot@lists.denx.de > Subject: RE: [U-Boot] [PATCH 1/4] Fix the NAND size overflow issue. > > Hi Jason, > > > -----Original Message----- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED] Behalf Of Jason Jin > > Sent: Friday, September 19, 2008 11:33 AM > > To: [EMAIL PROTECTED] > > Cc: u-boot@lists.denx.de; Jason Jin > > Subject: [U-Boot] [PATCH 1/4] Fix the NAND size overflow issue. > > > > > > When the NAND size is or large than 4G, the size will overflow, The > > adjustment in this patch try to fix this. > > > > Signed-off-by: Jason Jin <[EMAIL PROTECTED]> > > --- > > drivers/mtd/nand/nand.c | 4 ++-- > > 1 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/mtd/nand/nand.c > b/drivers/mtd/nand/nand.c index > > ebd2acd..71a0e4b 100644 > > --- a/drivers/mtd/nand/nand.c > > +++ b/drivers/mtd/nand/nand.c > > @@ -63,11 +63,11 @@ void nand_init(void) > > unsigned int size = 0; > > for (i = 0; i < CFG_MAX_NAND_DEVICE; i++) { > > nand_init_chip(&nand_info[i], &nand_chip[i], > base_address[i]); > > - size += nand_info[i].size; > > + size += nand_info[i].size / 1024; > > if (nand_curr_device == -1) > > nand_curr_device = i; > > } > > - printf("%u MiB\n", size / (1024 * 1024)); > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > According to this line I suppose, the value of > nand_info[i].size is in Bytes. So, if the NAND chip is >= 4 > GiB this variable has already been overflowed, when > nand_init_chip returns. > Indeed, I didn't check the source code of the NAND driver. Am > I wrong or did you modify the driver? > Hi, Jens, You are right, the nand_info[i].size is in Bytes. and this patch just can fix those chips with memory cell less than 4GBytes. The nand_info[i].size is widly used in u-boot, If change it to MByte, lots of tests need to do.
Thanks Jaosn _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot