
Scott Wood-2 wrote:
On Fri, Feb 12, 2010 at 06:14:51PM -0800, Steven Zedeck wrote:
Its in board/atmel/at91sam9rlek/nand.c
It doesn't do much but set up the various GPIO connections. Here's the function:
int board_nand_init(struct nand_chip *nand) { nand->ecc.mode = NAND_ECC_SOFT; #ifdef CFG_NAND_DBW_16 nand->options = NAND_BUSWIDTH_16; #endif nand->cmd_ctrl = at91sam9rlek_nand_hwcontrol; nand->dev_ready = at91sam9rlek_nand_ready; nand->chip_delay = 20;
return 0; }
Add "nand->options |= NAND_USE_FLASH_BBT;".
-Scott
Scott, I really appreciate your help. I added what you suggested, except since we are using an 8 bit wide bus and not 16 I had to do the following:
#ifdef CFG_NAND_DBW_8 nand->options |= NAND_USE_FLASH_BBT; #endif
CFG_NAND_DBW_8 is set in my configs.h file.
Now when my board boots I get this and then it just stops: NAND: Entering nand_init Nand Base 0x40000000 Bad block table not found for chip 0 Bad block table not found for chip 0
That comes from nand_bbt.c Clearly there is something I'm missing regarding how the BBT is created and utilized in Uboot.
thanks, Steve