diff --unified --recursive --new-file mtd/drivers/mtd/maps/sa1100-flash.c mtd-patch16M/drivers/mtd/maps/sa1100-flash.c
--- mtd/drivers/mtd/maps/sa1100-flash.c	2003-02-17 22:49:10.000000000 +0100
+++ mtd-patch16M/drivers/mtd/maps/sa1100-flash.c	2003-10-31 18:34:18.000000000 +0100
@@ -1,9 +1,9 @@
 /*
  * Flash memory access on SA11x0 based devices
- * 
+ *
  * (C) 2000 Nicolas Pitre <nico@cam.org>
- * 
- * $Id: sa1100-flash.c,v 1.30 2003/02/17 21:49:10 gthomas Exp $
+ *
+ * $Id: sa1100-flash.c,v 1.1.1.1 2003/07/01 18:08:10 mdavor Exp $
  */
 
 #include <linux/config.h>
@@ -25,6 +25,9 @@
 #endif
 
 
+#define  _CEP_FLASH_LEN_16MB_  /* We have 16MB Flash */
+
+
 #define WINDOW_ADDR 0xe8000000
 
 static __u8 sa1100_read8(struct map_info *map, unsigned long ofs)
@@ -123,7 +126,7 @@
 };
 #endif
 
-#ifdef CONFIG_SA1100_ASSABET
+#if (defined(CONFIG_SA1100_CEP)  || defined(CONFIG_SA1100_ASSABET))
 /* Phase 4 Assabet has two 28F160B3 flash parts in bank 0: */
 #define ASSABET4_FLASH_SIZE		0x00400000
 static struct mtd_partition assabet4_partitions[] = {
@@ -131,12 +134,12 @@
 		name:		"bootloader",
 		size:		0x00020000,
 		offset:		0,
-		mask_flags:	MTD_WRITEABLE,
+	/*	mask_flags:	MTD_WRITEABLE, */
 	}, {
 		name:		"bootloader params",
 		size:		0x00020000,
 		offset:		MTDPART_OFS_APPEND,
-		mask_flags:	MTD_WRITEABLE,
+	/*	mask_flags:	MTD_WRITEABLE, */
 	}, {
 		name:		"jffs",
 		size:		MTDPART_SIZ_FULL,
@@ -145,6 +148,7 @@
 };
 
 /* Phase 5 Assabet has two 28F128J3A flash parts in bank 0: */
+#if 0  /* Excluded by DM - Modified partitions for the CEP platform */
 #define ASSABET5_FLASH_SIZE		0x02000000
 static struct mtd_partition assabet5_partitions[] = {
 	{
@@ -163,6 +167,77 @@
 		offset:		MTDPART_OFS_APPEND,
 	}
 };
+#else
+#ifdef  _CEP_FLASH_LEN_16MB_
+/* DM: Modified partitions for the CEP platform.
+ * CEP has two 28F640j3A flash parts (2x64 Mbit = 2x8 Mbyte).
+ * Max. flash size is thus set to 0x01000000.
+ * Flash memory map is specified in the BLOB file cep.h */
+#define ASSABET5_FLASH_SIZE		0x01000000             /* 16 MB */
+static struct mtd_partition assabet5_partitions[] = {
+	{
+		name:		"bootloader",
+		size:		0x00040000,     /* 256 KB */
+		offset:		0,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+		name:		"bootloader params",
+		size:		0x00040000,     /* 256 KB */
+		offset:		MTDPART_OFS_APPEND,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+		name:		"kernel",
+		size:		0x00100000,     /* 1 MB */
+		offset:		MTDPART_OFS_APPEND,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+		name:		"RAM disk",     /* 2 MB */
+		size:		0x00200000,
+		offset:		MTDPART_OFS_APPEND,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+                name:           "ext2",
+                size:           MTDPART_SIZ_FULL,         /* 12.5 MB */
+                offset:         MTDPART_OFS_APPEND,
+	}
+};
+#else
+#ifdef  _CEP_FLASH_LEN_32MB_
+/* DM: CEP has two 28F128J3A flash parts.
+ * Flash size is set to 0x02000000.       */
+#define ASSABET5_FLASH_SIZE		0x02000000             /* 32 MB */
+static struct mtd_partition assabet5_partitions[] = {
+	{
+		name:		"bootloader",
+		size:		0x00040000,     /* 256 KB */
+		offset:		0,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+		name:		"bootloader params",
+		size:		0x00040000,     /* 256 KB */
+		offset:		MTDPART_OFS_APPEND,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+		name:		"kernel",
+		size:		0x00100000,     /* 1 MB */
+		offset:		MTDPART_OFS_APPEND,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+		name:		"RAM disk",     /* 2 MB */
+		size:		0x00200000,
+		offset:		MTDPART_OFS_APPEND,
+	/*	mask_flags:	MTD_WRITEABLE, */
+	}, {
+                name:           "ext2",
+                size:           MTDPART_SIZ_FULL,         /* 28.5 MB */
+                offset:         MTDPART_OFS_APPEND,
+	}
+};
+#else
+#error  "Must define CEP Flash length"
+#endif /* _CEP_FLASH_LEN_32MB_ */
+#endif /* _CEP_FLASH_LEN_16MB_ */
+#endif /* CEP flash by DM */
 
 #define ASSABET_FLASH_SIZE	ASSABET5_FLASH_SIZE
 #define assabet_partitions	assabet5_partitions
@@ -765,7 +840,13 @@
 };
 #endif
 
+/* by DM */
+extern int parse_redboot_partitions(struct mtd_info *master, struct mtd_partition **pparts, void *fis_origin);
+#if 0
 extern int parse_bootldr_partitions(struct mtd_info *master, struct mtd_partition **pparts);
+#else
+extern int parse_cmdline_partitions(struct mtd_info *master, struct mtd_partition **pparts, const char *mtd_id);
+#endif
 
 static struct mtd_partition *parsed_parts;
 static struct mtd_info *mymtd;
@@ -794,12 +875,12 @@
 		sa1100_map.buswidth = (MSC1 & MSC_RBW) ? 2 : 4;
 	}
 #endif
-#ifdef CONFIG_SA1100_ASSABET
-	if (machine_is_assabet()) {
+#if (defined(CONFIG_SA1100_CEP)  || defined(CONFIG_SA1100_ASSABET))
+   /* if (machine_is_assabet()) {  excluded by DM - execute on the CEP platform */
 		parts = assabet_partitions;
 		nb_parts = ARRAY_SIZE(assabet_partitions);
 		sa1100_map.size = ASSABET_FLASH_SIZE;
-	}
+   /* } by DM */
 #endif
 #ifdef CONFIG_SA1100_BADGE4
 	if (machine_is_badge4()) {
diff --unified --recursive --new-file mtd/patches/patchin.sh mtd-patch16M/patches/patchin.sh
--- mtd/patches/patchin.sh	2003-02-10 11:55:55.000000000 +0100
+++ mtd-patch16M/patches/patchin.sh	2003-10-31 18:35:42.000000000 +0100
@@ -115,7 +115,8 @@
 echo Patching $LINUXDIR 
 echo Include Filesytems: $FILESYSTEMS
 echo Zlib-Patch needed: $ZLIBPATCH
-read -p "Can we start now ? [y/N]" ANSWER
+#read -p "Can we start now ? [y/N]" ANSWER
+ANSWER=y
 echo ""
 
 if [ "$ANSWER" != "y" ]
