Patchwork [meta-handheld] linux-yocto(-tiny-kexecboot)_3.2: Zaurus collie MTD fixes

login
register
mail settings
Submitter Andrea Adami
Date Feb. 28, 2013, 11:57 p.m.
Message ID <1362095872-4586-1-git-send-email-andrea.adami@gmail.com>
Download mbox | patch
Permalink /patch/45321/
State Accepted, archived
Headers show

Comments

Andrea Adami - Feb. 28, 2013, 11:57 p.m.
* experimental patches to fix mtd partitions detection
* kexecboot now finds cramfs
* mount of orig. cramfs partition tested for fun :)
* collie's NOR is still READ-ONLY on boot
*
* while there, add a patch to mcp.h to fix
* collie_battery.c compilation

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
---
 .../linux/linux-yocto-3.2/collie/collie-eraseinfo.patch     | 11 +++++++++++
 .../linux/linux-yocto-3.2/collie/collie-jedec-probe.patch   | 11 +++++++++++
 .../linux/linux-yocto-3.2/collie/collie-mtd-rw.patch        | 12 ++++++++++++
 recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg      |  2 +-
 .../linux/linux-yocto-3.2/collie/mcp-device.patch           | 13 +++++++++++++
 .../collie/collie-eraseinfo.patch                           | 11 +++++++++++
 .../collie/collie-jedec-probe.patch                         | 11 +++++++++++
 .../collie/collie-mtd-rw.patch                              | 12 ++++++++++++
 .../linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch  | 13 +++++++++++++
 .../linux/linux-yocto-tiny-kexecboot_3.2.bbappend           |  6 +++++-
 recipes-kernel/linux/linux-yocto_3.2.bbappend               |  4 ++++
 11 files changed, 104 insertions(+), 2 deletions(-)
 create mode 100644 recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-eraseinfo.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-probe.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.patch
 create mode 100644 recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch
Paul Eggleton - March 7, 2013, 6:22 p.m.
On Friday 01 March 2013 00:57:51 Andrea Adami wrote:
> * experimental patches to fix mtd partitions detection
> * kexecboot now finds cramfs
> * mount of orig. cramfs partition tested for fun :)
> * collie's NOR is still READ-ONLY on boot
> *
> * while there, add a patch to mcp.h to fix
> * collie_battery.c compilation
> 
> Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
> ---
>  .../linux/linux-yocto-3.2/collie/collie-eraseinfo.patch     | 11
> +++++++++++ .../linux/linux-yocto-3.2/collie/collie-jedec-probe.patch   |
> 11 +++++++++++ .../linux/linux-yocto-3.2/collie/collie-mtd-rw.patch       
> | 12 ++++++++++++ recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg   
>   |  2 +- .../linux/linux-yocto-3.2/collie/mcp-device.patch           | 13
> +++++++++++++ .../collie/collie-eraseinfo.patch                           |
> 11 +++++++++++ .../collie/collie-jedec-probe.patch                        
> | 11 +++++++++++ .../collie/collie-mtd-rw.patch                            
>  | 12 ++++++++++++
> .../linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch  | 13
> +++++++++++++ .../linux/linux-yocto-tiny-kexecboot_3.2.bbappend           |
>  6 +++++- recipes-kernel/linux/linux-yocto_3.2.bbappend               |  4
> ++++ 11 files changed, 104 insertions(+), 2 deletions(-)
>  create mode 100644
> recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch create
> mode 100644
> recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch create
> mode 100644 recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch
> create mode 100644
> recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch create mode
> 100644
> recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-eraseinfo
> .patch create mode 100644
> recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-pro
> be.patch create mode 100644
> recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.pa
> tch create mode 100644
> recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch
> 
> diff --git
> a/recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch
> b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch new
> file mode 100644
> index 0000000..47e814d
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch
> @@ -0,0 +1,11 @@
> +--- a/drivers/mtd/chips/jedec_probe.c
> ++++ b/drivers/mtd/chips/jedec_probe.c
> +@@ -1305,7 +1305,7 @@
> + 		.cmd_set	= P_ID_INTEL_STD,
> + 		.nr_regions	= 1,
> + 		.regions	= {
> +-			ERASEINFO(0x40000,16),
> ++			ERASEINFO(0x08000,128),
> + 		}
> + 	}, {
> + 		.mfr_id		= CFI_MFR_SST,
> diff --git
> a/recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch
> b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch new
> file mode 100644
> index 0000000..530643e
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch
> @@ -0,0 +1,11 @@
> +--- a/arch/arm/mach-sa1100/collie.c
> ++++ b/arch/arm/mach-sa1100/collie.c
> +@@ -289,7 +289,7 @@
> + }
> +
> + static struct flash_platform_data collie_flash_data = {
> +-	.map_name	= "cfi_probe",
> ++	.map_name	= "jedec_probe",
> + 	.init		= collie_flash_init,
> + 	.set_vpp	= collie_set_vpp,
> + 	.exit		= collie_flash_exit,
> diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch
> b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch new file
> mode 100644
> index 0000000..193004d
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch
> @@ -0,0 +1,12 @@
> +diff --git a/drivers/mtd/maps/sa1100-flash.c
> b/drivers/mtd/maps/sa1100-flash.c +index fa9c0a9..bf6b04f 100644
> +--- a/drivers/mtd/maps/sa1100-flash.c
> ++++ b/drivers/mtd/maps/sa1100-flash.c
> +@@ -206,6 +206,7 @@ static int sa1100_probe_subdev(struct sa_subdev_info
> *subdev, struct resource *r + 		goto err;
> + 	}
> + 	subdev->mtd->owner = THIS_MODULE;
> ++	subdev->mtd->unlock(subdev->mtd, 0xc0000, subdev->mtd->size - 0xc0000);
> +
> + 	printk(KERN_INFO "SA1100 flash: CFI device at 0x%08lx, %uMiB, %d-bit\n",
> + 		phys, (unsigned)(subdev->mtd->size >> 20),
> diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg
> b/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg index
> 2f5ead7..a47461e 100644
> --- a/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg
> +++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg
> @@ -1473,7 +1473,7 @@ CONFIG_APM_POWER=y
>  # CONFIG_TEST_POWER is not set
>  # CONFIG_BATTERY_DS2780 is not set
>  # CONFIG_BATTERY_DS2782 is not set
> -# CONFIG_BATTERY_COLLIE is not set
> +CONFIG_BATTERY_COLLIE=y
>  # CONFIG_BATTERY_BQ20Z75 is not set
>  # CONFIG_BATTERY_BQ27x00 is not set
>  # CONFIG_BATTERY_MAX17040 is not set
> diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch
> b/recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch new file
> mode 100644
> index 0000000..9a0a8ba
> --- /dev/null
> +++ b/recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch
> @@ -0,0 +1,13 @@
> +--- a/include/linux/mfd/mcp.h	2013-02-18 00:14:09.000000000 +0100
> ++++ b/include/linux/mfd/mcp.h	2013-02-17 23:55:52.000000000 +0100
> +@@ -10,6 +10,8 @@
> + #ifndef MCP_H
> + #define MCP_H
> +
> ++#include <linux/device.h>
> ++
> + struct mcp_ops;
> +
> + struct mcp {
> +
> +
> diff --git
> a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-erasein
> fo.patch
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-erasein
> fo.patch new file mode 100644
> index 0000000..47e814d
> --- /dev/null
> +++
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-erasein
> fo.patch @@ -0,0 +1,11 @@
> +--- a/drivers/mtd/chips/jedec_probe.c
> ++++ b/drivers/mtd/chips/jedec_probe.c
> +@@ -1305,7 +1305,7 @@
> + 		.cmd_set	= P_ID_INTEL_STD,
> + 		.nr_regions	= 1,
> + 		.regions	= {
> +-			ERASEINFO(0x40000,16),
> ++			ERASEINFO(0x08000,128),
> + 		}
> + 	}, {
> + 		.mfr_id		= CFI_MFR_SST,
> diff --git
> a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-p
> robe.patch
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-p
> robe.patch new file mode 100644
> index 0000000..530643e
> --- /dev/null
> +++
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-p
> robe.patch @@ -0,0 +1,11 @@
> +--- a/arch/arm/mach-sa1100/collie.c
> ++++ b/arch/arm/mach-sa1100/collie.c
> +@@ -289,7 +289,7 @@
> + }
> +
> + static struct flash_platform_data collie_flash_data = {
> +-	.map_name	= "cfi_probe",
> ++	.map_name	= "jedec_probe",
> + 	.init		= collie_flash_init,
> + 	.set_vpp	= collie_set_vpp,
> + 	.exit		= collie_flash_exit,
> diff --git
> a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.
> patch
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.
> patch new file mode 100644
> index 0000000..193004d
> --- /dev/null
> +++
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.
> patch @@ -0,0 +1,12 @@
> +diff --git a/drivers/mtd/maps/sa1100-flash.c
> b/drivers/mtd/maps/sa1100-flash.c +index fa9c0a9..bf6b04f 100644
> +--- a/drivers/mtd/maps/sa1100-flash.c
> ++++ b/drivers/mtd/maps/sa1100-flash.c
> +@@ -206,6 +206,7 @@ static int sa1100_probe_subdev(struct sa_subdev_info
> *subdev, struct resource *r + 		goto err;
> + 	}
> + 	subdev->mtd->owner = THIS_MODULE;
> ++	subdev->mtd->unlock(subdev->mtd, 0xc0000, subdev->mtd->size - 0xc0000);
> +
> + 	printk(KERN_INFO "SA1100 flash: CFI device at 0x%08lx, %uMiB, %d-bit\n",
> + 		phys, (unsigned)(subdev->mtd->size >> 20),
> diff --git
> a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.pat
> ch
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.pat
> ch new file mode 100644
> index 0000000..9a0a8ba
> --- /dev/null
> +++
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.pat
> ch @@ -0,0 +1,13 @@
> +--- a/include/linux/mfd/mcp.h	2013-02-18 00:14:09.000000000 +0100
> ++++ b/include/linux/mfd/mcp.h	2013-02-17 23:55:52.000000000 +0100
> +@@ -10,6 +10,8 @@
> + #ifndef MCP_H
> + #define MCP_H
> +
> ++#include <linux/device.h>
> ++
> + struct mcp_ops;
> +
> + struct mcp {
> +
> +
> diff --git a/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend
> b/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend index
> 6ab9f2f..7f03732 100644
> --- a/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend
> +++ b/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend
> @@ -34,12 +34,16 @@ SRC_URI_append_c7x0 = " \
>  SRC_URI_append_collie = " \
>             file://collie-tiny.scc \
>             file://collie-kexecboot.cfg \
> -           file://qvga/logo_linux_clut224.ppm.bz2 \
>            
> file://0001-pcmcia-pxa2xx_sharpsl-retain-ops-structure-on-collie.patch \
> file://locomo_kbd_tweak-r2.patch \
>             file://collie_remove_irq_to_gpio.patch \
> +           file://mcp-device.patch \
> +           file://collie-jedec-probe.patch \
> +           file://collie-eraseinfo.patch \
> +           file://qvga/logo_linux_clut224.ppm.bz2 \
>             file://revert-check-on-console-device.patch \
>             "
> +#           file://collie-mtd-rw.patch
> 
>  SRC_URI_append_poodle = " \
>             file://poodle-tiny.scc \
> diff --git a/recipes-kernel/linux/linux-yocto_3.2.bbappend
> b/recipes-kernel/linux/linux-yocto_3.2.bbappend index a4ff596..6b765d5
> 100644
> --- a/recipes-kernel/linux/linux-yocto_3.2.bbappend
> +++ b/recipes-kernel/linux/linux-yocto_3.2.bbappend
> @@ -27,8 +27,12 @@ SRC_URI_append_collie = " \
>             file://qvga/logo_linux_clut224.ppm.bz2 \
>            
> file://0001-pcmcia-pxa2xx_sharpsl-retain-ops-structure-on-collie.patch \
> file://collie_remove_irq_to_gpio.patch \
> +           file://mcp-device.patch \
> +           file://collie-jedec-probe.patch \
> +           file://collie-eraseinfo.patch \
>             file://locomo_kbd_tweak-r2.patch \
>             "
> +#           file://collie-mtd-rw.patch
> 
>  SRC_URI_append_poodle = " \
>             file://poodle-standard.scc \

This two have been applied, thanks.

Cheers,
Paul

Patch

diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch
new file mode 100644
index 0000000..47e814d
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-eraseinfo.patch
@@ -0,0 +1,11 @@ 
+--- a/drivers/mtd/chips/jedec_probe.c
++++ b/drivers/mtd/chips/jedec_probe.c
+@@ -1305,7 +1305,7 @@
+ 		.cmd_set	= P_ID_INTEL_STD,
+ 		.nr_regions	= 1,
+ 		.regions	= {
+-			ERASEINFO(0x40000,16),
++			ERASEINFO(0x08000,128),
+ 		}
+ 	}, {
+ 		.mfr_id		= CFI_MFR_SST,
diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch
new file mode 100644
index 0000000..530643e
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-jedec-probe.patch
@@ -0,0 +1,11 @@ 
+--- a/arch/arm/mach-sa1100/collie.c
++++ b/arch/arm/mach-sa1100/collie.c
+@@ -289,7 +289,7 @@
+ }
+ 
+ static struct flash_platform_data collie_flash_data = {
+-	.map_name	= "cfi_probe",
++	.map_name	= "jedec_probe",
+ 	.init		= collie_flash_init,
+ 	.set_vpp	= collie_set_vpp,
+ 	.exit		= collie_flash_exit,
diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch
new file mode 100644
index 0000000..193004d
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie-mtd-rw.patch
@@ -0,0 +1,12 @@ 
+diff --git a/drivers/mtd/maps/sa1100-flash.c b/drivers/mtd/maps/sa1100-flash.c
+index fa9c0a9..bf6b04f 100644
+--- a/drivers/mtd/maps/sa1100-flash.c
++++ b/drivers/mtd/maps/sa1100-flash.c
+@@ -206,6 +206,7 @@ static int sa1100_probe_subdev(struct sa_subdev_info *subdev, struct resource *r
+ 		goto err;
+ 	}
+ 	subdev->mtd->owner = THIS_MODULE;
++	subdev->mtd->unlock(subdev->mtd, 0xc0000, subdev->mtd->size - 0xc0000);
+ 
+ 	printk(KERN_INFO "SA1100 flash: CFI device at 0x%08lx, %uMiB, %d-bit\n",
+ 		phys, (unsigned)(subdev->mtd->size >> 20),
diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg b/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg
index 2f5ead7..a47461e 100644
--- a/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg
+++ b/recipes-kernel/linux/linux-yocto-3.2/collie/collie.cfg
@@ -1473,7 +1473,7 @@  CONFIG_APM_POWER=y
 # CONFIG_TEST_POWER is not set
 # CONFIG_BATTERY_DS2780 is not set
 # CONFIG_BATTERY_DS2782 is not set
-# CONFIG_BATTERY_COLLIE is not set
+CONFIG_BATTERY_COLLIE=y
 # CONFIG_BATTERY_BQ20Z75 is not set
 # CONFIG_BATTERY_BQ27x00 is not set
 # CONFIG_BATTERY_MAX17040 is not set
diff --git a/recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch b/recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch
new file mode 100644
index 0000000..9a0a8ba
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-3.2/collie/mcp-device.patch
@@ -0,0 +1,13 @@ 
+--- a/include/linux/mfd/mcp.h	2013-02-18 00:14:09.000000000 +0100
++++ b/include/linux/mfd/mcp.h	2013-02-17 23:55:52.000000000 +0100
+@@ -10,6 +10,8 @@
+ #ifndef MCP_H
+ #define MCP_H
+ 
++#include <linux/device.h>
++
+ struct mcp_ops;
+ 
+ struct mcp {
+
+
diff --git a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-eraseinfo.patch b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-eraseinfo.patch
new file mode 100644
index 0000000..47e814d
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-eraseinfo.patch
@@ -0,0 +1,11 @@ 
+--- a/drivers/mtd/chips/jedec_probe.c
++++ b/drivers/mtd/chips/jedec_probe.c
+@@ -1305,7 +1305,7 @@
+ 		.cmd_set	= P_ID_INTEL_STD,
+ 		.nr_regions	= 1,
+ 		.regions	= {
+-			ERASEINFO(0x40000,16),
++			ERASEINFO(0x08000,128),
+ 		}
+ 	}, {
+ 		.mfr_id		= CFI_MFR_SST,
diff --git a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-probe.patch b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-probe.patch
new file mode 100644
index 0000000..530643e
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-jedec-probe.patch
@@ -0,0 +1,11 @@ 
+--- a/arch/arm/mach-sa1100/collie.c
++++ b/arch/arm/mach-sa1100/collie.c
+@@ -289,7 +289,7 @@
+ }
+ 
+ static struct flash_platform_data collie_flash_data = {
+-	.map_name	= "cfi_probe",
++	.map_name	= "jedec_probe",
+ 	.init		= collie_flash_init,
+ 	.set_vpp	= collie_set_vpp,
+ 	.exit		= collie_flash_exit,
diff --git a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.patch b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.patch
new file mode 100644
index 0000000..193004d
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/collie-mtd-rw.patch
@@ -0,0 +1,12 @@ 
+diff --git a/drivers/mtd/maps/sa1100-flash.c b/drivers/mtd/maps/sa1100-flash.c
+index fa9c0a9..bf6b04f 100644
+--- a/drivers/mtd/maps/sa1100-flash.c
++++ b/drivers/mtd/maps/sa1100-flash.c
+@@ -206,6 +206,7 @@ static int sa1100_probe_subdev(struct sa_subdev_info *subdev, struct resource *r
+ 		goto err;
+ 	}
+ 	subdev->mtd->owner = THIS_MODULE;
++	subdev->mtd->unlock(subdev->mtd, 0xc0000, subdev->mtd->size - 0xc0000);
+ 
+ 	printk(KERN_INFO "SA1100 flash: CFI device at 0x%08lx, %uMiB, %d-bit\n",
+ 		phys, (unsigned)(subdev->mtd->size >> 20),
diff --git a/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch
new file mode 100644
index 0000000..9a0a8ba
--- /dev/null
+++ b/recipes-kernel/linux/linux-yocto-tiny-kexecboot-3.2/collie/mcp-device.patch
@@ -0,0 +1,13 @@ 
+--- a/include/linux/mfd/mcp.h	2013-02-18 00:14:09.000000000 +0100
++++ b/include/linux/mfd/mcp.h	2013-02-17 23:55:52.000000000 +0100
+@@ -10,6 +10,8 @@
+ #ifndef MCP_H
+ #define MCP_H
+ 
++#include <linux/device.h>
++
+ struct mcp_ops;
+ 
+ struct mcp {
+
+
diff --git a/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend b/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend
index 6ab9f2f..7f03732 100644
--- a/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend
+++ b/recipes-kernel/linux/linux-yocto-tiny-kexecboot_3.2.bbappend
@@ -34,12 +34,16 @@  SRC_URI_append_c7x0 = " \
 SRC_URI_append_collie = " \
            file://collie-tiny.scc \
            file://collie-kexecboot.cfg \
-           file://qvga/logo_linux_clut224.ppm.bz2 \
            file://0001-pcmcia-pxa2xx_sharpsl-retain-ops-structure-on-collie.patch \
            file://locomo_kbd_tweak-r2.patch \
            file://collie_remove_irq_to_gpio.patch \
+           file://mcp-device.patch \
+           file://collie-jedec-probe.patch \
+           file://collie-eraseinfo.patch \
+           file://qvga/logo_linux_clut224.ppm.bz2 \
            file://revert-check-on-console-device.patch \
            "
+#           file://collie-mtd-rw.patch
 
 SRC_URI_append_poodle = " \
            file://poodle-tiny.scc \
diff --git a/recipes-kernel/linux/linux-yocto_3.2.bbappend b/recipes-kernel/linux/linux-yocto_3.2.bbappend
index a4ff596..6b765d5 100644
--- a/recipes-kernel/linux/linux-yocto_3.2.bbappend
+++ b/recipes-kernel/linux/linux-yocto_3.2.bbappend
@@ -27,8 +27,12 @@  SRC_URI_append_collie = " \
            file://qvga/logo_linux_clut224.ppm.bz2 \
            file://0001-pcmcia-pxa2xx_sharpsl-retain-ops-structure-on-collie.patch \
            file://collie_remove_irq_to_gpio.patch \
+           file://mcp-device.patch \
+           file://collie-jedec-probe.patch \
+           file://collie-eraseinfo.patch \
            file://locomo_kbd_tweak-r2.patch \
            "
+#           file://collie-mtd-rw.patch
 
 SRC_URI_append_poodle = " \
            file://poodle-standard.scc \