public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] nand_plat extensions with GPIO framework
@ 2010-06-08 21:10 Mike Frysinger
  2010-06-09  0:58 ` Thomas Chou
  0 siblings, 1 reply; 4+ messages in thread
From: Mike Frysinger @ 2010-06-08 21:10 UTC (permalink / raw)
  To: u-boot

i'm in the process of merging the GPIO layer from Linux into the Blackfin port 
(well, it's already done, so now i'm just converting drivers over to it).  as 
i'm sure you're aware, the GPIO framework in Linux provides a common API 
across all ports, so anyone who supports asm/gpio.h is going to work.  no-arch 
specific junk here.

some Blackfin boards use GPIOs with the nand_plat driver for the dev_ready 
pin.  so while i can easily convert the board config header to call these gpio 
funcs, the issue is that i cant really pull in headers like asm/gpio.h in the 
board config since all files will then pull it in.

what i'm thinking is something like this:
--- 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;

now the Blackfin boards merely have to do:
#define NAND_PLAT_GPIO_DEV_READY       GPIO_PF12
 
any suggestions about how to approach this ?
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100608/4676c6b6/attachment.pgp 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-06-09  6:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-08 21:10 [U-Boot] nand_plat extensions with GPIO framework Mike Frysinger
2010-06-09  0:58 ` Thomas Chou
2010-06-09  5:46   ` Mike Frysinger
2010-06-09  6:24     ` Thomas Chou

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox