Hi Scott, On Thursday, January 31, 2013 8:47:55 PM, Scott Wood wrote: > Without this, all OOB reads are from the last page normally read > (or zero at boot). This results in bad block scans failing to look > in the right place, and so no bad blocks are found. > > Signed-off-by: Scott Wood <scottw...@freescale.com> > --- > From IRC discussion with a2cypher. Compile-tested only; testing > would be appreciated. > > drivers/mtd/nand/mxc_nand.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c > index d0ded48..32ba340 100644 > --- a/drivers/mtd/nand/mxc_nand.c > +++ b/drivers/mtd/nand/mxc_nand.c > @@ -1021,6 +1021,7 @@ void mxc_nand_command(struct mtd_info *mtd, unsigned > command, > break; > > case NAND_CMD_READOOB: > + host->page_addr = page_addr; > host->col_addr = column; > host->spare_only = true; > if (host->pagesize_2k)
For which NFC version and NAND Flash page size is this? Do you have a means of duplicating the issue? I wonder if the appropriate fix would not rather be to replace all occurrences of "host->page_addr" with "page", except in mxc_nand_correct_data() and mxc_nand_command(). Otherwise, it looks like there will still be weird things going on with this variable. Best regards, Benoît _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot