summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
Diffstat (limited to 'target')
-rw-r--r--target/arch.lst1
-rw-r--r--target/config/Config.in25
-rw-r--r--target/config/Config.in.arch.choice6
-rw-r--r--target/config/Config.in.arch.default18
-rw-r--r--target/config/Config.in.system.choice1
-rw-r--r--target/linux/Config.in1
-rw-r--r--target/linux/config/Config.in.microblaze4
-rw-r--r--target/linux/patches/2.6.39.4/arm-statcmd.patch12
-rw-r--r--target/linux/patches/2.6.39.4/brcm.patch465
-rw-r--r--target/linux/patches/2.6.39.4/bsd-compatibility.patch2512
-rw-r--r--target/linux/patches/2.6.39.4/cris-etrax.patch12
-rw-r--r--target/linux/patches/2.6.39.4/cris-thread-macro.patch12
-rw-r--r--target/linux/patches/2.6.39.4/cris.patch5739
-rw-r--r--target/linux/patches/2.6.39.4/defaults.patch26
-rw-r--r--target/linux/patches/2.6.39.4/fon2100.patch6279
-rw-r--r--target/linux/patches/2.6.39.4/gemalto.patch11
-rw-r--r--target/linux/patches/2.6.39.4/mips-malta.patch135
-rw-r--r--target/linux/patches/2.6.39.4/mmc-host.patch36
-rw-r--r--target/linux/patches/2.6.39.4/mtd-rootfs.patch786
-rw-r--r--target/linux/patches/2.6.39.4/non-static.patch33
-rw-r--r--target/linux/patches/2.6.39.4/rb4xx.patch25253
-rw-r--r--target/linux/patches/2.6.39.4/sparc-include.patch11
-rw-r--r--target/linux/patches/2.6.39.4/startup.patch20
-rw-r--r--target/linux/patches/2.6.39.4/usb-defaults-off.patch32
-rw-r--r--target/linux/patches/2.6.39.4/uuid.patch255
-rw-r--r--target/linux/patches/2.6.39.4/vga-cons-default-off.patch12
-rw-r--r--target/linux/patches/2.6.39.4/wlan-cf.patch11
-rw-r--r--target/linux/patches/2.6.39.4/x86-build.patch11
-rw-r--r--target/linux/patches/2.6.39.4/zlib-inflate.patch12
-rw-r--r--target/linux/patches/3.11.10/microblaze-dts.patch475
-rw-r--r--target/linux/patches/3.11.10/microblaze-setup.patch12
-rw-r--r--target/linux/patches/3.6.11/bsd-compatibility.patch2568
-rw-r--r--target/linux/patches/3.6.11/cris-etrax.patch12
-rw-r--r--target/linux/patches/3.6.11/defaults.patch22
-rw-r--r--target/linux/patches/3.6.11/disable-netfilter.patch160
-rw-r--r--target/linux/patches/3.6.11/gemalto.patch11
-rw-r--r--target/linux/patches/3.6.11/lemote-rfkill.patch21
-rw-r--r--target/linux/patches/3.6.11/mtd-rootfs.patch26
-rw-r--r--target/linux/patches/3.6.11/non-static.patch33
-rw-r--r--target/linux/patches/3.6.11/raspberry.patch274921
-rw-r--r--target/linux/patches/3.6.11/startup.patch20
-rw-r--r--target/linux/patches/3.6.11/usb-defaults-off.patch20
-rw-r--r--target/linux/patches/3.6.11/uuid.patch263
-rw-r--r--target/linux/patches/3.6.11/vga-cons-default-off.patch12
-rw-r--r--target/linux/patches/3.6.11/wlan-cf.patch11
-rw-r--r--target/linux/patches/3.6.11/zlib-inflate.patch12
-rw-r--r--target/linux/patches/3.9.11/arm-spitz.patch27
-rw-r--r--target/linux/patches/3.9.11/bsd-compatibility.patch2568
-rw-r--r--target/linux/patches/3.9.11/cris-etrax.patch12
-rw-r--r--target/linux/patches/3.9.11/defaults.patch22
-rw-r--r--target/linux/patches/3.9.11/disable-netfilter.patch160
-rw-r--r--target/linux/patches/3.9.11/gemalto.patch11
-rw-r--r--target/linux/patches/3.9.11/lemote-rfkill.patch21
-rw-r--r--target/linux/patches/3.9.11/mtd-rootfs.patch26
-rw-r--r--target/linux/patches/3.9.11/non-static.patch33
-rw-r--r--target/linux/patches/3.9.11/raspberry.patch275238
-rw-r--r--target/linux/patches/3.9.11/startup.patch22
-rw-r--r--target/linux/patches/3.9.11/usb-defaults-off.patch20
-rw-r--r--target/linux/patches/3.9.11/uuid.patch263
-rw-r--r--target/linux/patches/3.9.11/vga-cons-default-off.patch12
-rw-r--r--target/linux/patches/3.9.11/wlan-cf.patch11
-rw-r--r--target/linux/patches/3.9.11/zlib-inflate.patch12
-rw-r--r--target/microblaze/Config.in9
-rw-r--r--target/microblaze/Makefile42
-rw-r--r--target/microblaze/kernel.config1337
-rw-r--r--target/microblaze/sys-available/qemu-microblaze15
-rw-r--r--target/microblaze/sys-available/qemu-microblazeel15
-rw-r--r--target/microblaze/sys-available/toolchain-microblaze9
-rw-r--r--target/microblaze/sys-available/toolchain-microblazeel9
-rw-r--r--target/microblaze/target.mk5
-rw-r--r--target/microblaze/uclibc.config.big241
-rw-r--r--target/microblaze/uclibc.config.little257
-rw-r--r--target/mips/sys-available/qemu-mipsel2
-rw-r--r--target/tarch.lst1
74 files changed, 2461 insertions, 598269 deletions
diff --git a/target/arch.lst b/target/arch.lst
index 3556ee214..e2b207f5f 100644
--- a/target/arch.lst
+++ b/target/arch.lst
@@ -2,6 +2,7 @@ arm
avr32
cris
m68k
+microblaze
mips
ppc
ppc64
diff --git a/target/config/Config.in b/target/config/Config.in
index f5cf3e120..f551e21a0 100644
--- a/target/config/Config.in
+++ b/target/config/Config.in
@@ -7,6 +7,9 @@ config ADK_TARGET_KERNEL_VMLINUZ
config ADK_TARGET_KERNEL_ZIMAGE
boolean
+config ADK_TARGET_KERNEL_LINUXBIN
+ boolean
+
config ADK_TARGET_KERNEL_IMAGE
boolean
@@ -17,6 +20,7 @@ config ADK_TARGET_KERNEL
string
default "zImage" if ADK_TARGET_KERNEL_ZIMAGE
default "Image" if ADK_TARGET_KERNEL_IMAGE
+ default "simpleImage.system" if ADK_TARGET_KERNEL_LINUXBIN
default "vmlinuz" if ADK_TARGET_KERNEL_VMLINUZ
default "bzImage" if ADK_TARGET_KERNEL_BZIMAGE
default "vmlinux"
@@ -412,6 +416,9 @@ config ADK_CPU_MIPS32
config ADK_CPU_MIPS64
boolean
+config ADK_CPU_MICROBLAZE
+ boolean
+
config ADK_CPU_RASPBERRY_PI
boolean
@@ -426,6 +433,8 @@ config ADK_TARGET_CPU_ARCH
default "i686" if ADK_CPU_PENTIUM_M
default "i686" if ADK_CPU_ATOM
default "m68k" if ADK_LINUX_M68K
+ default "microblaze" if ADK_LINUX_MICROBLAZE && ADK_big
+ default "microblazeel" if ADK_LINUX_MICROBLAZE && ADK_little
default "mips64" if ADK_LINUX_MIPS && ADK_big && ADK_TARGET_KERNEL64
default "mips64el" if ADK_LINUX_MIPS && ADK_little && ADK_TARGET_KERNEL64
default "mips" if ADK_LINUX_MIPS && ADK_big
@@ -492,6 +501,8 @@ config ADK_TARGET_CMDLINE
default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40
default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_INTEL_ATOM
default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_QEMU_I686
+ default "console=ttyUL0" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
+ default "console=ttyUL0" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL
default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_VBOX_I686
default "console=ttyS0,115200 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
default "console=ttyAMA0 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILE
@@ -537,6 +548,7 @@ config ADK_TARGET_LIB_UCLIBC
boolean
select ADK_uclibc
depends on \
+ !ADK_LINUX_MICROBLAZE && \
!ADK_LINUX_SPARC64 && \
!ADK_LINUX_PPC64 && \
!ADK_LINUX_NATIVE
@@ -551,10 +563,8 @@ config ADK_TARGET_LIB_EGLIBC
ADK_LINUX_ARM || \
ADK_LINUX_ARMEB || \
ADK_LINUX_M68K || \
+ ADK_LINUX_MICROBLAZE || \
ADK_LINUX_MIPS || \
- ADK_LINUX_MIPSEL || \
- ADK_LINUX_MIPS64 || \
- ADK_LINUX_MIPS64EL || \
ADK_LINUX_PPC || \
ADK_LINUX_PPC64 || \
ADK_LINUX_SH || \
@@ -573,10 +583,8 @@ config ADK_TARGET_LIB_GLIBC
ADK_LINUX_ARM || \
ADK_LINUX_ARMEB || \
ADK_LINUX_M68K || \
+ ADK_LINUX_MICROBLAZE || \
ADK_LINUX_MIPS || \
- ADK_LINUX_MIPSEL || \
- ADK_LINUX_MIPS64 || \
- ADK_LINUX_MIPS64EL || \
ADK_LINUX_PPC || \
ADK_LINUX_PPC64 || \
ADK_LINUX_SH || \
@@ -593,8 +601,8 @@ config ADK_TARGET_LIB_MUSL
select ADK_musl
depends on \
ADK_LINUX_ARM || \
+ ADK_LINUX_MICROBLAZE || \
ADK_LINUX_MIPS || \
- ADK_LINUX_MIPSEL || \
ADK_LINUX_PPC || \
ADK_LINUX_X86 || \
ADK_LINUX_X86_64
@@ -633,6 +641,7 @@ config ADK_TARGET_ROOTFS_INITRAMFS
ADK_HARDWARE_QEMU || \
ADK_TARGET_SYSTEM_ARANYM_M68K || \
ADK_LINUX_ARM || \
+ ADK_LINUX_MICROBLAZE || \
ADK_LINUX_MIPS || \
ADK_LINUX_PPC || \
ADK_LINUX_SPARC || \
@@ -652,6 +661,7 @@ config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
depends on \
ADK_HARDWARE_QEMU || \
ADK_LINUX_ARM || \
+ ADK_LINUX_MICROBLAZE || \
ADK_LINUX_MIPS || \
ADK_LINUX_PPC || \
ADK_LINUX_SPARC || \
@@ -659,7 +669,6 @@ config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
ADK_LINUX_X86_64 || \
ADK_LINUX_NATIVE
depends on !ADK_HARDWARE_VBOX
- depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI
select ADK_KERNEL_EXT2_FS
help
create an read-only initramfs system.
diff --git a/target/config/Config.in.arch.choice b/target/config/Config.in.arch.choice
index 1ab3a4ecc..ce58aa2c1 100644
--- a/target/config/Config.in.arch.choice
+++ b/target/config/Config.in.arch.choice
@@ -38,6 +38,12 @@ config ADK_LINUX_M68K
help
Support for m68k systems.
+config ADK_LINUX_MICROBLAZE
+ bool "microblaze system"
+ select ADK_microblaze
+ help
+ Support for Microblaze systems.
+
config ADK_LINUX_MIPS
bool "mips system"
select ADK_mips
diff --git a/target/config/Config.in.arch.default b/target/config/Config.in.arch.default
index 1d3453c2b..737ce525c 100644
--- a/target/config/Config.in.arch.default
+++ b/target/config/Config.in.arch.default
@@ -5,9 +5,6 @@ config ADK_native
config ADK_arm
bool
-config ADK_armeb
- bool
-
config ADK_avr32
bool
@@ -17,16 +14,10 @@ config ADK_cris
config ADK_m68k
bool
-config ADK_mips
- bool
-
-config ADK_mipsel
- bool
-
-config ADK_mips64
+config ADK_microblaze
bool
-config ADK_mips64el
+config ADK_mips
bool
config ADK_ppc
@@ -53,14 +44,11 @@ config ADK_x86
config ADK_TARGET_ARCH
string
default "arm" if ADK_arm
- default "arm" if ADK_armeb
default "avr32" if ADK_avr32
default "cris" if ADK_cris
default "m68k" if ADK_m68k
+ default "microblaze" if ADK_microblaze
default "mips" if ADK_mips
- default "mips" if ADK_mipsel
- default "mips" if ADK_mips64
- default "mips" if ADK_mips64el
default "ppc" if ADK_ppc
default "ppc64" if ADK_ppc64
default "sparc" if ADK_sparc
diff --git a/target/config/Config.in.system.choice b/target/config/Config.in.system.choice
index 83f2e4e3d..8f6f7413f 100644
--- a/target/config/Config.in.system.choice
+++ b/target/config/Config.in.system.choice
@@ -2,6 +2,7 @@ source "target/arm/Config.in"
source "target/avr32/Config.in"
source "target/cris/Config.in"
source "target/m68k/Config.in"
+source "target/microblaze/Config.in"
source "target/mips/Config.in"
source "target/ppc/Config.in"
source "target/ppc64/Config.in"
diff --git a/target/linux/Config.in b/target/linux/Config.in
index e4b81dd2f..79511489c 100644
--- a/target/linux/Config.in
+++ b/target/linux/Config.in
@@ -18,6 +18,7 @@ source target/linux/config/Config.in.bluetooth
source target/linux/config/Config.in.watchdog
source target/linux/config/Config.in.leds
source target/linux/config/Config.in.misc
+source target/linux/config/Config.in.microblaze
source target/linux/config/Config.in.mips
source target/linux/config/Config.in.lib
source target/linux/config/Config.in.pm
diff --git a/target/linux/config/Config.in.microblaze b/target/linux/config/Config.in.microblaze
new file mode 100644
index 000000000..5a6764250
--- /dev/null
+++ b/target/linux/config/Config.in.microblaze
@@ -0,0 +1,4 @@
+config ADK_KERNEL_OPT_LIB_ASM
+ default y if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
+ default n
+ boolean
diff --git a/target/linux/patches/2.6.39.4/arm-statcmd.patch b/target/linux/patches/2.6.39.4/arm-statcmd.patch
deleted file mode 100644
index 3aed60cbc..000000000
--- a/target/linux/patches/2.6.39.4/arm-statcmd.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nur linux-2.6.39-rc6.orig/arch/arm/boot/compressed/Makefile linux-2.6.39-rc6/arch/arm/boot/compressed/Makefile
---- linux-2.6.39-rc6.orig/arch/arm/boot/compressed/Makefile 2011-05-04 04:59:13.000000000 +0200
-+++ linux-2.6.39-rc6/arch/arm/boot/compressed/Makefile 2011-05-10 10:35:34.000000000 +0200
-@@ -99,7 +99,7 @@
- asflags-y := -Wa,-march=all
-
- # Provide size of uncompressed kernel to the decompressor via a linker symbol.
--LDFLAGS_vmlinux = --defsym _image_size=$(shell stat -c "%s" $(obj)/../Image)
-+LDFLAGS_vmlinux = --defsym _image_size=$(shell if stat -qs .>/dev/null 2>&1;then statcmd='stat -f %z';else statcmd='stat -c %s';fi; $$statcmd "%s" $(obj)/../Image)
- # Supply ZRELADDR to the decompressor via a linker symbol.
- ifneq ($(CONFIG_AUTO_ZRELADDR),y)
- LDFLAGS_vmlinux += --defsym zreladdr=$(ZRELADDR)
diff --git a/target/linux/patches/2.6.39.4/brcm.patch b/target/linux/patches/2.6.39.4/brcm.patch
deleted file mode 100644
index 548d26068..000000000
--- a/target/linux/patches/2.6.39.4/brcm.patch
+++ /dev/null
@@ -1,465 +0,0 @@
-diff -Nur linux-2.6.39.4.orig/arch/mips/Kconfig linux-2.6.39.4/arch/mips/Kconfig
---- linux-2.6.39.4.orig/arch/mips/Kconfig 2011-08-03 21:43:28.000000000 +0200
-+++ linux-2.6.39.4/arch/mips/Kconfig 2012-06-02 20:35:49.000000000 +0200
-@@ -103,6 +103,12 @@
- select GENERIC_GPIO
- select SYS_HAS_EARLY_PRINTK
- select CFE
-+ select SYS_SUPPORTS_ZBOOT_UART16550
-+ select HAVE_KERNEL_GZIP
-+ select HAVE_KERNEL_BZIP2
-+ select HAVE_KERNEL_LZMA
-+ select HAVE_KERNEL_XZ
-+ select HAVE_KERNEL_LZO
- help
- Support for BCM47XX based boards
-
-diff -Nur linux-2.6.39.4.orig/arch/mips/Makefile linux-2.6.39.4/arch/mips/Makefile
---- linux-2.6.39.4.orig/arch/mips/Makefile 2011-08-03 21:43:28.000000000 +0200
-+++ linux-2.6.39.4/arch/mips/Makefile 2012-06-02 20:35:49.000000000 +0200
-@@ -76,6 +76,7 @@
- all-$(CONFIG_BOOT_ELF32) := $(vmlinux-32)
- all-$(CONFIG_BOOT_ELF64) := $(vmlinux-64)
- all-$(CONFIG_SYS_SUPPORTS_ZBOOT)+= vmlinuz
-+all-$(CONFIG_BCM47XX) += vmlinuz.elf
-
- #
- # GCC uses -G 0 -mabicalls -fpic as default. We don't want PIC in the kernel
-@@ -276,7 +277,7 @@
- $(Q)$(MAKE) $(build)=arch/mips/boot VMLINUX=$(vmlinux-32) arch/mips/boot/$@
-
- # boot/compressed
--vmlinuz vmlinuz.bin vmlinuz.ecoff vmlinuz.srec: $(vmlinux-32) FORCE
-+vmlinuz vmlinuz.bin vmlinuz.ecoff vmlinuz.srec vmlinuz.elf: $(vmlinux-32) FORCE
- $(Q)$(MAKE) $(build)=arch/mips/boot/compressed \
- VMLINUX_LOAD_ADDRESS=$(load-y) 32bit-bfd=$(32bit-bfd) $@
-
-@@ -313,6 +314,7 @@
- echo ' vmlinuz.ecoff - ECOFF zboot image'
- echo ' vmlinuz.bin - Raw binary zboot image'
- echo ' vmlinuz.srec - SREC zboot image'
-+ echo ' vmlinuz.elf - ELF self-relocating zboot image'
- echo
- echo ' These will be default as appropriate for a configured platform.'
- endef
-diff -Nur linux-2.6.39.4.orig/arch/mips/bcm47xx/Makefile linux-2.6.39.4/arch/mips/bcm47xx/Makefile
---- linux-2.6.39.4.orig/arch/mips/bcm47xx/Makefile 2011-08-03 21:43:28.000000000 +0200
-+++ linux-2.6.39.4/arch/mips/bcm47xx/Makefile 2012-06-02 20:35:49.000000000 +0200
-@@ -3,4 +3,4 @@
- # under Linux.
- #
-
--obj-y := gpio.o irq.o nvram.o prom.o serial.o setup.o time.o wgt634u.o
-+obj-y := gpio.o irq.o nvram.o prom.o serial.o setup.o time.o platform.o
-diff -Nur linux-2.6.39.4.orig/arch/mips/bcm47xx/platform.c linux-2.6.39.4/arch/mips/bcm47xx/platform.c
---- linux-2.6.39.4.orig/arch/mips/bcm47xx/platform.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.39.4/arch/mips/bcm47xx/platform.c 2012-06-02 20:35:49.000000000 +0200
-@@ -0,0 +1,146 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License. See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Copyright (C) 2010, 2011 Waldemar Brodkorb <wbx@openadk.org>
-+ * Copyright © 2007, 2011 Thorsten Glaser <tg@freewrt.org>
-+ */
-+
-+#include <linux/platform_device.h>
-+#include <linux/module.h>
-+#include <linux/mtd/physmap.h>
-+#include <linux/ssb/ssb.h>
-+
-+#include <asm/mach-bcm47xx/bcm47xx.h>
-+#include <asm/mach-bcm47xx/nvram.h>
-+
-+#define CFGFS_FLASH_SIZE (128 * 1024)
-+
-+static struct mtd_partition bcm47xx_partitions[] = {
-+#define SLOT_CFE 0
-+ {
-+ .name = "cfe",
-+ .offset = 0,
-+ .size = BCM47XX_OVERRIDE_CFESIZE,
-+ .mask_flags = MTD_WRITEABLE /* force read-only */
-+ },
-+#define SLOT_LINUX 1
-+ {
-+ .name = "linux",
-+ .offset = 0,
-+ .size = 0,
-+ },
-+#define SLOT_ROOTFS 2
-+ {
-+ .name = "rootfs",
-+ .offset = 0,
-+ .size = 0,
-+ },
-+#define SLOT_CFGFS 3
-+ {
-+ .name = "cfgfs",
-+ .offset = 0,
-+ .size = 0,
-+ },
-+#define SLOT_NVRAM 4
-+ {
-+ .name = "nvram",
-+ .offset = 0,
-+ .size = 0,
-+ },
-+};
-+
-+static struct physmap_flash_data bcm47xx_flash_data = {
-+ .parts = bcm47xx_partitions,
-+ .nr_parts = ARRAY_SIZE(bcm47xx_partitions)
-+};
-+
-+static struct resource bcm47xx_flash_resource = {
-+ .flags = IORESOURCE_MEM,
-+};
-+
-+static struct platform_device bcm47xx_flash = {
-+ .name = "physmap-flash",
-+ .id = 0,
-+ .dev = { .platform_data = &bcm47xx_flash_data, },
-+ .resource = &bcm47xx_flash_resource,
-+ .num_resources = 1,
-+};
-+
-+static struct platform_device *bcm47xx_devices[] __initdata = {
-+ &bcm47xx_flash,
-+};
-+
-+struct bcm47xx_trx_header {
-+#define BCM47XX_TRX_MAGIC 0x30524448
-+ u32 magic;
-+ u32 len;
-+ u32 crc32;
-+ u32 flag_version;
-+ u32 offsets[3];
-+};
-+
-+#define UPTODOWN(slot, psize) do { \
-+ posn -= psize; left -= psize; \
-+ bcm47xx_partitions[slot].offset = posn; \
-+ bcm47xx_partitions[slot].size = psize; \
-+} while (/* CONSTCOND */ 0)
-+
-+static int __init bcm47xx_register_devices(void)
-+{
-+ u32 flash_size;
-+ size_t left, posn;
-+ struct ssb_mipscore *mcore = &ssb_bcm47xx.mipscore;
-+ struct bcm47xx_trx_header *trx_hdr;
-+
-+ trx_hdr = (void *)KSEG1ADDR(mcore->flash_window + BCM47XX_OVERRIDE_CFESIZE);
-+
-+ /* devices might have 2, 4 or 8 MB flash size */
-+#ifdef BCM47XX_OVERRIDE_FLASHSIZE
-+ flash_size = BCM47XX_OVERRIDE_FLASHSIZE;
-+ mcore->flash_window_size = flash_size;
-+#define BCM47XX_OVERRODE_FLASHSIZE " (overridden)"
-+#else
-+ flash_size = mcore->flash_window_size;
-+#define BCM47XX_OVERRODE_FLASHSIZE ""
-+#endif
-+ printk(KERN_INFO "FLASH SIZE%s: %x\n", BCM47XX_OVERRODE_FLASHSIZE,
-+ flash_size);
-+
-+ left = flash_size - BCM47XX_OVERRIDE_CFESIZE;
-+ posn = flash_size;
-+ UPTODOWN(SLOT_NVRAM, BCM47XX_OVERRIDE_NVRAMSIZE);
-+ UPTODOWN(SLOT_CFGFS, CFGFS_FLASH_SIZE);
-+ bcm47xx_partitions[SLOT_LINUX].offset = BCM47XX_OVERRIDE_CFESIZE;
-+ bcm47xx_partitions[SLOT_LINUX].size = left;
-+
-+ if (trx_hdr->magic == BCM47XX_TRX_MAGIC) {
-+ bcm47xx_partitions[SLOT_ROOTFS].offset =
-+ bcm47xx_partitions[SLOT_LINUX].offset +
-+ trx_hdr->offsets[1];
-+ bcm47xx_partitions[SLOT_ROOTFS].size =
-+ bcm47xx_partitions[SLOT_LINUX].size -
-+ trx_hdr->offsets[1];
-+ } else
-+ printk("bcm47xx/platform: no TRX header found\n");
-+
-+ printk(KERN_INFO "=== Flash map dump ===\n");
-+ for (posn = 0; posn < bcm47xx_flash_data.nr_parts; ++posn)
-+ printk(KERN_INFO " #%u %08X @%08X '%s'\n",
-+ (unsigned int)posn,
-+ (unsigned int)bcm47xx_partitions[posn].size,
-+ (unsigned int)bcm47xx_partitions[posn].offset,
-+ bcm47xx_partitions[posn].name);
-+ printk(KERN_INFO "=== Hope this works, have a nice day\n");
-+
-+ bcm47xx_flash_data.width = mcore->flash_buswidth;
-+ bcm47xx_flash_resource.start = mcore->flash_window;
-+ bcm47xx_flash_resource.end = mcore->flash_window
-+ + mcore->flash_window_size
-+ - 1;
-+ return platform_add_devices(bcm47xx_devices,
-+ ARRAY_SIZE(bcm47xx_devices));
-+}
-+
-+device_initcall(bcm47xx_register_devices);
-diff -Nur linux-2.6.39.4.orig/arch/mips/boot/compressed/Makefile linux-2.6.39.4/arch/mips/boot/compressed/Makefile
---- linux-2.6.39.4.orig/arch/mips/boot/compressed/Makefile 2011-08-03 21:43:28.000000000 +0200
-+++ linux-2.6.39.4/arch/mips/boot/compressed/Makefile 2012-06-02 20:37:43.000000000 +0200
-@@ -44,6 +44,7 @@
- tool_$(CONFIG_KERNEL_BZIP2) = bzip2
- tool_$(CONFIG_KERNEL_LZMA) = lzma
- tool_$(CONFIG_KERNEL_LZO) = lzo
-+tool_$(CONFIG_KERNEL_XZ) = xzkern
-
- targets += vmlinux.bin.z
- $(obj)/vmlinux.bin.z: $(obj)/vmlinux.bin FORCE
-@@ -58,8 +59,13 @@