diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-11-28 10:48:02 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-05 12:57:16 +0000 |
commit | 35b47a405db2b26ce4e541e7add02e792b04f1fe (patch) | |
tree | 96946eeda9923f29a8e609f5becc44e6dbe86b7d /arch/arm/mach-nomadik | |
parent | 8fb06b124288bf11d9fc2406864ef419c0ebce85 (diff) | |
download | linux-35b47a405db2b26ce4e541e7add02e792b04f1fe.tar.gz linux-35b47a405db2b26ce4e541e7add02e792b04f1fe.tar.bz2 linux-35b47a405db2b26ce4e541e7add02e792b04f1fe.zip |
ARM: restart: nomadik: use new restart hook
Hook the Nomadik NHK platform restart code into the new restart hook.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-nomadik')
-rw-r--r-- | arch/arm/mach-nomadik/board-nhk8815.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/cpu-8815.c | 11 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/cpu-8815.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/include/mach/system.h | 9 |
4 files changed, 13 insertions, 9 deletions
diff --git a/arch/arm/mach-nomadik/board-nhk8815.c b/arch/arm/mach-nomadik/board-nhk8815.c index 4518050c8e8a..68c7b79bad79 100644 --- a/arch/arm/mach-nomadik/board-nhk8815.c +++ b/arch/arm/mach-nomadik/board-nhk8815.c @@ -284,4 +284,5 @@ MACHINE_START(NOMADIK, "NHK8815") .init_irq = cpu8815_init_irq, .timer = &nomadik_timer, .init_machine = nhk8815_platform_init, + .restart = cpu8815_restart, MACHINE_END diff --git a/arch/arm/mach-nomadik/cpu-8815.c b/arch/arm/mach-nomadik/cpu-8815.c index c087ea9986a1..65df7b4fdd3e 100644 --- a/arch/arm/mach-nomadik/cpu-8815.c +++ b/arch/arm/mach-nomadik/cpu-8815.c @@ -21,6 +21,7 @@ #include <linux/device.h> #include <linux/amba/bus.h> #include <linux/platform_device.h> +#include <linux/io.h> #include <plat/gpio-nomadik.h> #include <mach/hardware.h> @@ -165,3 +166,13 @@ void __init cpu8815_init_irq(void) #endif return; } + +void cpu8815_restart(char mode, const char *cmd) +{ + void __iomem *src_rstsr = io_p2v(NOMADIK_SRC_BASE + 0x18); + + /* FIXME: use egpio when implemented */ + + /* Write anything to Reset status register */ + writel(1, src_rstsr); +} diff --git a/arch/arm/mach-nomadik/cpu-8815.h b/arch/arm/mach-nomadik/cpu-8815.h index e041794ac681..71c21e8a11dc 100644 --- a/arch/arm/mach-nomadik/cpu-8815.h +++ b/arch/arm/mach-nomadik/cpu-8815.h @@ -1,3 +1,4 @@ extern void cpu8815_map_io(void); extern void cpu8815_platform_init(void); extern void cpu8815_init_irq(void); +extern void cpu8815_restart(char, const char *); diff --git a/arch/arm/mach-nomadik/include/mach/system.h b/arch/arm/mach-nomadik/include/mach/system.h index 7119f688116e..16f59f67eee1 100644 --- a/arch/arm/mach-nomadik/include/mach/system.h +++ b/arch/arm/mach-nomadik/include/mach/system.h @@ -20,9 +20,6 @@ #ifndef __ASM_ARCH_SYSTEM_H #define __ASM_ARCH_SYSTEM_H -#include <linux/io.h> -#include <mach/hardware.h> - static inline void arch_idle(void) { /* @@ -34,12 +31,6 @@ static inline void arch_idle(void) static inline void arch_reset(char mode, const char *cmd) { - void __iomem *src_rstsr = io_p2v(NOMADIK_SRC_BASE + 0x18); - - /* FIXME: use egpio when implemented */ - - /* Write anything to Reset status register */ - writel(1, src_rstsr); } #endif |