aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2013-05-09 16:05:00 -0400
committerOlof Johansson <olof@lixom.net>2013-05-09 16:05:15 -0400
commit5497e7b8967118ee45f8ef2d301fce919a35d660 (patch)
treeef4633712579d9a06fce69c0748580fe05ca19ab
parent8cbc95ee748741939222c3d38584a40c92bedcdd (diff)
parenteb16d33273532533400cb95189aa50d6b734db57 (diff)
Merge branch 'late/fixes' into fixes
* late/fixes: ARM: OMAP2+: Fix unmet direct dependencies for SERIAL_OMAP ARM: ux500: always select ABX500_CORE ARM: SIRF: select SMP_ON_UP only on SMP builds ARM: SPEAr: conditionalize l2x0 support ARM: imx: build CPU suspend code only when needed ARM: OMAP: build SMP code only for OMAP4/5 ARM: tegra: Tegra114 needs CPU_FREQ_TABLE ARM: default machine descriptor for multiplatform Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r--arch/arm/Kconfig1
-rw-r--r--arch/arm/configs/omap2plus_defconfig2
-rw-r--r--arch/arm/kernel/devtree.c7
-rw-r--r--arch/arm/kernel/setup.c13
-rw-r--r--arch/arm/mach-imx/headsmp.S2
-rw-r--r--arch/arm/mach-omap2/Kconfig2
-rw-r--r--arch/arm/mach-omap2/Makefile8
-rw-r--r--arch/arm/mach-prima2/Kconfig2
-rw-r--r--arch/arm/mach-spear/spear13xx.c2
-rw-r--r--arch/arm/mach-tegra/Kconfig1
-rw-r--r--arch/arm/mach-ux500/Kconfig2
11 files changed, 32 insertions, 10 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 46e2b5228606..d423d58f938d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -897,7 +897,6 @@ config ARCH_MULTI_V7
897 bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)" 897 bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
898 default y 898 default y
899 select ARCH_MULTI_V6_V7 899 select ARCH_MULTI_V6_V7
900 select ARCH_VEXPRESS
901 select CPU_V7 900 select CPU_V7
902 901
903config ARCH_MULTI_V6_V7 902config ARCH_MULTI_V6_V7
diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index 33903ca0d879..51a20a441773 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -137,6 +137,8 @@ CONFIG_SERIAL_8250_DETECT_IRQ=y
137CONFIG_SERIAL_8250_RSA=y 137CONFIG_SERIAL_8250_RSA=y
138CONFIG_SERIAL_AMBA_PL011=y 138CONFIG_SERIAL_AMBA_PL011=y
139CONFIG_SERIAL_AMBA_PL011_CONSOLE=y 139CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
140CONFIG_SERIAL_OMAP=y
141CONFIG_SERIAL_OMAP_CONSOLE=y
140CONFIG_HW_RANDOM=y 142CONFIG_HW_RANDOM=y
141CONFIG_I2C_CHARDEV=y 143CONFIG_I2C_CHARDEV=y
142CONFIG_SPI=y 144CONFIG_SPI=y
diff --git a/arch/arm/kernel/devtree.c b/arch/arm/kernel/devtree.c
index 70f1bdeb241b..5af04f6daa33 100644
--- a/arch/arm/kernel/devtree.c
+++ b/arch/arm/kernel/devtree.c
@@ -180,6 +180,13 @@ struct machine_desc * __init setup_machine_fdt(unsigned int dt_phys)
180 unsigned long dt_root; 180 unsigned long dt_root;
181 const char *model; 181 const char *model;
182 182
183#ifdef CONFIG_ARCH_MULTIPLATFORM
184 DT_MACHINE_START(GENERIC_DT, "Generic DT based system")
185 MACHINE_END
186
187 mdesc_best = (struct machine_desc *)&__mach_desc_GENERIC_DT;
188#endif
189
183 if (!dt_phys) 190 if (!dt_phys)
184 return NULL; 191 return NULL;
185 192
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 728007c4a2b7..1522c7ae31b0 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -18,6 +18,7 @@
18#include <linux/bootmem.h> 18#include <linux/bootmem.h>
19#include <linux/seq_file.h> 19#include <linux/seq_file.h>
20#include <linux/screen_info.h> 20#include <linux/screen_info.h>
21#include <linux/of_platform.h>
21#include <linux/init.h> 22#include <linux/init.h>
22#include <linux/kexec.h> 23#include <linux/kexec.h>
23#include <linux/of_fdt.h> 24#include <linux/of_fdt.h>
@@ -659,9 +660,19 @@ struct screen_info screen_info = {
659 660
660static int __init customize_machine(void) 661static int __init customize_machine(void)
661{ 662{
662 /* customizes platform devices, or adds new ones */ 663 /*
664 * customizes platform devices, or adds new ones
665 * On DT based machines, we fall back to populating the
666 * machine from the device tree, if no callback is provided,
667 * otherwise we would always need an init_machine callback.
668 */
663 if (machine_desc->init_machine) 669 if (machine_desc->init_machine)
664 machine_desc->init_machine(); 670 machine_desc->init_machine();
671#ifdef CONFIG_OF
672 else
673 of_platform_populate(NULL, of_default_bus_match_table,
674 NULL, NULL);
675#endif
665 return 0; 676 return 0;
666} 677}
667arch_initcall(customize_machine); 678arch_initcall(customize_machine);
diff --git a/arch/arm/mach-imx/headsmp.S b/arch/arm/mach-imx/headsmp.S
index a58c8b0527cc..67b9c48dcafe 100644
--- a/arch/arm/mach-imx/headsmp.S
+++ b/arch/arm/mach-imx/headsmp.S
@@ -24,7 +24,7 @@ ENTRY(v7_secondary_startup)
24ENDPROC(v7_secondary_startup) 24ENDPROC(v7_secondary_startup)
25#endif 25#endif
26 26
27#ifdef CONFIG_PM 27#ifdef CONFIG_ARM_CPU_SUSPEND
28/* 28/*
29 * The following code must assume it is running from physical address 29 * The following code must assume it is running from physical address
30 * where absolute virtual addresses to the data section have to be 30 * where absolute virtual addresses to the data section have to be
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 857b1f097fd8..f49cd51e162a 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -37,8 +37,6 @@ config ARCH_OMAP2PLUS_TYPICAL
37 select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 37 select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
38 select PM_RUNTIME 38 select PM_RUNTIME
39 select REGULATOR 39 select REGULATOR
40 select SERIAL_OMAP
41 select SERIAL_OMAP_CONSOLE
42 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4 40 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
43 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4 41 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
44 select VFP 42 select VFP
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 62bb352c2d37..55a9d6777683 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -32,12 +32,12 @@ obj-$(CONFIG_SOC_HAS_OMAP2_SDRC) += sdrc.o
32 32
33# SMP support ONLY available for OMAP4 33# SMP support ONLY available for OMAP4
34 34
35obj-$(CONFIG_SMP) += omap-smp.o omap-headsmp.o 35smp-$(CONFIG_SMP) += omap-smp.o omap-headsmp.o
36obj-$(CONFIG_HOTPLUG_CPU) += omap-hotplug.o 36smp-$(CONFIG_HOTPLUG_CPU) += omap-hotplug.o
37omap-4-5-common = omap4-common.o omap-wakeupgen.o \ 37omap-4-5-common = omap4-common.o omap-wakeupgen.o \
38 sleep44xx.o 38 sleep44xx.o
39obj-$(CONFIG_ARCH_OMAP4) += $(omap-4-5-common) 39obj-$(CONFIG_ARCH_OMAP4) += $(omap-4-5-common) $(smp-y)
40obj-$(CONFIG_SOC_OMAP5) += $(omap-4-5-common) 40obj-$(CONFIG_SOC_OMAP5) += $(omap-4-5-common) $(smp-y)
41 41
42plus_sec := $(call as-instr,.arch_extension sec,+sec) 42plus_sec := $(call as-instr,.arch_extension sec,+sec)
43AFLAGS_omap-headsmp.o :=-Wa,-march=armv7-a$(plus_sec) 43AFLAGS_omap-headsmp.o :=-Wa,-march=armv7-a$(plus_sec)
diff --git a/arch/arm/mach-prima2/Kconfig b/arch/arm/mach-prima2/Kconfig
index 80ca974b2f82..6988b117fc17 100644
--- a/arch/arm/mach-prima2/Kconfig
+++ b/arch/arm/mach-prima2/Kconfig
@@ -38,7 +38,7 @@ config ARCH_MARCO
38 select CPU_V7 38 select CPU_V7
39 select HAVE_ARM_SCU if SMP 39 select HAVE_ARM_SCU if SMP
40 select HAVE_SMP 40 select HAVE_SMP
41 select SMP_ON_UP 41 select SMP_ON_UP if SMP
42 help 42 help
43 Support for CSR SiRFSoC ARM Cortex A9 Platform 43 Support for CSR SiRFSoC ARM Cortex A9 Platform
44 44
diff --git a/arch/arm/mach-spear/spear13xx.c b/arch/arm/mach-spear/spear13xx.c
index 3621599c38ad..7aa6e8cf830f 100644
--- a/arch/arm/mach-spear/spear13xx.c
+++ b/arch/arm/mach-spear/spear13xx.c
@@ -35,6 +35,8 @@ void __init spear13xx_l2x0_init(void)
35 * write alloc and 'Full line of zero' options 35 * write alloc and 'Full line of zero' options
36 * 36 *
37 */ 37 */
38 if (!IS_ENABLED(CONFIG_CACHE_L2X0))
39 return;
38 40
39 writel_relaxed(0x06, VA_L2CC_BASE + L2X0_PREFETCH_CTRL); 41 writel_relaxed(0x06, VA_L2CC_BASE + L2X0_PREFETCH_CTRL);
40 42
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index 20c3b372cdf5..84d72fc36dfe 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -63,6 +63,7 @@ config ARCH_TEGRA_114_SOC
63 select ARM_ARCH_TIMER 63 select ARM_ARCH_TIMER
64 select ARM_GIC 64 select ARM_GIC
65 select ARM_L1_CACHE_SHIFT_6 65 select ARM_L1_CACHE_SHIFT_6
66 select CPU_FREQ_TABLE if CPU_FREQ
66 select CPU_V7 67 select CPU_V7
67 select PINCTRL 68 select PINCTRL
68 select PINCTRL_TEGRA114 69 select PINCTRL_TEGRA114
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index f66d7deae46d..6a4387e39df8 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -19,6 +19,8 @@ if ARCH_U8500
19config UX500_SOC_COMMON 19config UX500_SOC_COMMON
20 bool 20 bool
21 default y 21 default y
22 select ABX500_CORE
23 select AB8500_CORE
22 select ARM_ERRATA_754322 24 select ARM_ERRATA_754322
23 select ARM_ERRATA_764369 if SMP 25 select ARM_ERRATA_764369 if SMP
24 select ARM_GIC 26 select ARM_GIC