summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/linux/ppc40x/Makefile2
-rw-r--r--target/linux/ppc40x/config-default59
-rw-r--r--target/linux/ppc40x/patches/001-kilauea_openwrt_flashmap.patch6
-rw-r--r--target/linux/ppc40x/patches/002-disable_emac_loopback_mode.patch25
4 files changed, 73 insertions, 19 deletions
diff --git a/target/linux/ppc40x/Makefile b/target/linux/ppc40x/Makefile
index a571a19241..5194f30f80 100644
--- a/target/linux/ppc40x/Makefile
+++ b/target/linux/ppc40x/Makefile
@@ -11,7 +11,7 @@ BOARD:=ppc40x
BOARDNAME:=AMCC/IBM PPC40x
FEATURES:=squashfs
-LINUX_VERSION:=2.6.24.7
+LINUX_VERSION:=2.6.26.2
LINUX_KARCH:=powerpc
include $(INCLUDE_DIR)/target.mk
diff --git a/target/linux/ppc40x/config-default b/target/linux/ppc40x/config-default
index 74e2c9f08c..537a6807f5 100644
--- a/target/linux/ppc40x/config-default
+++ b/target/linux/ppc40x/config-default
@@ -2,12 +2,15 @@ CONFIG_405EX=y
CONFIG_40x=y
# CONFIG_44x is not set
CONFIG_4xx=y
+CONFIG_4xx_SOC=y
# CONFIG_6xx is not set
# CONFIG_8139TOO is not set
# CONFIG_ADVANCED_OPTIONS is not set
# CONFIG_AGP is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
CONFIG_ARCH_HAS_ILOG2_U32=y
+CONFIG_ARCH_HAS_WALK_MEMORY=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
# CONFIG_ARCH_NO_VIRT_TO_BUS is not set
CONFIG_ARCH_POPULATES_NODE_MAP=y
@@ -16,30 +19,34 @@ CONFIG_AUDIT_ARCH=y
CONFIG_BASE_SMALL=0
CONFIG_BITREVERSE=y
# CONFIG_BOOKE_WDT is not set
-CONFIG_BOOT_LOAD=0x00400000
CONFIG_BOUNCE=y
# CONFIG_BT is not set
+CONFIG_CLASSIC_RCU=y
CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd init=/etc/preinit"
CONFIG_CMDLINE_BOOL=y
CONFIG_CONSISTENT_SIZE=0x00200000
CONFIG_CONSISTENT_START=0xff100000
-# CONFIG_CPM2 is not set
# CONFIG_CPU_FREQ is not set
+CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AUTHENC=m
+CONFIG_CRYPTO_GF128MUL=m
# CONFIG_DEBUG_BUGVERBOSE is not set
# CONFIG_DEFAULT_UIMAGE is not set
-CONFIG_DEVICE_TREE=""
CONFIG_DEVPORT=y
-# CONFIG_E1000E is not set
+# CONFIG_DMADEVICES is not set
+# CONFIG_E1000E_ENABLED is not set
# CONFIG_E200 is not set
CONFIG_EARLY_PRINTK=y
# CONFIG_EDAC is not set
# CONFIG_EP405 is not set
+CONFIG_FORCE_MAX_ZONEORDER=11
# CONFIG_FSL_ULI1575 is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
+# CONFIG_GENERIC_FIND_FIRST_BIT is not set
CONFIG_GENERIC_FIND_NEXT_BIT=y
# CONFIG_GENERIC_IOMAP is not set
CONFIG_GENERIC_NVRAM=y
@@ -49,9 +56,15 @@ CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_HAS_DMA=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
-CONFIG_HIBERNATION_UP_POSSIBLE=y
+# CONFIG_HAS_RAPIDIO is not set
+# CONFIG_HAVE_DMA_ATTRS is not set
+CONFIG_HAVE_IDE=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_HAVE_LMB=y
+CONFIG_HAVE_OPROFILE=y
+# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
# CONFIG_HIGHMEM is not set
-CONFIG_HIGHMEM_START=0xfe000000
CONFIG_HW_RANDOM=y
CONFIG_HZ=250
# CONFIG_HZ_100 is not set
@@ -70,17 +83,23 @@ CONFIG_IBM_NEW_EMAC_TXB=256
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IDE is not set
CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_IP1000 is not set
+# CONFIG_IOMMU_HELPER is not set
# CONFIG_IPIC is not set
+CONFIG_IPV6_NDISC_NODETYPE=y
+# CONFIG_IRQSTACKS is not set
CONFIG_IRQ_PER_CPU=y
CONFIG_ISA_DMA_API=y
+# CONFIG_IWLWIFI_LEDS is not set
CONFIG_KERNEL_START=0xc0000000
CONFIG_KILAUEA=y
# CONFIG_LEDS_ALIX is not set
CONFIG_LOWMEM_SIZE=0x30000000
+CONFIG_LZO_COMPRESS=m
+CONFIG_LZO_DECOMPRESS=m
# CONFIG_MACINTOSH_DRIVERS is not set
# CONFIG_MAKALU is not set
# CONFIG_MATH_EMULATION is not set
+# CONFIG_MEDIA_ATTACH is not set
# CONFIG_MMIO_NVRAM is not set
# CONFIG_MPIC is not set
# CONFIG_MPIC_WEIRD is not set
@@ -120,6 +139,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MTDRAM is not set
+CONFIG_MTD_OF_PARTS=y
# CONFIG_MTD_ONENAND is not set
# CONFIG_MTD_OTP is not set
CONFIG_MTD_PARTITIONS=y
@@ -135,19 +155,23 @@ CONFIG_MTD_PHYSMAP_OF=y
# CONFIG_MTD_SLRAM is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
-CONFIG_NETDEV_1000=y
# CONFIG_NET_VENDOR_3COM is not set
CONFIG_NOT_COHERENT_CACHE=y
# CONFIG_NVRAM is not set
+# CONFIG_OCF_OCF is not set
CONFIG_OF=y
CONFIG_OF_DEVICE=y
+CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_PAGE_OFFSET=0xc0000000
+CONFIG_PCI=y
CONFIG_PCIEAER=y
+# CONFIG_PCIEASPM is not set
CONFIG_PCIEPORTBUS=y
# CONFIG_PCIPCWATCHDOG is not set
-CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_MSI=y
CONFIG_PCI_SYSCALL=y
+CONFIG_PHYSICAL_START=0x00000000
CONFIG_PPC=y
CONFIG_PPC32=y
CONFIG_PPC4xx_PCI_EXPRESS=y
@@ -168,15 +192,18 @@ CONFIG_PPC_INDIRECT_PCI=y
CONFIG_PPC_MERGE=y
# CONFIG_PPC_MM_SLICES is not set
# CONFIG_PPC_MPC106 is not set
-# CONFIG_PPC_MPC5200 is not set
-# CONFIG_PPC_MPC52xx is not set
+# CONFIG_PPC_MPC5121 is not set
+# CONFIG_PPC_MPC512x is not set
CONFIG_PPC_OF=y
# CONFIG_PPC_RTAS is not set
CONFIG_PPC_UDBG_16550=y
# CONFIG_PQ2ADS is not set
CONFIG_PROC_DEVICETREE=y
+# CONFIG_R6040 is not set
CONFIG_RESOURCES_64BIT=y
+CONFIG_RFKILL_LEDS=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
+# CONFIG_SCHED_HRTICK is not set
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_SCSI_WAIT_SCAN=m
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -193,13 +220,17 @@ CONFIG_SLABINFO=y
CONFIG_SSB_POSSIBLE=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_TASK_SIZE=0xc0000000
+# CONFIG_THERMAL is not set
+# CONFIG_THERMAL_HWMON is not set
CONFIG_TICK_ONESHOT=y
-# CONFIG_TIGON3 is not set
-# CONFIG_USER_NS is not set
# CONFIG_VGASTATE is not set
# CONFIG_VIA_RHINE is not set
+CONFIG_VIDEO_ALLOW_V4L1=y
+CONFIG_VIDEO_MEDIA=m
+CONFIG_VIDEO_V4L1=m
+CONFIG_VIDEO_V4L2=m
+CONFIG_VIDEO_V4L2_COMMON=m
# CONFIG_WALNUT is not set
-CONFIG_WANT_DEVICE_TREE=y
CONFIG_WORD_SIZE=32
# CONFIG_XILINX_SYSACE is not set
# CONFIG_XILINX_VIRTEX_GENERIC_BOARD is not set
diff --git a/target/linux/ppc40x/patches/001-kilauea_openwrt_flashmap.patch b/target/linux/ppc40x/patches/001-kilauea_openwrt_flashmap.patch
index 450a150ca1..78c94d88d9 100644
--- a/target/linux/ppc40x/patches/001-kilauea_openwrt_flashmap.patch
+++ b/target/linux/ppc40x/patches/001-kilauea_openwrt_flashmap.patch
@@ -1,7 +1,5 @@
-Index: linux-2.6.24.7/arch/powerpc/boot/dts/kilauea.dts
-===================================================================
---- linux-2.6.24.7.orig/arch/powerpc/boot/dts/kilauea.dts
-+++ linux-2.6.24.7/arch/powerpc/boot/dts/kilauea.dts
+--- a/arch/powerpc/boot/dts/kilauea.dts
++++ b/arch/powerpc/boot/dts/kilauea.dts
@@ -138,15 +138,15 @@
#size-cells = <1>;
partition@0 {
diff --git a/target/linux/ppc40x/patches/002-disable_emac_loopback_mode.patch b/target/linux/ppc40x/patches/002-disable_emac_loopback_mode.patch
new file mode 100644
index 0000000000..10f17747bc
--- /dev/null
+++ b/target/linux/ppc40x/patches/002-disable_emac_loopback_mode.patch
@@ -0,0 +1,25 @@
+--- a/arch/powerpc/platforms/40x/kilauea.c
++++ b/arch/powerpc/platforms/40x/kilauea.c
+@@ -21,6 +21,8 @@
+ #include <asm/uic.h>
+ #include <asm/pci-bridge.h>
+ #include <asm/ppc4xx.h>
++#include <asm/dcr.h>
++#include <asm/dcr-regs.h>
+
+ static __initdata struct of_device_id kilauea_of_bus[] = {
+ { .compatible = "ibm,plb4", },
+@@ -46,6 +48,13 @@
+
+ ppc_pci_flags = PPC_PCI_REASSIGN_ALL_RSRC;
+
++ /*
++ * 405EX(r) has SDR0_MFR[E0CS/E1CS] set after reset. This selects
++ * the internal loopback mode. Clear these bits so that both EMACs
++ * don't use loopback mode as deafult.
++ */
++ mtdcri(SDR0, SDR0_MFR, mfdcri(SDR0, SDR0_MFR) & ~0x0c000000);
++
+ return 1;
+ }
+