diff -uprN linux-2.6.20-at92_e1.5/arch/arm/mach-at91rm9200/board-som9260m.c linux-2.6.20-at92_e1.5.1/arch/arm/mach-at91rm9200/board-som9260m.c
--- linux-2.6.20-at92_e1.5/arch/arm/mach-at91rm9200/board-som9260m.c	2008-02-06 12:51:28.000000000 -0500
+++ linux-2.6.20-at92_e1.5.1/arch/arm/mach-at91rm9200/board-som9260m.c	2008-02-06 12:50:08.000000000 -0500
@@ -161,12 +161,11 @@ void __init at91_add_device_ssc_at73c213
 /************************************************************
  * mcp3208 atod interface over EMAC SPI class
  */
-
+#ifdef CONFIG_ARMSTRONG_HWMS
 static struct spi_s mcp3208_spi = 
 {
  .name = "mcp3208",
  .subclass = 0,
- .bsize = 16,
  .tip = lsi2esc_spi_tip,
  .xmit = lsi2esc_spi_xmit,
  .confwrite = lsi2esc_spi_confwrite,
@@ -174,19 +173,20 @@ static struct spi_s mcp3208_spi = 
  .speedread = lsi2esc_spi_speedread,
  .speedwrite = lsi2esc_spi_speedwrite,
 };
+#endif
 
-static struct spi_s fake_spi = 
-{
- .name = "fake",
- .subclass = 0,
- .bsize = 16,
- .tip = lsi2esc_spi_tip,
- .xmit = lsi2esc_spi_xmit,
- .confwrite = lsi2esc_spi_confwrite,
- .confread = lsi2esc_spi_confread,
- .speedread = lsi2esc_spi_speedread,
- .speedwrite = lsi2esc_spi_speedwrite,
-};
+//static struct spi_s fake_spi = 
+//{
+// .name = "fake",
+// .subclass = 0,
+// .bsize = 16,
+// .tip = lsi2esc_spi_tip,
+// .xmit = lsi2esc_spi_xmit,
+// .confwrite = lsi2esc_spi_confwrite,
+// .confread = lsi2esc_spi_confread,
+// .speedread = lsi2esc_spi_speedread,
+// .speedwrite = lsi2esc_spi_speedwrite,
+//};
 
 	
 static struct spi_board_info ek_spi_devices[] = {
@@ -222,13 +222,13 @@ static struct spi_board_info ek_spi_devi
 	  .bus_num = 1,
 	  .platform_data = &mcp3208_spi,
 	},
-	{ /*fake*/
-	  .modalias = "lsi2esc",
-	  .chip_select = 1,
-	  .max_speed_hz = 10 * 1000 * 1000,
-	  .bus_num = 0,
-	  .platform_data = &fake_spi,
-	},
+	//{ /*fake*/
+	//  .modalias = "lsi2esc",
+	//  .chip_select = 1,
+	//  .max_speed_hz = 10 * 1000 * 1000,
+	//  .bus_num = 0,
+	//  .platform_data = &fake_spi,
+	//},
 #endif
 };
 
@@ -244,6 +244,7 @@ static struct __initdata at91_eth_data e
 /*
  * NAND flash
  */
+#if 0 /* OBSOLETE */
 static struct mtd_partition __initdata ek_nand_partition[] = {
 	{
 		.name	= "Boot Partition",
@@ -267,6 +268,7 @@ static struct mtd_partition __initdata e
  	},
 };
 
+
 static struct mtd_partition *nand_partitions(int size, int *num_partitions)
 {
 	*num_partitions = ARRAY_SIZE(ek_nand_partition);
@@ -286,6 +288,7 @@ static struct at91_nand_data __initdata 
 	.bus_width_16	= 0,
 #endif
 };
+#endif /* 0 -- NAND obsolete */
 
 /*
  *  NOR Flash
@@ -298,24 +301,25 @@ static struct mtd_partition som_flash_pa
 	{
 		.name	= "Boot Partition",
 		.offset	= 0,
-		.size	= 64 * 2 * 1024,
+		.size	= 64 * 2 * 1024, /* ~125 KB */
 		.mask_flags	= MTD_WRITEABLE,
 	},
 	{
 		.name	= "UBoot Partition",
 		.offset	= 64 * 2 * 1024,
-		.size	= 64 * 14 * 1024,
+		.size	= 64 * 14 * 1024, /* ~875 KB */
 		.mask_flags	= MTD_WRITEABLE,
 	},
  	{
  		.name	= "Kernel Partition",
  		.offset	= 64 * 16 * 1024,
- 		.size	= 64 * 48 * 1024,
+ 		.size	= 64 * 48 * 1024, /* 3 MB */
  	},
  	{
  		.name	= "Disk Partition",
  		.offset	= 64 * 64 * 1024,
- 		.size	= 64 * 256 * 1024,
+ 		/*.size	= 64 * 256 * 1024,*/
+ 		.size = 64 * 448 * 1024, /* 28 MB */
  	},
  };
 
diff -uprN linux-2.6.20-at92_e1.5/drivers/ioex/ecoreex.c linux-2.6.20-at92_e1.5.1/drivers/ioex/ecoreex.c
--- linux-2.6.20-at92_e1.5/drivers/ioex/ecoreex.c	2008-02-06 12:51:28.000000000 -0500
+++ linux-2.6.20-at92_e1.5.1/drivers/ioex/ecoreex.c	2008-02-06 12:50:08.000000000 -0500
@@ -334,8 +334,8 @@ static inline void map_core(unsigned lon
     
     if(virt_addr==NULL)printk("could not remap physical memory at %lx for EMAC core\n",phys_addr);
     else{
-        version =ioread8(&virt_addr[data->key_offset]);
-        //if (VERSION_KEY == -1)
+        if (VERSION_KEY == -1)
+            version =ioread8(&virt_addr[data->key_offset]);
         //    version = data->e_access->ecoreex_key_read(data->key_offset, virt_addr);
         /* else the version is predefined */
 		printk("EMAC core version %x detected at %lx\n",version,phys_addr+data->key_offset );
