ppc44x: use the mtdsplit framework for the Taishan

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>

SVN-Revision: 44652
master
Imre Kaloz 10 years ago
parent 17610e7430
commit 57b447281d
  1. 30
      target/linux/ppc44x/config-3.18
  2. 4
      target/linux/ppc44x/image/Makefile
  3. 13
      target/linux/ppc44x/patches-3.18/100-openwrt_flashmap.patch
  4. 4
      target/linux/ppc44x/patches-3.18/110-openwrt_dts_cmdline.patch

@ -11,13 +11,17 @@ CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
CONFIG_ARCH_HAS_ILOG2_U32=y CONFIG_ARCH_HAS_ILOG2_U32=y
CONFIG_ARCH_HAS_SG_CHAIN=y
CONFIG_ARCH_HAS_WALK_MEMORY=y CONFIG_ARCH_HAS_WALK_MEMORY=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
# CONFIG_ARCH_RANDOM is not set
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y CONFIG_ARCH_USE_BUILTIN_BSWAP=y
@ -51,6 +55,7 @@ CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y CONFIG_GENERIC_CMOS_UPDATE=y
# CONFIG_GENERIC_CSUM is not set
CONFIG_GENERIC_IO=y CONFIG_GENERIC_IO=y
CONFIG_GENERIC_IRQ_SHOW=y CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_IRQ_SHOW_LEVEL=y CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
@ -69,14 +74,16 @@ CONFIG_GPIOLIB=y
CONFIG_GPIO_DEVRES=y CONFIG_GPIO_DEVRES=y
CONFIG_HAS_DMA=y CONFIG_HAS_DMA=y
CONFIG_HAS_IOMEM=y CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y CONFIG_HAS_IOPORT_MAP=y
# CONFIG_HAS_RAPIDIO is not set # CONFIG_HAS_RAPIDIO is not set
# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
CONFIG_HAVE_ARCH_AUDITSYSCALL=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_HAVE_ARCH_KGDB=y CONFIG_HAVE_ARCH_KGDB=y
CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_ARCH_TRACEHOOK=y
# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
CONFIG_HAVE_DEBUG_KMEMLEAK=y CONFIG_HAVE_DEBUG_KMEMLEAK=y
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
CONFIG_HAVE_DMA_API_DEBUG=y CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_DMA_ATTRS=y CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DYNAMIC_FTRACE=y CONFIG_HAVE_DYNAMIC_FTRACE=y
@ -85,9 +92,9 @@ CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y CONFIG_HAVE_FUNCTION_TRACER=y
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_HAVE_GENERIC_HARDIRQS=y
CONFIG_HAVE_IDE=y CONFIG_HAVE_IDE=y
CONFIG_HAVE_IOREMAP_PROT=y CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_HAVE_MEMBLOCK=y CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
@ -124,6 +131,7 @@ CONFIG_IRQ_WORK=y
CONFIG_ISA_DMA_API=y CONFIG_ISA_DMA_API=y
# CONFIG_KATMAI is not set # CONFIG_KATMAI is not set
CONFIG_KERNEL_START=0xc0000000 CONFIG_KERNEL_START=0xc0000000
CONFIG_LIBFDT=y
CONFIG_LOWMEM_SIZE=0x30000000 CONFIG_LOWMEM_SIZE=0x30000000
# CONFIG_MATH_EMULATION is not set # CONFIG_MATH_EMULATION is not set
# CONFIG_MMIO_NVRAM is not set # CONFIG_MMIO_NVRAM is not set
@ -133,8 +141,8 @@ CONFIG_MODULES_USE_ELF_RELA=y
# CONFIG_MPIC_WEIRD is not set # CONFIG_MPIC_WEIRD is not set
CONFIG_MTD_CFI_ADV_OPTIONS=y CONFIG_MTD_CFI_ADV_OPTIONS=y
# CONFIG_MTD_CFI_GEOMETRY is not set # CONFIG_MTD_CFI_GEOMETRY is not set
CONFIG_MTD_OF_PARTS=y CONFIG_MTD_SPLIT_FIRMWARE=y
CONFIG_MTD_PHYSMAP_OF=y CONFIG_MTD_SPLIT_UIMAGE_FW=y
CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NEED_DMA_MAP_STATE=y
# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set # CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
CONFIG_NEED_PER_CPU_KM=y CONFIG_NEED_PER_CPU_KM=y
@ -144,7 +152,7 @@ CONFIG_NOT_COHERENT_CACHE=y
CONFIG_NR_IRQS=512 CONFIG_NR_IRQS=512
CONFIG_OF=y CONFIG_OF=y
CONFIG_OF_ADDRESS=y CONFIG_OF_ADDRESS=y
CONFIG_OF_DEVICE=y CONFIG_OF_ADDRESS_PCI=y
CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_EARLY_FLATTREE=y
CONFIG_OF_FLATTREE=y CONFIG_OF_FLATTREE=y
CONFIG_OF_GPIO=y CONFIG_OF_GPIO=y
@ -153,6 +161,7 @@ CONFIG_OF_MTD=y
CONFIG_OF_NET=y CONFIG_OF_NET=y
CONFIG_OF_PCI=y CONFIG_OF_PCI=y
CONFIG_OF_PCI_IRQ=y CONFIG_OF_PCI_IRQ=y
CONFIG_OF_RESERVED_MEM=y
CONFIG_OLD_SIGACTION=y CONFIG_OLD_SIGACTION=y
CONFIG_OLD_SIGSUSPEND=y CONFIG_OLD_SIGSUSPEND=y
CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_PAGEFLAGS_EXTENDED=y
@ -166,10 +175,10 @@ CONFIG_PCI_MSI=y
CONFIG_PHYSICAL_START=0x00000000 CONFIG_PHYSICAL_START=0x00000000
CONFIG_PHYS_64BIT=y CONFIG_PHYS_64BIT=y
CONFIG_PHYS_ADDR_T_64BIT=y CONFIG_PHYS_ADDR_T_64BIT=y
# CONFIG_POWERNV_MSI is not set
CONFIG_PPC=y CONFIG_PPC=y
CONFIG_PPC32=y CONFIG_PPC32=y
CONFIG_PPC44x_SIMPLE=y CONFIG_PPC44x_SIMPLE=y
# CONFIG_PPC4xx_HSTA_MSI is not set
CONFIG_PPC4xx_MSI=y CONFIG_PPC4xx_MSI=y
# CONFIG_PPC4xx_OCM is not set # CONFIG_PPC4xx_OCM is not set
CONFIG_PPC4xx_PCI_EXPRESS=y CONFIG_PPC4xx_PCI_EXPRESS=y
@ -186,7 +195,7 @@ CONFIG_PPC_ADV_DEBUG_REGS=y
# CONFIG_PPC_BOOK3S_32 is not set # CONFIG_PPC_BOOK3S_32 is not set
# CONFIG_PPC_CELL is not set # CONFIG_PPC_CELL is not set
# CONFIG_PPC_CELL_NATIVE is not set # CONFIG_PPC_CELL_NATIVE is not set
# CONFIG_PPC_CLOCK is not set # CONFIG_PPC_COPRO_BASE is not set
CONFIG_PPC_DCR=y CONFIG_PPC_DCR=y
# CONFIG_PPC_DCR_MMIO is not set # CONFIG_PPC_DCR_MMIO is not set
CONFIG_PPC_DCR_NATIVE=y CONFIG_PPC_DCR_NATIVE=y
@ -209,13 +218,12 @@ CONFIG_PPC_PCI_CHOICE=y
# CONFIG_PPC_RTAS is not set # CONFIG_PPC_RTAS is not set
CONFIG_PPC_UDBG_16550=y CONFIG_PPC_UDBG_16550=y
CONFIG_PPC_WERROR=y CONFIG_PPC_WERROR=y
# CONFIG_PPC_WSP is not set
# CONFIG_PPC_XICS is not set # CONFIG_PPC_XICS is not set
# CONFIG_PQ2ADS is not set # CONFIG_PQ2ADS is not set
# CONFIG_PREEMPT_RCU is not set # CONFIG_PREEMPT_RCU is not set
CONFIG_PROC_DEVICETREE=y
CONFIG_PTE_64BIT=y CONFIG_PTE_64BIT=y
# CONFIG_RAINIER is not set # CONFIG_RAINIER is not set
CONFIG_RAS=y
# CONFIG_RCU_STALL_COMMON is not set # CONFIG_RCU_STALL_COMMON is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_SAM440EP is not set # CONFIG_SAM440EP is not set
@ -232,8 +240,6 @@ CONFIG_SYSCTL_EXCEPTION_TRACE=y
CONFIG_TAISHAN=y CONFIG_TAISHAN=y
CONFIG_TASK_SIZE=0xc0000000 CONFIG_TASK_SIZE=0xc0000000
CONFIG_TICK_CPU_ACCOUNTING=y CONFIG_TICK_CPU_ACCOUNTING=y
CONFIG_UIDGID_CONVERTED=y
CONFIG_USB_ARCH_HAS_XHCI=y
CONFIG_USB_SUPPORT=y CONFIG_USB_SUPPORT=y
# CONFIG_WARP is not set # CONFIG_WARP is not set
CONFIG_WORD_SIZE=32 CONFIG_WORD_SIZE=32

@ -1,5 +1,5 @@
# #
# Copyright (C) 2007-2010 OpenWrt.org # Copyright (C) 2007-2015 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -31,7 +31,7 @@ endef
define Image/Build/squashfs define Image/Build/squashfs
$(call prepare_generic_squashfs,$(KDIR)/root.squashfs) $(call prepare_generic_squashfs,$(KDIR)/root.squashfs)
( \ ( \
dd if=$(KDIR)/cuImage.taishan bs=2048k conv=sync; \ dd if=$(KDIR)/cuImage.taishan bs=256k conv=sync; \
dd if=$(KDIR)/root.$(1) bs=256k conv=sync; \ dd if=$(KDIR)/root.$(1) bs=256k conv=sync; \
) > $(BIN_DIR)/$(IMG_PREFIX)-taishan-$(1).img ) > $(BIN_DIR)/$(IMG_PREFIX)-taishan-$(1).img
( \ ( \

@ -1,19 +1,18 @@
--- a/arch/powerpc/boot/dts/taishan.dts --- a/arch/powerpc/boot/dts/taishan.dts
+++ b/arch/powerpc/boot/dts/taishan.dts +++ b/arch/powerpc/boot/dts/taishan.dts
@@ -195,15 +195,15 @@ @@ -194,16 +194,12 @@
#address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
partition@0 { partition@0 {
label = "kernel"; - label = "kernel";
- reg = <0x0 0x180000>; - reg = <0x0 0x180000>;
+ reg = <0x0 0x200000>; + label = "firmware";
+ reg = <0x0 0x3e00000>;
}; };
- partition@180000 { - partition@180000 {
- label = "root"; - label = "root";
- reg = <0x180000 0x200000>; - reg = <0x180000 0x200000>;
+ partition@200000 { - };
+ label = "rootfs";
+ reg = <0x200000 0x3c00000>;
};
- partition@380000 { - partition@380000 {
- label = "user"; - label = "user";
- reg = <0x380000 0x3bc0000>; - reg = <0x380000 0x3bc0000>;

@ -1,9 +1,9 @@
--- a/arch/powerpc/boot/dts/taishan.dts --- a/arch/powerpc/boot/dts/taishan.dts
+++ b/arch/powerpc/boot/dts/taishan.dts +++ b/arch/powerpc/boot/dts/taishan.dts
@@ -423,5 +423,6 @@ @@ -419,5 +419,6 @@
chosen { chosen {
linux,stdout-path = "/plb/opb/serial@40000300"; linux,stdout-path = "/plb/opb/serial@40000300";
+ bootargs = "console=ttyS1,115200 root=/dev/mtdblock1 rootfstype=squashfs noinitrd"; + bootargs = "rootfstype=squashfs noinitrd";
}; };
}; };

Loading…
Cancel
Save