[U-Boot] [PATCH] NAND Send RESET before initial READID

We had a problem where NAND device ID would be corrupted after a power-cycle. According to the Micron datasheet it requires a RESET after power-up before any commands may be issued. Without this patch the manufacturer ID would be correct, but the device ID, cellinfo and extra ID would be incorrect.
Signed-off-by: David George <david at harktech.com> --- diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index 0913bb8..3b9552d 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c @@ -2360,6 +2360,12 @@ static struct nand_flash_dev *nand_get_flash_type(struct mtd_info *mtd, /* Select the device */ chip->select_chip(mtd, 0);
+ /* + * Micron needs a RESET after power up before issuing + * any other commands + */ + chip->cmdfunc(mtd, NAND_CMD_RESET, -1, -1); + /* Send the command for reading device ID */ chip->cmdfunc(mtd, NAND_CMD_READID, 0x00, -1);

On Fri, Oct 17, 2008 at 01:01:48PM -0400, David George wrote:
We had a problem where NAND device ID would be corrupted after a power-cycle. According to the Micron datasheet it requires a RESET after power-up before any commands may be issued. Without this patch the manufacturer ID would be correct, but the device ID, cellinfo and extra ID would be incorrect.
Signed-off-by: David George <david at harktech.com>
Patch is whitespace damaged.
Applied by hand to u-boot-nand-flash, but try to preserve the whitespace next time.
-Scott
participants (2)
-
David George
-
Scott Wood