[PATCH] Fixing the garbage collector problem after NAND-flash image record in u-boot

Sergej.Stepanov at ids.de Sergej.Stepanov at ids.de
Wed Nov 24 02:10:54 EST 2010


This patch should fix the following problem:
 1. the  jffs2-image update in the u-boot was ok 
 2. first restart and first mount of the NAND-flash-partition was also ok
 3. before the restart of controller there are no any activity on NAND-flash except of the jffs2_gcd_mtdX-process ...
 4. BUT after the second restart the NAND-flash-partition could not be really used after the second mount,
    dmesg filled with messages:
...
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x03ce0000: 0xc0ff instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x03d00000: 0xc0ff instead
....
Just for for info: the behaviour observed on mpc8313-based board.
The only activity on NAND-flash was the garbage collector process, that looks for CLEANMARKER-nodes

Signed-off-by: Sergej Stepanov <Sergej.Stepanov at ids.de>
Cc: Rolf Riehle <Rolf.Riehle at ids.de>
--

diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c
index c141b07..775c2f5 100644
--- a/drivers/mtd/nand/fsl_elbc_nand.c
+++ b/drivers/mtd/nand/fsl_elbc_nand.c
@@ -388,6 +388,7 @@ static void fsl_elbc_cmdfunc(struct mtd_info *mtd, unsigned int command,
 		         "page_addr: 0x%x, column: 0x%x.\n",
 		         page_addr, column);
 
+		elbc_fcm_ctrl->column = column;
 		elbc_fcm_ctrl->use_mdr = 1;
 
 		fcr = (NAND_CMD_STATUS   << FCR_CMD1_SHIFT) |


More information about the Linuxppc-dev mailing list