Browse Source

malta: move to 4.4 kernel

Linux now has device tree support for malta.  The patch for correcting
/proc/iomem content is not needed now.  Previously it was

    root@(none):/# cat /proc/iomem
    00000000-00000fff : reserved
    00001000-000effff : System RAM
    000f0000-000fffff : reserved
    00100000-0fffefff : System RAM
      00100000-003f2b6b : Kernel code
      003f2b6c-00485937 : Kernel data
    ...

Now it's

    root@OpenWrt:/# cat /proc/iomem
    00000000-0fffefff : System RAM
      00100000-004a3297 : Kernel code
      004a3298-0057cfff : Kernel data
    ...

The kernel config was prepared as follows

 1. cp target/linux/malta/config-{3.18,4.4}
 2. make kernel_menuconfig CONFIG_TARGET=subtarget_platform

Signed-off-by: Yousong Zhou <[email protected]>

SVN-Revision: 48543
Felix Fietkau 9 năm trước cách đây
mục cha
commit
1923d63318

+ 1 - 1
target/linux/malta/Makefile

@@ -13,7 +13,7 @@ SUBTARGETS:=le be #le64 be64
 INITRAMFS_EXTRA_FILES:=
 MAINTAINER:=Florian Fainelli <[email protected]>
 
-KERNEL_PATCHVER:=3.18
+KERNEL_PATCHVER:=4.4
 
 include $(INCLUDE_DIR)/target.mk
 

+ 93 - 36
target/linux/malta/config-3.18 → target/linux/malta/config-4.4

@@ -1,12 +1,16 @@
-CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
+CONFIG_ARCH_BINFMT_ELF_STATE=y
+CONFIG_ARCH_CLOCKSOURCE_DATA=y
 CONFIG_ARCH_DISCARD_MEMBLOCK=y
 CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
-CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
+CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
+# CONFIG_ARCH_HAS_GCOV_PROFILE_ALL is not set
+# CONFIG_ARCH_HAS_SG_CHAIN is not set
 CONFIG_ARCH_MAY_HAVE_PC_FDC=y
 CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
 CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_ARCH_USE_BUILTIN_BSWAP=y
 CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
-# CONFIG_AX88796_93CX6 is not set
 CONFIG_ATA=y
 CONFIG_ATA_PIIX=y
 CONFIG_BLK_DEV_BSG=y
@@ -21,76 +25,100 @@ CONFIG_BLK_DEV_SD=y
 CONFIG_BOARD_SCACHE=y
 CONFIG_BOOT_ELF32=y
 CONFIG_BOUNCE=y
+CONFIG_BUILTIN_DTB=y
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-# CONFIG_CEVT_GIC is not set
 CONFIG_CEVT_R4K=y
 CONFIG_CLKBLD_I8253=y
+CONFIG_CLKDEV_LOOKUP=y
 CONFIG_CLKEVT_I8253=y
 CONFIG_CLKSRC_I8253=y
+CONFIG_CLKSRC_MIPS_GIC=y
+CONFIG_CLKSRC_OF=y
+CONFIG_CLKSRC_PROBE=y
 CONFIG_CLONE_BACKWARDS=y
+CONFIG_COMMON_CLK=y
 CONFIG_CONSOLE_TRANSLATIONS=y
 CONFIG_CPU_GENERIC_DUMP_TLB=y
 CONFIG_CPU_HAS_PREFETCH=y
 # CONFIG_CPU_HAS_SMARTMIPS is not set
 CONFIG_CPU_HAS_SYNC=y
+# CONFIG_CPU_MICROMIPS is not set
 # CONFIG_CPU_MIPS32_3_5_FEATURES is not set
+# CONFIG_CPU_MIPS32_R5_FEATURES is not set
+# CONFIG_CPU_MIPS32_R6 is not set
+# CONFIG_CPU_MIPS64_R6 is not set
 CONFIG_CPU_MIPSR2=y
 CONFIG_CPU_MIPSR2_IRQ_EI=y
 CONFIG_CPU_MIPSR2_IRQ_VI=y
-# CONFIG_CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS is not set
+CONFIG_CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS=y
 # CONFIG_CPU_NEVADA is not set
 CONFIG_CPU_R4K_CACHE_TLB=y
 CONFIG_CPU_R4K_FPU=y
 # CONFIG_CPU_RM7000 is not set
 CONFIG_CPU_RMAP=y
 CONFIG_CPU_SUPPORTS_HIGHMEM=y
-CONFIG_CRYPTO_MANAGER2=y
-CONFIG_CSRC_GIC=y
+CONFIG_CPU_SUPPORTS_MSA=y
+CONFIG_CRC16=y
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_WORKQUEUE=y
 CONFIG_CSRC_R4K=y
 # CONFIG_DEBUG_FS is not set
 CONFIG_DEVKMEM=y
 CONFIG_DMA_MAYBE_COHERENT=y
 CONFIG_DMA_NONCOHERENT=y
 CONFIG_DNOTIFY=y
+CONFIG_DTC=y
 CONFIG_DUMMY_CONSOLE=y
-CONFIG_EARLY_PRINTK=y
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
 CONFIG_ENABLE_MUST_CHECK=y
 CONFIG_EXT4_FS=y
 CONFIG_FIRMWARE_IN_KERNEL=y
+CONFIG_FS_MBCACHE=y
 CONFIG_FS_POSIX_ACL=y
 CONFIG_GENERIC_ATOMIC64=y
 CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 CONFIG_GENERIC_CMOS_UPDATE=y
 CONFIG_GENERIC_IO=y
+CONFIG_GENERIC_IRQ_CHIP=y
 CONFIG_GENERIC_IRQ_SHOW=y
 CONFIG_GENERIC_ISA_DMA=y
 CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_GENERIC_SCHED_CLOCK=y
 CONFIG_GENERIC_SMP_IDLE_THREAD=y
-CONFIG_GPIO_DEVRES=y
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GLOB=y
 CONFIG_HARDWARE_WATCHPOINTS=y
 CONFIG_HAS_DMA=y
 CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
+CONFIG_HAS_IOPORT_MAP=y
+# CONFIG_HAVE_ARCH_BITREVERSE is not set
 CONFIG_HAVE_ARCH_JUMP_LABEL=y
 CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_HAVE_ARCH_TRACEHOOK=y
 # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
+CONFIG_HAVE_BPF_JIT=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
 CONFIG_HAVE_CONTEXT_TRACKING=y
 CONFIG_HAVE_C_RECORDMCOUNT=y
 CONFIG_HAVE_DEBUG_KMEMLEAK=y
 CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
 CONFIG_HAVE_DMA_API_DEBUG=y
 CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
 CONFIG_HAVE_DYNAMIC_FTRACE=y
 CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
 CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
 CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
 CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_HAVE_GENERIC_HARDIRQS=y
 CONFIG_HAVE_IDE=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
 CONFIG_HAVE_KERNEL_BZIP2=y
 CONFIG_HAVE_KERNEL_GZIP=y
 CONFIG_HAVE_KERNEL_LZ4=y
@@ -98,6 +126,7 @@ CONFIG_HAVE_KERNEL_LZMA=y
 CONFIG_HAVE_KERNEL_LZO=y
 CONFIG_HAVE_KERNEL_XZ=y
 CONFIG_HAVE_KVM=y
+CONFIG_HAVE_LATENCYTOP_SUPPORT=y
 CONFIG_HAVE_MEMBLOCK=y
 CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
 CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
@@ -106,8 +135,7 @@ CONFIG_HAVE_OPROFILE=y
 CONFIG_HAVE_PCSPKR_PLATFORM=y
 CONFIG_HAVE_PERF_EVENTS=y
 CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
-CONFIG_HOSTAP_FIRMWARE=y
-CONFIG_HOSTAP_FIRMWARE_NVRAM=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
 CONFIG_HW_CONSOLE=y
 CONFIG_HW_HAS_PCI=y
 CONFIG_I8253=y
@@ -123,52 +151,61 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
 CONFIG_IPC_NS=y
 # CONFIG_IP_MROUTE is not set
-CONFIG_IRQ_CPU=y
+CONFIG_IRQCHIP=y
+CONFIG_IRQ_DOMAIN=y
 CONFIG_IRQ_FORCED_THREADING=y
-CONFIG_IRQ_GIC=y
+CONFIG_IRQ_MIPS_CPU=y
 CONFIG_IRQ_WORK=y
 CONFIG_ISA_DMA_API=y
+CONFIG_JBD2=y
 CONFIG_JFFS2_FS_POSIX_ACL=y
 CONFIG_JFFS2_FS_SECURITY=y
 # CONFIG_JFFS2_SUMMARY is not set
 CONFIG_KALLSYMS=y
-# CONFIG_KERNEL_XZ is not set
 CONFIG_KERNEL_GZIP=y
+# CONFIG_KERNEL_XZ is not set
 # CONFIG_LEDS_TRIGGER_TIMER is not set
 CONFIG_LEGACY_PTYS=y
 CONFIG_LEGACY_PTY_COUNT=256
+CONFIG_LIBFDT=y
 CONFIG_LOG_BUF_SHIFT=15
 CONFIG_MD=y
-CONFIG_MDIO_BOARDINFO=y
 CONFIG_MIPS=y
 CONFIG_MIPS_BONITO64=y
+CONFIG_MIPS_CLOCK_VSYSCALL=y
+CONFIG_MIPS_CM=y
+# CONFIG_MIPS_CMDLINE_DTB_EXTEND is not set
+CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y
+# CONFIG_MIPS_CMDLINE_FROM_DTB is not set
 # CONFIG_MIPS_CMP is not set
 # CONFIG_MIPS_CPS is not set
 CONFIG_MIPS_CPU_SCACHE=y
+# CONFIG_MIPS_ELF_APPENDED_DTB is not set
 CONFIG_MIPS_EXTERNAL_TIMER=y
+CONFIG_MIPS_GIC=y
+CONFIG_MIPS_GIC_IPI=y
 # CONFIG_MIPS_HUGE_TLB_SUPPORT is not set
 CONFIG_MIPS_L1_CACHE_SHIFT=6
 CONFIG_MIPS_L1_CACHE_SHIFT_6=y
 # CONFIG_MIPS_MACHINE is not set
 CONFIG_MIPS_MALTA=y
+CONFIG_MIPS_MALTA_PM=y
 CONFIG_MIPS_MSC=y
 CONFIG_MIPS_MT=y
-# CONFIG_MIPS_MT_DISABLED is not set
 CONFIG_MIPS_MT_FPAFF=y
 CONFIG_MIPS_MT_SMP=y
-# CONFIG_MIPS_MT_SMTC is not set
+CONFIG_MIPS_NO_APPENDED_DTB=y
 CONFIG_MIPS_PERF_SHARED_TC_COUNTERS=y
+# CONFIG_MIPS_RAW_APPENDED_DTB is not set
+CONFIG_MIPS_SPRAM=y
 # CONFIG_MIPS_VPE_LOADER is not set
+# CONFIG_MIPS_ZBOOT_APPENDED_DTB is not set
+CONFIG_MODULES_TREE_LOOKUP=y
 CONFIG_MODULES_USE_ELF_REL=y
 CONFIG_MODULE_FORCE_UNLOAD=y
 CONFIG_MTD_CFI_STAA=y
 # CONFIG_MTD_COMPLEX_MAPPINGS is not set
 CONFIG_MTD_PHYSMAP=y
-CONFIG_MTD_UBI_BEB_LIMIT=20
-# CONFIG_MTD_UBI_BLOCK is not set
-# CONFIG_MTD_UBI_FASTMAP is not set
-CONFIG_MTD_UBI_WL_THRESHOLD=4096
-CONFIG_MUTEX_SPIN_ON_OWNER=y
 CONFIG_NAMESPACES=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_NET_FLOW_LIMIT=y
@@ -177,9 +214,18 @@ CONFIG_NO_GENERIC_PCI_IOPORT_MAP=y
 CONFIG_NO_HZ=y
 CONFIG_NO_HZ_COMMON=y
 CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_IOPORT_MAP is not set
 CONFIG_NR_CPUS=2
-CONFIG_NR_CPUS_DEFAULT_2=y
-CONFIG_PAGEFLAGS_EXTENDED=y
+CONFIG_OF=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_ADDRESS_PCI=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_MTD=y
+CONFIG_OF_NET=y
+CONFIG_OF_PCI=y
+CONFIG_OF_PCI_IRQ=y
 # CONFIG_PARTITION_ADVANCED is not set
 CONFIG_PCI=y
 CONFIG_PCI_DOMAINS=y
@@ -187,8 +233,8 @@ CONFIG_PCI_GT64XXX_PCI0=y
 CONFIG_PCSPKR_PLATFORM=y
 CONFIG_PERF_EVENTS=y
 CONFIG_PERF_USE_VMALLOC=y
+CONFIG_PGTABLE_LEVELS=2
 CONFIG_PID_NS=y
-# CONFIG_PREEMPT_RCU is not set
 CONFIG_PRINT_QUOTA_WARNING=y
 CONFIG_PROC_PAGE_MONITOR=y
 # CONFIG_QFMT_V1 is not set
@@ -197,14 +243,18 @@ CONFIG_QUOTA=y
 CONFIG_QUOTACTL=y
 # CONFIG_QUOTA_NETLINK_INTERFACE is not set
 CONFIG_QUOTA_TREE=y
+CONFIG_RATIONAL=y
 CONFIG_RCU_STALL_COMMON=y
 CONFIG_RELAY=y
 CONFIG_RFS_ACCEL=y
 CONFIG_RPS=y
 CONFIG_RTC_CLASS=y
+CONFIG_SCHED_HRTICK=y
+# CONFIG_SCHED_INFO is not set
 CONFIG_SCSI=y
-CONFIG_SCSI_NETLINK=y
 CONFIG_SECCOMP=y
+CONFIG_SECCOMP_FILTER=y
+# CONFIG_SERIAL_8250_FSL is not set
 CONFIG_SERIAL_8250_NR_UARTS=4
 CONFIG_SERIAL_8250_RUNTIME_UARTS=4
 CONFIG_SERIO=y
@@ -212,25 +262,34 @@ CONFIG_SERIO_SERPORT=y
 CONFIG_SMP=y
 CONFIG_SMP_UP=y
 CONFIG_SOCK_DIAG=y
+CONFIG_SRCU=y
 # CONFIG_STAGING is not set
-CONFIG_STOP_MACHINE=y
+# CONFIG_SUNXI_SRAM is not set
 CONFIG_SWAP_IO_SPACE=y
 CONFIG_SYNC_R4K=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
 CONFIG_SYSFS_DEPRECATED=y
 CONFIG_SYSFS_DEPRECATED_V2=y
 CONFIG_SYS_HAS_CPU_MIPS32_R1=y
 CONFIG_SYS_HAS_CPU_MIPS32_R2=y
+CONFIG_SYS_HAS_CPU_MIPS32_R3_5=y
+CONFIG_SYS_HAS_CPU_MIPS32_R5=y
+CONFIG_SYS_HAS_CPU_MIPS32_R6=y
 CONFIG_SYS_HAS_CPU_MIPS64_R1=y
 CONFIG_SYS_HAS_CPU_MIPS64_R2=y
+CONFIG_SYS_HAS_CPU_MIPS64_R6=y
 CONFIG_SYS_HAS_CPU_NEVADA=y
 CONFIG_SYS_HAS_CPU_RM7000=y
-CONFIG_SYS_HAS_EARLY_PRINTK=y
 CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
 CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y
 CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
 CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
+CONFIG_SYS_SUPPORTS_HIGHMEM=y
 CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
+CONFIG_SYS_SUPPORTS_MICROMIPS=y
+CONFIG_SYS_SUPPORTS_MIPS16=y
 CONFIG_SYS_SUPPORTS_MIPS_CMP=y
+CONFIG_SYS_SUPPORTS_MIPS_CPS=y
 CONFIG_SYS_SUPPORTS_MULTITHREADING=y
 CONFIG_SYS_SUPPORTS_SCHED_SMT=y
 CONFIG_SYS_SUPPORTS_SMARTMIPS=y
@@ -239,12 +298,10 @@ CONFIG_SYS_SUPPORTS_ZBOOT=y
 # CONFIG_TCP_CONG_ADVANCED is not set
 CONFIG_TICK_CPU_ACCOUNTING=y
 CONFIG_TREE_RCU=y
-# CONFIG_UBIFS_FS is not set
-CONFIG_UIDGID_CONVERTED=y
-CONFIG_USB_ARCH_HAS_XHCI=y
 CONFIG_USB_SUPPORT=y
+# CONFIG_USERIO is not set
 # CONFIG_USER_NS is not set
-CONFIG_USE_GENERIC_SMP_HELPERS=y
+CONFIG_USE_OF=y
 CONFIG_UTS_NS=y
 # CONFIG_VGA_CONSOLE is not set
 CONFIG_VM_EVENT_COUNTERS=y

+ 0 - 34
target/linux/malta/patches/330-MIPS-Malta-Mark-kernel-code-and-kernel-data-segments.patch

@@ -1,34 +0,0 @@
-From 79c7301c922f5023f85805a4ba969ce55f51d0ca Mon Sep 17 00:00:00 2001
-From: Yousong Zhou <[email protected]>
-Date: Sat, 31 Jan 2015 15:13:12 +0800
-Subject: [PATCH 330/331] MIPS: Malta: Mark kernel code and kernel data
- segments as BOOT_MEM_RAM.
-
-Kexec-tools requires those segments listed as "System RAM" in
-/proc/iomem, otherwise, an error message of "Invalid memory segment"
-will be emitted when trying to load the ELF kernel image.
-
-Signed-off-by: Yousong Zhou <[email protected]>
----
- arch/mips/mti-malta/malta-memory.c |    9 ++-------
- 1 file changed, 2 insertions(+), 7 deletions(-)
-
---- a/arch/mips/mti-malta/malta-memory.c
-+++ b/arch/mips/mti-malta/malta-memory.c
-@@ -112,14 +112,9 @@ fw_memblock_t * __init fw_getmdesc(int e
- 	mdesc[2].base = mdesc[0].base + 0x000f0000UL;
- 	mdesc[2].size = 0x00010000;
- 
--	mdesc[3].type = fw_dontuse;
-+	mdesc[3].type = fw_free;
- 	mdesc[3].base = mdesc[0].base + 0x00100000UL;
--	mdesc[3].size = CPHYSADDR(PFN_ALIGN((unsigned long)&_end)) -
--		0x00100000UL;
--
--	mdesc[4].type = fw_free;
--	mdesc[4].base = mdesc[0].base + CPHYSADDR(PFN_ALIGN(&_end));
--	mdesc[4].size = memsize - CPHYSADDR(mdesc[4].base);
-+	mdesc[3].size = memsize - CPHYSADDR(mdesc[3].base);
- 
- 	return &mdesc[0];
- }