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

David George david at harktech.com
Fri Oct 17 19:01:48 CEST 2008


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);

-- 
David George
Hark Technologies
http://harktech.com




More information about the U-Boot mailing list