diff options
author | Heiko Schocher <hs@pollux.denx.de> | 2006-12-21 17:17:02 +0100 |
---|---|---|
committer | Heiko Schocher <hs@pollux.denx.de> | 2006-12-21 17:17:02 +0100 |
commit | fa23044564091f05d9695beb7b5b9a931e7f41a4 (patch) | |
tree | e930a79b3bfdd7352ad2c5129762553ef95ec27e /drivers | |
parent | ee58ea2689930669678fdcb27bf0cc5c341e18eb (diff) |
Added support for the TQM8272 board from TQ
Signed-off-by: Heiko Schocher <hs@denx.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/nand/nand.c | 17 | ||||
-rw-r--r-- | drivers/nand/nand_base.c | 2 |
2 files changed, 12 insertions, 7 deletions
diff --git a/drivers/nand/nand.c b/drivers/nand/nand.c index 3899045a72..9fef71d629 100644 --- a/drivers/nand/nand.c +++ b/drivers/nand/nand.c @@ -39,7 +39,7 @@ static ulong base_address[CFG_MAX_NAND_DEVICE] = CFG_NAND_BASE_LIST; static const char default_nand_name[] = "nand"; -extern void board_nand_init(struct nand_chip *nand); +extern int board_nand_init(struct nand_chip *nand); static void nand_init_chip(struct mtd_info *mtd, struct nand_chip *nand, ulong base_addr) @@ -47,13 +47,16 @@ static void nand_init_chip(struct mtd_info *mtd, struct nand_chip *nand, mtd->priv = nand; nand->IO_ADDR_R = nand->IO_ADDR_W = (void __iomem *)base_addr; - board_nand_init(nand); - - if (nand_scan(mtd, 1) == 0) { - if (!mtd->name) - mtd->name = (char *)default_nand_name; - } else + if (board_nand_init(nand) == 0) { + if (nand_scan(mtd, 1) == 0) { + if (!mtd->name) + mtd->name = (char *)default_nand_name; + } else + mtd->name = NULL; + } else { mtd->name = NULL; + mtd->size = 0; + } } diff --git a/drivers/nand/nand_base.c b/drivers/nand/nand_base.c index b7a5d32fb3..95d6e4ede6 100644 --- a/drivers/nand/nand_base.c +++ b/drivers/nand/nand_base.c @@ -2407,7 +2407,9 @@ int nand_scan (struct mtd_info *mtd, int maxchips) } if (!nand_flash_ids[i].name) { +#if !defined(CONFIG_TQM8272) printk (KERN_WARNING "No NAND device found!!!\n"); +#endif this->select_chip(mtd, -1); return 1; } |