From 1b4fc61eea3e3525f3de43e4bcc2aeece9bad0d9 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 28 Jun 2007 20:42:21 +0000 Subject: [PATCH] update magicbox target to 2.6.22-rc6, select gcc 4.2.0 as default for this target (4.1.2 segfaults at compile time) SVN-Revision: 7762 --- target/linux/magicbox-2.6/Makefile | 2 +- .../files/drivers/ide/ppc/magicbox_ide.c | 5 ++ .../patches-2.6.22/001-magicbox_support.patch | 71 +++++++++++++++++++ .../patches-2.6.22/100-cf_slot.patch | 53 ++++++++++++++ toolchain/gcc/Config.in | 1 + toolchain/gcc/Config.version | 11 +-- 6 files changed, 134 insertions(+), 9 deletions(-) create mode 100644 target/linux/magicbox-2.6/patches-2.6.22/001-magicbox_support.patch create mode 100644 target/linux/magicbox-2.6/patches-2.6.22/100-cf_slot.patch diff --git a/target/linux/magicbox-2.6/Makefile b/target/linux/magicbox-2.6/Makefile index f80460fdd4..fd92eacd13 100644 --- a/target/linux/magicbox-2.6/Makefile +++ b/target/linux/magicbox-2.6/Makefile @@ -11,7 +11,7 @@ BOARD:=magicbox BOARDNAME:=Magicbox FEATURES:=squashfs jffs2 -LINUX_VERSION:=2.6.21.5 +LINUX_VERSION:=2.6.22-rc6 include $(INCLUDE_DIR)/kernel-build.mk diff --git a/target/linux/magicbox-2.6/files/drivers/ide/ppc/magicbox_ide.c b/target/linux/magicbox-2.6/files/drivers/ide/ppc/magicbox_ide.c index d1f6d68edb..2e29e8380a 100644 --- a/target/linux/magicbox-2.6/files/drivers/ide/ppc/magicbox_ide.c +++ b/target/linux/magicbox-2.6/files/drivers/ide/ppc/magicbox_ide.c @@ -4,6 +4,7 @@ * GNU General Public License. */ +#include #include #include #include @@ -97,7 +98,11 @@ static void __init ide_magicbox_register(unsigned long addr, memset(&hw, 0, sizeof(hw)); ide_setup_ports(&hw, addr, ide_offsets, caddr + 12, 0, NULL,irq); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) if (ide_register_hw(&hw, &hwif) != -1) +#else + if (ide_register_hw(&hw, 1, &hwif) != -1) +#endif { printk(KERN_NOTICE "magicbox-ide: Registered IDE-CF driver\n"); hwif->mmio = 2; diff --git a/target/linux/magicbox-2.6/patches-2.6.22/001-magicbox_support.patch b/target/linux/magicbox-2.6/patches-2.6.22/001-magicbox_support.patch new file mode 100644 index 0000000000..de7e86be80 --- /dev/null +++ b/target/linux/magicbox-2.6/patches-2.6.22/001-magicbox_support.patch @@ -0,0 +1,71 @@ +Index: linux-2.6.22-rc6/arch/ppc/platforms/4xx/Kconfig +=================================================================== +--- linux-2.6.22-rc6.orig/arch/ppc/platforms/4xx/Kconfig 2007-06-28 08:23:13.508980416 +0200 ++++ linux-2.6.22-rc6/arch/ppc/platforms/4xx/Kconfig 2007-06-28 08:23:15.637656808 +0200 +@@ -53,6 +53,12 @@ + help + This option enables support for the IBM PPC405GP evaluation board. + ++config MAGICBOX ++ bool "MagicBox" ++ select WANT_EARLY_SERIAL ++ help ++ This option enables support for the IBM PPC405EP evaluation board. ++ + config XILINX_ML300 + bool "Xilinx-ML300" + select XILINX_VIRTEX_II_PRO +@@ -184,7 +190,7 @@ + + config IBM_OCP + bool +- depends on ASH || BAMBOO || BUBINGA || CPCI405 || EBONY || EP405 || LUAN || YUCCA || OCOTEA || REDWOOD_5 || REDWOOD_6 || SYCAMORE || TAISHAN || WALNUT ++ depends on ASH || BAMBOO || BUBINGA || CPCI405 || EBONY || EP405 || LUAN || YUCCA || OCOTEA || REDWOOD_5 || REDWOOD_6 || SYCAMORE || TAISHAN || WALNUT || MAGICBOX + default y + + config IBM_EMAC4 +@@ -194,7 +200,7 @@ + + config BIOS_FIXUP + bool +- depends on BUBINGA || EP405 || SYCAMORE || WALNUT || CPCI405 ++ depends on BUBINGA || EP405 || SYCAMORE || WALNUT || CPCI405 || MAGICBOX + default y + + # OAK doesn't exist but wanted to keep this around for any future 403GCX boards +@@ -205,7 +211,7 @@ + + config 405EP + bool +- depends on BUBINGA ++ depends on BUBINGA || MAGICBOX + default y + + config 405GP +Index: linux-2.6.22-rc6/arch/ppc/platforms/4xx/Makefile +=================================================================== +--- linux-2.6.22-rc6.orig/arch/ppc/platforms/4xx/Makefile 2007-06-28 08:23:13.516979200 +0200 ++++ linux-2.6.22-rc6/arch/ppc/platforms/4xx/Makefile 2007-06-28 08:23:15.637656808 +0200 +@@ -14,6 +14,7 @@ + obj-$(CONFIG_SYCAMORE) += sycamore.o + obj-$(CONFIG_TAISHAN) += taishan.o + obj-$(CONFIG_WALNUT) += walnut.o ++obj-$(CONFIG_MAGICBOX) += magicbox.o + obj-$(CONFIG_XILINX_ML300) += xilinx_ml300.o + obj-$(CONFIG_XILINX_ML403) += xilinx_ml403.o + +Index: linux-2.6.22-rc6/include/asm-ppc/ibm4xx.h +=================================================================== +--- linux-2.6.22-rc6.orig/include/asm-ppc/ibm4xx.h 2007-06-28 08:23:13.526977680 +0200 ++++ linux-2.6.22-rc6/include/asm-ppc/ibm4xx.h 2007-06-28 08:23:15.637656808 +0200 +@@ -19,6 +19,10 @@ + + #ifdef CONFIG_40x + ++#if defined(CONFIG_MAGICBOX) ++#include ++#endif ++ + #if defined(CONFIG_BUBINGA) + #include + #endif diff --git a/target/linux/magicbox-2.6/patches-2.6.22/100-cf_slot.patch b/target/linux/magicbox-2.6/patches-2.6.22/100-cf_slot.patch new file mode 100644 index 0000000000..3a5dde7709 --- /dev/null +++ b/target/linux/magicbox-2.6/patches-2.6.22/100-cf_slot.patch @@ -0,0 +1,53 @@ +Index: linux-2.6.22-rc6/drivers/ide/ide.c +=================================================================== +--- linux-2.6.22-rc6.orig/drivers/ide/ide.c 2007-06-28 08:23:49.463514496 +0200 ++++ linux-2.6.22-rc6/drivers/ide/ide.c 2007-06-28 08:23:54.658724704 +0200 +@@ -1604,6 +1604,7 @@ + extern void __init pnpide_init(void); + extern void __exit pnpide_exit(void); + extern void __init h8300_ide_init(void); ++extern void __init ide_magicbox_init(void); + + /* + * probe_for_hwifs() finds/initializes "known" IDE interfaces +@@ -1668,6 +1669,9 @@ + #ifdef CONFIG_H8300 + h8300_ide_init(); + #endif ++#ifdef CONFIG_BLK_DEV_MAGICBOX_IDE ++ ide_magicbox_init(); ++#endif + } + + /* +Index: linux-2.6.22-rc6/drivers/ide/Kconfig +=================================================================== +--- linux-2.6.22-rc6.orig/drivers/ide/Kconfig 2007-06-28 08:23:49.470513432 +0200 ++++ linux-2.6.22-rc6/drivers/ide/Kconfig 2007-06-28 08:23:54.658724704 +0200 +@@ -946,6 +946,14 @@ + + If unsure, say N. + ++config BLK_DEV_MAGICBOX_IDE ++ bool "MagicBox 2.0 CF IDE support" ++ depends on 4xx && IDE ++ help ++ This option provides support for IDE on MagicBox 2.0 boards. ++ ++ If unsure, say N. ++ + choice + prompt "Type of MPC8xx IDE interface" + depends on BLK_DEV_MPC8xx_IDE +Index: linux-2.6.22-rc6/drivers/ide/Makefile +=================================================================== +--- linux-2.6.22-rc6.orig/drivers/ide/Makefile 2007-06-28 08:23:49.478512216 +0200 ++++ linux-2.6.22-rc6/drivers/ide/Makefile 2007-06-28 08:23:54.659724552 +0200 +@@ -37,6 +37,7 @@ + # built-in only drivers from ppc/ + ide-core-$(CONFIG_BLK_DEV_MPC8xx_IDE) += ppc/mpc8xx.o + ide-core-$(CONFIG_BLK_DEV_IDE_PMAC) += ppc/pmac.o ++ide-core-$(CONFIG_BLK_DEV_MAGICBOX_IDE) += ppc/magicbox_ide.o + + # built-in only drivers from h8300/ + ide-core-$(CONFIG_H8300) += h8300/ide-h8300.o diff --git a/toolchain/gcc/Config.in b/toolchain/gcc/Config.in index fccb7acdc2..2c0a982a94 100644 --- a/toolchain/gcc/Config.in +++ b/toolchain/gcc/Config.in @@ -3,6 +3,7 @@ choice prompt "GCC compiler Version" if TOOLCHAINOPTS default GCC_VERSION_3_4_6 if LINUX_2_4 + default GCC_VERSION_4_2_0 if LINUX_2_6_MAGICBOX default GCC_VERSION_4_1_2 help Select the version of gcc you wish to use. diff --git a/toolchain/gcc/Config.version b/toolchain/gcc/Config.version index 440b482652..0b2ac52588 100644 --- a/toolchain/gcc/Config.version +++ b/toolchain/gcc/Config.version @@ -1,21 +1,16 @@ config GCC_VERSION string - default "3.4.4" if GCC_VERSION_3_4_4 - default "3.4.5" if GCC_VERSION_3_4_5 default "3.4.6" if GCC_VERSION_3_4_6 - default "4.0.2" if GCC_VERSION_4_0_2 - default "4.0.3" if GCC_VERSION_4_0_3 - default "4.1.0" if GCC_VERSION_4_1_0 - default "4.1.1" if GCC_VERSION_4_1_1 default "4.1.2" if GCC_VERSION_4_1_2 default "4.2.0" if GCC_VERSION_4_2_0 - default "3.4.6-nonmips" if GCC_VERSION_3_4_6_nonmips default "4.1.2" if !TOOLCHAINOPTS config GCC_VERSION_3_4_6 default y if LINUX_2_4 - default y if LINUX_2_6_BRCM + + config GCC_VERSION_4_2_0 + default y if LINUX_2_6_MAGICBOX endif