diff options
Diffstat (limited to 'target')
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 @@ |
