mtd: Add bad block table overrides to Davinci NAND driver
The existing NAND infrastructure allows the default main and mirror bad block tables to be overridden in nand_default_bbt(). However, the davinci_nand driver does not support this. Add that support by adding fields to the davinci driver's platform data so platform code can pass in their own bbt's and make the davinci_nand driver honor them. Signed-off-by: Mark A. Greer <mgreer@mvista.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> CC: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
parent
837479d25e
commit
f611a79fe9
|
@ -79,6 +79,10 @@ struct davinci_nand_pdata { /* platform_data */
|
|||
|
||||
/* e.g. NAND_BUSWIDTH_16 or NAND_USE_FLASH_BBT */
|
||||
unsigned options;
|
||||
|
||||
/* Main and mirror bbt descriptor overrides */
|
||||
struct nand_bbt_descr *bbt_td;
|
||||
struct nand_bbt_descr *bbt_md;
|
||||
};
|
||||
|
||||
#endif /* __ARCH_ARM_DAVINCI_NAND_H */
|
||||
|
|
|
@ -591,6 +591,8 @@ static int __init nand_davinci_probe(struct platform_device *pdev)
|
|||
|
||||
/* options such as NAND_USE_FLASH_BBT or 16-bit widths */
|
||||
info->chip.options = pdata->options;
|
||||
info->chip.bbt_td = pdata->bbt_td;
|
||||
info->chip.bbt_md = pdata->bbt_md;
|
||||
|
||||
info->ioaddr = (uint32_t __force) vaddr;
|
||||
|
||||
|
|
Loading…
Reference in New Issue