aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ux500
diff options
context:
space:
mode:
authorRabin Vincent <rabin.vincent@stericsson.com>2010-05-03 02:27:31 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-05-04 12:50:00 -0400
commitf38406bbfc5e1d4bd9726454ecb60ba52aa9da11 (patch)
treef2586f252296df9d0500e0e2a9eb672815a7c0f3 /arch/arm/mach-ux500
parent72638ddd1422df38d1b1b269038cfc8d66152c10 (diff)
ARM: 6077/1: ux500: add SOC Kconfig variables
This adds the different config options for SoCs DB8500 and DB5500 and refines the SoC/CPU detection code to support the DB5500 as well via these. The selection between DB5500 and DB8500 is currently a simple compile-time choice. Acked-by: Linus Walleij <linus.walleij@stericsson.com> Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-ux500')
-rw-r--r--arch/arm/mach-ux500/Kconfig22
-rw-r--r--arch/arm/mach-ux500/include/mach/hardware.h13
2 files changed, 29 insertions, 6 deletions
diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig
index cd412a3e0ab8..699588f7da87 100644
--- a/arch/arm/mach-ux500/Kconfig
+++ b/arch/arm/mach-ux500/Kconfig
@@ -1,16 +1,30 @@
1if ARCH_U8500
2
3config UX500_SOC_COMMON
4 bool
5 default y
6 select ARM_GIC
7 select HAS_MTU
8 select NOMADIK_GPIO
9
10config UX500_SOC_DB8500
11 bool
12
13config UX500_SOC_DB5500
14 bool
15
1menu "ST-Ericsson platform type" 16menu "ST-Ericsson platform type"
2 depends on ARCH_U8500
3 17
4comment "ST-Ericsson Multicore Mobile Platforms" 18comment "ST-Ericsson Multicore Mobile Platforms"
5 19
6config MACH_U8500_MOP 20config MACH_U8500_MOP
7 bool "U8500 Early Development platform" 21 bool "U8500 Early Development platform"
8 default y 22 default y
9 select ARM_GIC 23 select UX500_SOC_DB8500
10 select HAS_MTU
11 select NOMADIK_GPIO
12 help 24 help
13 Include support for mop500 development platform 25 Include support for mop500 development platform
14 based on U8500 architecture. The platform is based 26 based on U8500 architecture. The platform is based
15 on early drop silicon version of 8500. 27 on early drop silicon version of 8500.
16endmenu 28endmenu
29
30endif
diff --git a/arch/arm/mach-ux500/include/mach/hardware.h b/arch/arm/mach-ux500/include/mach/hardware.h
index 99ca89fe9b30..d86b3543dd23 100644
--- a/arch/arm/mach-ux500/include/mach/hardware.h
+++ b/arch/arm/mach-ux500/include/mach/hardware.h
@@ -147,14 +147,23 @@
147 147
148#include <asm/cputype.h> 148#include <asm/cputype.h>
149 149
150static inline bool cpu_is_u8500(void)
151{
152#ifdef CONFIG_UX500_SOC_DB8500
153 return 1;
154#else
155 return 0;
156#endif
157}
158
150static inline bool cpu_is_u8500ed(void) 159static inline bool cpu_is_u8500ed(void)
151{ 160{
152 return (read_cpuid_id() & 15) == 0; 161 return cpu_is_u8500() && (read_cpuid_id() & 15) == 0;
153} 162}
154 163
155static inline bool cpu_is_u8500v1(void) 164static inline bool cpu_is_u8500v1(void)
156{ 165{
157 return (read_cpuid_id() & 15) == 1; 166 return cpu_is_u8500() && (read_cpuid_id() & 15) == 1;
158} 167}
159 168
160#endif 169#endif