[mvebu/3.18]: refresh kernel config, add cpuidle and cpufreq support
authorkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 5 Jan 2015 15:08:20 +0000 (15:08 +0000)
committerkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 5 Jan 2015 15:08:20 +0000 (15:08 +0000)
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43855 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/mvebu/config-3.18
target/linux/mvebu/patches-3.18/150-use_the_cpufreq-dt_platform_data_for_independent_clocks.patch [new file with mode: 0644]

index 198ad97..54639f8 100644 (file)
@@ -1,10 +1,10 @@
 CONFIG_ALIGNMENT_TRAP=y
-# CONFIG_AHCI_MVEBU is not set
 CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
-# CONFIG_CACHE_FEROCEON_L2 is not set
 CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
+CONFIG_ARCH_HAS_SG_CHAIN=y
 CONFIG_ARCH_HAS_TICK_BROADCAST=y
 CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
 CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
 CONFIG_ARCH_MULTIPLATFORM=y
 # CONFIG_ARCH_MULTI_CPU_AUTO is not set
@@ -16,25 +16,33 @@ CONFIG_ARCH_NR_GPIO=0
 CONFIG_ARCH_REQUIRE_GPIOLIB=y
 # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
 CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y
+CONFIG_ARCH_SUPPORTS_UPROBES=y
 CONFIG_ARCH_SUSPEND_POSSIBLE=y
 CONFIG_ARCH_USE_BUILTIN_BSWAP=y
 CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
 CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
 CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
+CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
 CONFIG_ARM=y
 CONFIG_ARMADA_370_CLK=y
 CONFIG_ARMADA_370_XP_TIMER=y
+CONFIG_ARMADA_38X_CLK=y
 CONFIG_ARMADA_XP_CLK=y
 CONFIG_ARM_APPENDED_DTB=y
 CONFIG_ARM_ATAG_DTB_COMPAT=y
 # CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND is not set
 CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
-# CONFIG_ARM_CPU_SUSPEND is not set
+CONFIG_ARM_CPU_SUSPEND=y
+CONFIG_ARM_ERRATA_720789=y
+CONFIG_ARM_GIC=y
+CONFIG_ARM_HAS_SG_CHAIN=y
+# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set
 CONFIG_ARM_L1_CACHE_SHIFT=6
 CONFIG_ARM_L1_CACHE_SHIFT_6=y
 # CONFIG_ARM_LPAE is not set
-CONFIG_ARM_NR_BANKS=8
+CONFIG_ARM_MVEBU_V7_CPUIDLE=y
 CONFIG_ARM_PATCH_PHYS_VIRT=y
 CONFIG_ARM_THUMB=y
 # CONFIG_ARM_THUMBEE is not set
@@ -43,6 +51,7 @@ CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
 CONFIG_ATAGS=y
 CONFIG_AUTO_ZRELADDR=y
 CONFIG_BOUNCE=y
+# CONFIG_CACHE_FEROCEON_L2 is not set
 CONFIG_CACHE_L2X0=y
 CONFIG_CACHE_PL310=y
 CONFIG_CLKDEV_LOOKUP=y
@@ -50,6 +59,7 @@ CONFIG_CLKSRC_MMIO=y
 CONFIG_CLKSRC_OF=y
 CONFIG_CLONE_BACKWARDS=y
 CONFIG_COMMON_CLK=y
+CONFIG_CPUFREQ_DT=y
 CONFIG_CPU_32v6K=y
 CONFIG_CPU_32v7=y
 CONFIG_CPU_ABRT_EV7=y
@@ -60,11 +70,29 @@ CONFIG_CPU_CACHE_VIPT=y
 CONFIG_CPU_COPY_V6=y
 CONFIG_CPU_CP15=y
 CONFIG_CPU_CP15_MMU=y
+CONFIG_CPU_FREQ=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+CONFIG_CPU_FREQ_GOV_COMMON=y
+# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
+CONFIG_CPU_FREQ_STAT=y
+# CONFIG_CPU_FREQ_STAT_DETAILS is not set
 CONFIG_CPU_HAS_ASID=y
 # CONFIG_CPU_ICACHE_DISABLE is not set
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_GOV_LADDER=y
 CONFIG_CPU_PABRT_V7=y
 CONFIG_CPU_PJ4B=y
+CONFIG_CPU_PM=y
 CONFIG_CPU_RMAP=y
+# CONFIG_CPU_THERMAL is not set
 CONFIG_CPU_TLB_V7=y
 CONFIG_CPU_V7=y
 CONFIG_CRC16=y
@@ -75,8 +103,6 @@ CONFIG_DCACHE_WORD_ACCESS=y
 CONFIG_DEBUG_INFO=y
 CONFIG_DEBUG_LL=y
 CONFIG_DEBUG_LL_INCLUDE="debug/8250.S"
-# CONFIG_DEBUG_LL_UART_8250 is not set
-# CONFIG_DEBUG_LL_UART_PL01X is not set
 CONFIG_DEBUG_MVEBU_UART=y
 # CONFIG_DEBUG_MVEBU_UART_ALTERNATE is not set
 CONFIG_DEBUG_UART_8250=y
@@ -98,6 +124,7 @@ CONFIG_DTC=y
 CONFIG_EARLY_PRINTK=y
 CONFIG_FIXED_PHY=y
 CONFIG_FRAME_POINTER=y
+CONFIG_GENERIC_ALLOCATOR=y
 CONFIG_GENERIC_BUG=y
 CONFIG_GENERIC_CLOCKEVENTS=y
 CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
@@ -106,7 +133,6 @@ CONFIG_GENERIC_IDLE_POLL_SETUP=y
 CONFIG_GENERIC_IO=y
 CONFIG_GENERIC_IRQ_CHIP=y
 CONFIG_GENERIC_IRQ_SHOW=y
-CONFIG_GENERIC_NET_UTILS=y
 CONFIG_GENERIC_PCI_IOMAP=y
 CONFIG_GENERIC_SCHED_CLOCK=y
 CONFIG_GENERIC_SMP_IDLE_THREAD=y
@@ -117,16 +143,20 @@ CONFIG_GPIO_DEVRES=y
 CONFIG_GPIO_GENERIC=y
 CONFIG_GPIO_MVEBU=y
 CONFIG_GPIO_SYSFS=y
+CONFIG_HANDLE_DOMAIN_IRQ=y
 CONFIG_HARDIRQS_SW_RESEND=y
 CONFIG_HAS_DMA=y
 CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
+CONFIG_HAS_IOPORT_MAP=y
 # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
+CONFIG_HAVE_ARCH_AUDITSYSCALL=y
 CONFIG_HAVE_ARCH_JUMP_LABEL=y
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_HAVE_ARCH_PFN_VALID=y
 CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
 CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_ARM_SCU=y
+CONFIG_HAVE_ARM_TWD=y
 # CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
 CONFIG_HAVE_BPF_JIT=y
 CONFIG_HAVE_CC_STACKPROTECTOR=y
@@ -167,7 +197,6 @@ CONFIG_HIGHMEM=y
 # CONFIG_HIGHPTE is not set
 CONFIG_HZ_FIXED=0
 CONFIG_HZ_PERIODIC=y
-CONFIG_I2C_BOARDINFO=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_IOMMU_HELPER=y
 CONFIG_IRQCHIP=y
@@ -176,31 +205,33 @@ CONFIG_IRQ_DOMAIN_DEBUG=y
 CONFIG_IRQ_FORCED_THREADING=y
 CONFIG_IRQ_WORK=y
 # CONFIG_IWMMXT is not set
-CONFIG_KTIME_SCALAR=y
+CONFIG_KERNFS=y
 CONFIG_LEDS_GPIO=y
+CONFIG_LIBFDT=y
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_LZO_COMPRESS=y
 CONFIG_LZO_DECOMPRESS=y
 CONFIG_MACH_ARMADA_370=y
-CONFIG_MACH_ARMADA_370_XP=y
 # CONFIG_MACH_ARMADA_375 is not set
-# CONFIG_MACH_ARMADA_38X is not set
+CONFIG_MACH_ARMADA_38X=y
 CONFIG_MACH_ARMADA_XP=y
 # CONFIG_MACH_DOVE is not set
+CONFIG_MACH_MVEBU_ANY=y
+CONFIG_MACH_MVEBU_V7=y
 CONFIG_MAGIC_SYSRQ=y
 CONFIG_MARVELL_PHY=y
 CONFIG_MDIO_BOARDINFO=y
 CONFIG_MEMORY=y
+CONFIG_MIGHT_HAVE_CACHE_L2X0=y
 CONFIG_MIGHT_HAVE_PCI=y
-# CONFIG_MLX5_CORE is not set
 CONFIG_MODULES_USE_ELF_REL=y
 CONFIG_MTD_CFI_STAA=y
 CONFIG_MTD_M25P80=y
 CONFIG_MTD_NAND=y
 CONFIG_MTD_NAND_ECC=y
 CONFIG_MTD_NAND_PXA3xx=y
-# CONFIG_MTD_SM_COMMON is not set
 CONFIG_MTD_SPI_NOR=y
+CONFIG_MTD_SPLIT_SUPPORT=y
 CONFIG_MTD_UBI=y
 CONFIG_MTD_UBI_BEB_LIMIT=20
 CONFIG_MTD_UBI_BLOCK=y
@@ -221,11 +252,11 @@ CONFIG_MV_XOR=y
 CONFIG_NEED_DMA_MAP_STATE=y
 # CONFIG_NEON is not set
 CONFIG_NET_FLOW_LIMIT=y
-CONFIG_NET_RX_BUSY_POLL=y
 CONFIG_NO_BOOTMEM=y
 CONFIG_NR_CPUS=4
 CONFIG_OF=y
 CONFIG_OF_ADDRESS=y
+CONFIG_OF_ADDRESS_PCI=y
 CONFIG_OF_EARLY_FLATTREE=y
 CONFIG_OF_FLATTREE=y
 CONFIG_OF_GPIO=y
@@ -235,6 +266,7 @@ CONFIG_OF_MTD=y
 CONFIG_OF_NET=y
 CONFIG_OF_PCI=y
 CONFIG_OF_PCI_IRQ=y
+CONFIG_OF_RESERVED_MEM=y
 CONFIG_OLD_SIGACTION=y
 CONFIG_OLD_SIGSUSPEND3=y
 CONFIG_OUTER_CACHE=y
@@ -248,6 +280,7 @@ CONFIG_PERF_USE_VMALLOC=y
 CONFIG_PHYLIB=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_ARMADA_370=y
+CONFIG_PINCTRL_ARMADA_38X=y
 CONFIG_PINCTRL_ARMADA_XP=y
 CONFIG_PINCTRL_MVEBU=y
 # CONFIG_PINCTRL_SINGLE is not set
@@ -257,17 +290,21 @@ CONFIG_PJ4B_ERRATA_4742=y
 # CONFIG_PL310_ERRATA_753970 is not set
 # CONFIG_PL310_ERRATA_769419 is not set
 CONFIG_PLAT_ORION=y
+CONFIG_PM_OPP=y
 # CONFIG_PREEMPT_RCU is not set
 CONFIG_RCU_STALL_COMMON=y
 CONFIG_RFS_ACCEL=y
 CONFIG_RPS=y
 CONFIG_RTC_CLASS=y
 # CONFIG_RTC_DRV_MV is not set
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_RWSEM_XCHGADD_ALGORITHM=y
 CONFIG_SCHED_HRTICK=y
 # CONFIG_SCSI_DMA is not set
 CONFIG_SERIAL_8250_DW=y
 CONFIG_SMP=y
 CONFIG_SMP_ON_UP=y
+CONFIG_SOC_BUS=y
 CONFIG_SPARSE_IRQ=y
 CONFIG_SPI=y
 CONFIG_SPI_MASTER=y
@@ -275,7 +312,7 @@ CONFIG_SPI_ORION=y
 CONFIG_STOP_MACHINE=y
 CONFIG_SWCONFIG=y
 CONFIG_SWIOTLB=y
-# CONFIG_SWP_EMULATE is not set
+CONFIG_SWP_EMULATE=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
 # CONFIG_THUMB2_KERNEL is not set
 CONFIG_TICK_CPU_ACCOUNTING=y
@@ -289,7 +326,6 @@ CONFIG_UBIFS_FS_ZLIB=y
 CONFIG_UID16=y
 CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
 CONFIG_USB_SUPPORT=y
-# CONFIG_USB_XHCI_MVEBU is not set
 CONFIG_USE_OF=y
 CONFIG_VECTORS_BASE=0xffff0000
 CONFIG_VFP=y
@@ -300,7 +336,6 @@ CONFIG_XZ_DEC_ARM=y
 CONFIG_XZ_DEC_BCJ=y
 CONFIG_ZBOOT_ROM_BSS=0x0
 CONFIG_ZBOOT_ROM_TEXT=0x0
-# CONFIG_ZBUD is not set
 CONFIG_ZLIB_DEFLATE=y
 CONFIG_ZLIB_INFLATE=y
 CONFIG_ZONE_DMA_FLAG=0
diff --git a/target/linux/mvebu/patches-3.18/150-use_the_cpufreq-dt_platform_data_for_independent_clocks.patch b/target/linux/mvebu/patches-3.18/150-use_the_cpufreq-dt_platform_data_for_independent_clocks.patch
new file mode 100644 (file)
index 0000000..c338aef
--- /dev/null
@@ -0,0 +1,44 @@
+From 842f7d2c4d392c0571cf72e3eaca26742bebbd1e Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Tue, 2 Dec 2014 17:48:02 +0100
+Subject: ARM: mvebu: use the cpufreq-dt platform_data for independent clocks
+
+This commit adjusts the registration of the cpufreq-dt driver in the
+mvebu platform to indicate to the cpufreq driver that the platform has
+independent clocks for each CPU.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Acked-by: Jason Cooper <jason@lakedaemon.net>
+Signed-off-by: Arnd Bergmann <arnd@arndb.de>
+
+--- a/arch/arm/mach-mvebu/pmsu.c
++++ b/arch/arm/mach-mvebu/pmsu.c
+@@ -20,6 +20,7 @@
+ #include <linux/clk.h>
+ #include <linux/cpu_pm.h>
++#include <linux/cpufreq-dt.h>
+ #include <linux/delay.h>
+ #include <linux/init.h>
+ #include <linux/io.h>
+@@ -572,6 +573,10 @@ int mvebu_pmsu_dfs_request(int cpu)
+       return 0;
+ }
++struct cpufreq_dt_platform_data cpufreq_dt_pd = {
++      .independent_clocks = true,
++};
++
+ static int __init armada_xp_pmsu_cpufreq_init(void)
+ {
+       struct device_node *np;
+@@ -644,7 +649,8 @@ static int __init armada_xp_pmsu_cpufreq
+               }
+       }
+-      platform_device_register_simple("cpufreq-dt", -1, NULL, 0);
++      platform_device_register_data(NULL, "cpufreq-dt", -1,
++                                    &cpufreq_dt_pd, sizeof(cpufreq_dt_pd));
+       return 0;
+ }