NAND: Mark the BBT as scanned prior to calling scan_bbt.
Otherwise, recursion can occur if scan_bbt does not find a bad block table, and tries to write one, and the attempt to erase the BBT area causes a bad block check. Signed-off-by: Scott Wood <scottwood@freescale.com>
This commit is contained in:
		
							parent
							
								
									7f20221735
								
							
						
					
					
						commit
						ff49ea8977
					
				|  | @ -460,8 +460,8 @@ static int nand_block_checkbad(struct mtd_info *mtd, loff_t ofs, int getchip, | ||||||
| 	struct nand_chip *chip = mtd->priv; | 	struct nand_chip *chip = mtd->priv; | ||||||
| 
 | 
 | ||||||
| 	if (!(chip->options & NAND_BBT_SCANNED)) { | 	if (!(chip->options & NAND_BBT_SCANNED)) { | ||||||
| 		chip->scan_bbt(mtd); |  | ||||||
| 		chip->options |= NAND_BBT_SCANNED; | 		chip->options |= NAND_BBT_SCANNED; | ||||||
|  | 		chip->scan_bbt(mtd); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if (!chip->bbt) | 	if (!chip->bbt) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue