diff options
Diffstat (limited to 'arch/arm/plat-spear')
-rw-r--r-- | arch/arm/plat-spear/Kconfig | 12 | ||||
-rw-r--r-- | arch/arm/plat-spear/Makefile | 5 | ||||
-rw-r--r-- | arch/arm/plat-spear/restart.c | 5 |
3 files changed, 20 insertions, 2 deletions
diff --git a/arch/arm/plat-spear/Kconfig b/arch/arm/plat-spear/Kconfig index 387655b5ce05..4404f82d5979 100644 --- a/arch/arm/plat-spear/Kconfig +++ b/arch/arm/plat-spear/Kconfig | |||
@@ -8,6 +8,17 @@ choice | |||
8 | prompt "ST SPEAr Family" | 8 | prompt "ST SPEAr Family" |
9 | default ARCH_SPEAR3XX | 9 | default ARCH_SPEAR3XX |
10 | 10 | ||
11 | config ARCH_SPEAR13XX | ||
12 | bool "ST SPEAr13xx with Device Tree" | ||
13 | select ARM_GIC | ||
14 | select CPU_V7 | ||
15 | select USE_OF | ||
16 | select HAVE_SMP | ||
17 | select MIGHT_HAVE_CACHE_L2X0 | ||
18 | select PINCTRL | ||
19 | help | ||
20 | Supports for ARM's SPEAR13XX family | ||
21 | |||
11 | config ARCH_SPEAR3XX | 22 | config ARCH_SPEAR3XX |
12 | bool "ST SPEAr3xx with Device Tree" | 23 | bool "ST SPEAr3xx with Device Tree" |
13 | select ARM_VIC | 24 | select ARM_VIC |
@@ -27,6 +38,7 @@ config ARCH_SPEAR6XX | |||
27 | endchoice | 38 | endchoice |
28 | 39 | ||
29 | # Adding SPEAr machine specific configuration files | 40 | # Adding SPEAr machine specific configuration files |
41 | source "arch/arm/mach-spear13xx/Kconfig" | ||
30 | source "arch/arm/mach-spear3xx/Kconfig" | 42 | source "arch/arm/mach-spear3xx/Kconfig" |
31 | source "arch/arm/mach-spear6xx/Kconfig" | 43 | source "arch/arm/mach-spear6xx/Kconfig" |
32 | 44 | ||
diff --git a/arch/arm/plat-spear/Makefile b/arch/arm/plat-spear/Makefile index 38f1235f4632..2607bd05c525 100644 --- a/arch/arm/plat-spear/Makefile +++ b/arch/arm/plat-spear/Makefile | |||
@@ -3,6 +3,7 @@ | |||
3 | # | 3 | # |
4 | 4 | ||
5 | # Common support | 5 | # Common support |
6 | obj-y := restart.o time.o pl080.o | 6 | obj-y := restart.o time.o |
7 | 7 | ||
8 | obj-$(CONFIG_ARCH_SPEAR3XX) += shirq.o | 8 | obj-$(CONFIG_ARCH_SPEAR3XX) += pl080.o shirq.o |
9 | obj-$(CONFIG_ARCH_SPEAR6XX) += pl080.o | ||
diff --git a/arch/arm/plat-spear/restart.c b/arch/arm/plat-spear/restart.c index 4471a232713a..ea0a61302b7e 100644 --- a/arch/arm/plat-spear/restart.c +++ b/arch/arm/plat-spear/restart.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <mach/spear.h> | 16 | #include <mach/spear.h> |
17 | #include <mach/generic.h> | 17 | #include <mach/generic.h> |
18 | 18 | ||
19 | #define SPEAR13XX_SYS_SW_RES (VA_MISC_BASE + 0x204) | ||
19 | void spear_restart(char mode, const char *cmd) | 20 | void spear_restart(char mode, const char *cmd) |
20 | { | 21 | { |
21 | if (mode == 's') { | 22 | if (mode == 's') { |
@@ -23,6 +24,10 @@ void spear_restart(char mode, const char *cmd) | |||
23 | soft_restart(0); | 24 | soft_restart(0); |
24 | } else { | 25 | } else { |
25 | /* hardware reset, Use on-chip reset capability */ | 26 | /* hardware reset, Use on-chip reset capability */ |
27 | #ifdef CONFIG_ARCH_SPEAR13XX | ||
28 | writel_relaxed(0x01, SPEAR13XX_SYS_SW_RES); | ||
29 | #else | ||
26 | sysctl_soft_reset((void __iomem *)VA_SPEAR_SYS_CTRL_BASE); | 30 | sysctl_soft_reset((void __iomem *)VA_SPEAR_SYS_CTRL_BASE); |
31 | #endif | ||
27 | } | 32 | } |
28 | } | 33 | } |