summaryrefslogtreecommitdiff
path: root/drivers/mtd/nand
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2010-07-05 04:55:04 -0400
committerScott Wood <scottwood@freescale.com>2010-07-08 16:52:12 -0500
commitbc1a8846862049f435ee4e3d57c86c05b28567ad (patch)
tree585feea4b8a1fcbacdf2f7bd78300e4367d56529 /drivers/mtd/nand
parent1445f6ffd5201b1876f1f08cc5fd8b5de2c54628 (diff)
downloadu-boot-imx-bc1a8846862049f435ee4e3d57c86c05b28567ad.zip
u-boot-imx-bc1a8846862049f435ee4e3d57c86c05b28567ad.tar.gz
u-boot-imx-bc1a8846862049f435ee4e3d57c86c05b28567ad.tar.bz2
mtd: nand_plat: add simple GPIO framework DEV_READY option
Make it easy to use GPIOs for the DEV_READY pin by using the common GPIO framework. Also make the NAND_PLAT_INIT() define optional. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Tested-by: Thomas Chou <thomas@wytron.com.tw>
Diffstat (limited to 'drivers/mtd/nand')
-rw-r--r--drivers/mtd/nand/nand_plat.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/mtd/nand/nand_plat.c b/drivers/mtd/nand/nand_plat.c
index b35492b..37a0206 100644
--- a/drivers/mtd/nand/nand_plat.c
+++ b/drivers/mtd/nand/nand_plat.c
@@ -16,6 +16,10 @@
#include <common.h>
#include <asm/io.h>
+#ifdef NAND_PLAT_GPIO_DEV_READY
+# include <asm/gpio.h>
+# define NAND_PLAT_DEV_READY(chip) gpio_get_value(NAND_PLAT_GPIO_DEV_READY)
+#endif
#include <nand.h>
@@ -43,7 +47,14 @@ static int plat_dev_ready(struct mtd_info *mtd)
int board_nand_init(struct nand_chip *nand)
{
+#ifdef NAND_PLAT_GPIO_DEV_READY
+ gpio_request(NAND_PLAT_GPIO_DEV_READY, "nand-plat");
+ gpio_direction_input(NAND_PLAT_GPIO_DEV_READY);
+#endif
+
+#ifdef NAND_PLAT_INIT
NAND_PLAT_INIT();
+#endif
nand->cmd_ctrl = plat_cmd_ctrl;
nand->dev_ready = plat_dev_ready;