diff -urN linux-2.4.6-pre9/drivers/mtd/nand/Config.in linux-2.4.6-pre9-patched/drivers/mtd/nand/Config.in
--- linux-2.4.6-pre9/drivers/mtd/nand/Config.in	Tue Jul  3 11:29:01 2001
+++ linux-2.4.6-pre9-patched/drivers/mtd/nand/Config.in	Tue Jul  3 12:51:19 2001
@@ -1,6 +1,6 @@
 # drivers/mtd/nand/Config.in
 
-# $Id: Config.in,v 1.1 2001/04/20 15:27:38 dwmw2 Exp $
+# $Id: Config.in,v 1.3 2001/07/03 17:50:56 sjhill Exp $
 
 mainmenu_option next_comment
 
@@ -11,6 +11,8 @@
    bool '    Enable ECC correction algorithm'  CONFIG_MTD_NAND_ECC y
    bool '    Verify NAND page writes' CONFIG_MTD_NAND_VERIFY_WRITE y
 fi
-dep_tristate '  NAND Flash device on SPIA board' CONFIG_MTD_NAND_SPIA $CONFIG_MTD_NAND
+if [ "$CONFIG_ARM" = "y" -a "$CONFIG_ARCH_P720T" = "y" ]; then
+   dep_tristate '  NAND Flash device on SPIA board' CONFIG_MTD_NAND_SPIA $CONFIG_MTD_NAND
+fi
 
 endmenu
diff -urN linux-2.4.6-pre9/drivers/mtd/nand/spia.c linux-2.4.6-pre9-patched/drivers/mtd/nand/spia.c
--- linux-2.4.6-pre9/drivers/mtd/nand/spia.c	Tue Jul  3 11:29:01 2001
+++ linux-2.4.6-pre9-patched/drivers/mtd/nand/spia.c	Tue Jul  3 12:51:14 2001
@@ -3,7 +3,7 @@
  *
  *  Copyright (C) 2000 Steven J. Hill (sjhill@cotw.com)
  *
- * $Id: spia.c,v 1.9 2001/06/02 14:47:16 dwmw2 Exp $
+ * $Id: spia.c,v 1.11 2001/07/03 17:50:56 sjhill Exp $
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
@@ -28,6 +28,22 @@
 static struct mtd_info *spia_mtd = NULL;
 
 /*
+ * Values specific to the SPIA board (used with EP7212 processor)
+ */
+#define SPIA_IO_ADDR	= 0xd0000000	/* Start of EP7212 IO address space */
+#define SPIA_FIO_ADDR	= 0xf0000000	/* Address where flash is mapped */
+#define SPIA_PEDR	= 0x0080	/*
+					 * IO offset to Port E data register
+					 * where the CLE, ALE and NCE pins
+					 * are wired to.
+					 */
+#define SPIA_PEDDR	= 0x00c0	/*
+					 * IO offset to Port E data direction
+					 * register so we can control the IO
+					 * lines.
+					 */
+
+/*
  * Module stuff
  */
 #if LINUX_VERSION_CODE < 0x20212 && defined(MODULE)
@@ -35,6 +51,21 @@
   #define spia_cleanup cleanup_module
 #endif
 
+static int spia_io_base = SPIA_IO_BASE;
+static int spia_fio_base = SPIA_FIO_BASE;
+static int spia_pedr = SPIA_PEDR;
+static int spia_peddr = SPIA_PEDDR;
+
+MODULE_PARM(spia_io_base, "i");
+MODULE_PARM(spia_fio_base, "i");
+MODULE_PARM(spia_pedr, "i");
+MODULE_PARM(spia_peddr, "i");
+
+__setup("spia_io_base=",spia_io_base);
+__setup("spia_fio_base=",spia_fio_base);
+__setup("spia_pedr=",spia_pedr);
+__setup("spia_peddr=",spia_peddr);
+
 /*
  * Define partitions for flash device
  */
@@ -77,11 +108,11 @@
 	 * Set GPIO Port E control register so that the pins are configured
 	 * to be outputs for controlling the NAND flash.
 	 */
-	(*(volatile unsigned char *) (IO_BASE + PEDDR)) = 0x07;
+	(*(volatile unsigned char *) (spia_io_base + spia_peddr)) = 0x07;
 
 	/* Set address of NAND IO lines */
-	this->IO_ADDR = FIO_BASE;
-	this->CTRL_ADDR = IO_BASE + PEDR;
+	this->IO_ADDR = spia_fio_base;
+	this->CTRL_ADDR = spia_io_base + spia_pedr;
 	this->CLE = 0x01;
 	this->ALE = 0x02;
 	this->NCE = 0x04;
