diff options
Diffstat (limited to 'arch/arm/mach-nomadik')
-rw-r--r-- | arch/arm/mach-nomadik/board-nhk8815.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/cpu-8815.c | 12 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/cpu-8815.h | 4 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/include/mach/setup.h | 3 | ||||
-rw-r--r-- | arch/arm/mach-nomadik/include/mach/system.h | 13 |
5 files changed, 19 insertions, 16 deletions
diff --git a/arch/arm/mach-nomadik/board-nhk8815.c b/arch/arm/mach-nomadik/board-nhk8815.c index f98259c050ee..7c878bf00340 100644 --- a/arch/arm/mach-nomadik/board-nhk8815.c +++ b/arch/arm/mach-nomadik/board-nhk8815.c | |||
@@ -35,6 +35,8 @@ | |||
35 | #include <mach/nand.h> | 35 | #include <mach/nand.h> |
36 | #include <mach/fsmc.h> | 36 | #include <mach/fsmc.h> |
37 | 37 | ||
38 | #include "cpu-8815.h" | ||
39 | |||
38 | /* Initial value for SRC control register: all timers use MXTAL/8 source */ | 40 | /* Initial value for SRC control register: all timers use MXTAL/8 source */ |
39 | #define SRC_CR_INIT_MASK 0x00007fff | 41 | #define SRC_CR_INIT_MASK 0x00007fff |
40 | #define SRC_CR_INIT_VAL 0x2aaa8000 | 42 | #define SRC_CR_INIT_VAL 0x2aaa8000 |
@@ -284,4 +286,5 @@ MACHINE_START(NOMADIK, "NHK8815") | |||
284 | .handle_irq = vic_handle_irq, | 286 | .handle_irq = vic_handle_irq, |
285 | .timer = &nomadik_timer, | 287 | .timer = &nomadik_timer, |
286 | .init_machine = nhk8815_platform_init, | 288 | .init_machine = nhk8815_platform_init, |
289 | .restart = cpu8815_restart, | ||
287 | MACHINE_END | 290 | MACHINE_END |
diff --git a/arch/arm/mach-nomadik/cpu-8815.c b/arch/arm/mach-nomadik/cpu-8815.c index dc67717db6f0..65df7b4fdd3e 100644 --- a/arch/arm/mach-nomadik/cpu-8815.c +++ b/arch/arm/mach-nomadik/cpu-8815.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <linux/device.h> | 21 | #include <linux/device.h> |
22 | #include <linux/amba/bus.h> | 22 | #include <linux/amba/bus.h> |
23 | #include <linux/platform_device.h> | 23 | #include <linux/platform_device.h> |
24 | #include <linux/io.h> | ||
24 | 25 | ||
25 | #include <plat/gpio-nomadik.h> | 26 | #include <plat/gpio-nomadik.h> |
26 | #include <mach/hardware.h> | 27 | #include <mach/hardware.h> |
@@ -32,6 +33,7 @@ | |||
32 | #include <asm/hardware/cache-l2x0.h> | 33 | #include <asm/hardware/cache-l2x0.h> |
33 | 34 | ||
34 | #include "clock.h" | 35 | #include "clock.h" |
36 | #include "cpu-8815.h" | ||
35 | 37 | ||
36 | #define __MEM_4K_RESOURCE(x) \ | 38 | #define __MEM_4K_RESOURCE(x) \ |
37 | .res = {.start = (x), .end = (x) + SZ_4K - 1, .flags = IORESOURCE_MEM} | 39 | .res = {.start = (x), .end = (x) + SZ_4K - 1, .flags = IORESOURCE_MEM} |
@@ -164,3 +166,13 @@ void __init cpu8815_init_irq(void) | |||
164 | #endif | 166 | #endif |
165 | return; | 167 | return; |
166 | } | 168 | } |
169 | |||
170 | void cpu8815_restart(char mode, const char *cmd) | ||
171 | { | ||
172 | void __iomem *src_rstsr = io_p2v(NOMADIK_SRC_BASE + 0x18); | ||
173 | |||
174 | /* FIXME: use egpio when implemented */ | ||
175 | |||
176 | /* Write anything to Reset status register */ | ||
177 | writel(1, src_rstsr); | ||
178 | } | ||
diff --git a/arch/arm/mach-nomadik/cpu-8815.h b/arch/arm/mach-nomadik/cpu-8815.h new file mode 100644 index 000000000000..71c21e8a11dc --- /dev/null +++ b/arch/arm/mach-nomadik/cpu-8815.h | |||
@@ -0,0 +1,4 @@ | |||
1 | extern void cpu8815_map_io(void); | ||
2 | extern void cpu8815_platform_init(void); | ||
3 | extern void cpu8815_init_irq(void); | ||
4 | extern void cpu8815_restart(char, const char *); | ||
diff --git a/arch/arm/mach-nomadik/include/mach/setup.h b/arch/arm/mach-nomadik/include/mach/setup.h index b7897edf1f35..bcaeaf41c053 100644 --- a/arch/arm/mach-nomadik/include/mach/setup.h +++ b/arch/arm/mach-nomadik/include/mach/setup.h | |||
@@ -12,9 +12,6 @@ | |||
12 | 12 | ||
13 | #ifdef CONFIG_NOMADIK_8815 | 13 | #ifdef CONFIG_NOMADIK_8815 |
14 | 14 | ||
15 | extern void cpu8815_map_io(void); | ||
16 | extern void cpu8815_platform_init(void); | ||
17 | extern void cpu8815_init_irq(void); | ||
18 | extern void nmdk_timer_init(void); | 15 | extern void nmdk_timer_init(void); |
19 | 16 | ||
20 | #endif /* NOMADIK_8815 */ | 17 | #endif /* NOMADIK_8815 */ |
diff --git a/arch/arm/mach-nomadik/include/mach/system.h b/arch/arm/mach-nomadik/include/mach/system.h index 7119f688116e..25e198b8976c 100644 --- a/arch/arm/mach-nomadik/include/mach/system.h +++ b/arch/arm/mach-nomadik/include/mach/system.h | |||
@@ -20,9 +20,6 @@ | |||
20 | #ifndef __ASM_ARCH_SYSTEM_H | 20 | #ifndef __ASM_ARCH_SYSTEM_H |
21 | #define __ASM_ARCH_SYSTEM_H | 21 | #define __ASM_ARCH_SYSTEM_H |
22 | 22 | ||
23 | #include <linux/io.h> | ||
24 | #include <mach/hardware.h> | ||
25 | |||
26 | static inline void arch_idle(void) | 23 | static inline void arch_idle(void) |
27 | { | 24 | { |
28 | /* | 25 | /* |
@@ -32,14 +29,4 @@ static inline void arch_idle(void) | |||
32 | cpu_do_idle(); | 29 | cpu_do_idle(); |
33 | } | 30 | } |
34 | 31 | ||
35 | static inline void arch_reset(char mode, const char *cmd) | ||
36 | { | ||
37 | void __iomem *src_rstsr = io_p2v(NOMADIK_SRC_BASE + 0x18); | ||
38 | |||
39 | /* FIXME: use egpio when implemented */ | ||
40 | |||
41 | /* Write anything to Reset status register */ | ||
42 | writel(1, src_rstsr); | ||
43 | } | ||
44 | |||
45 | #endif | 32 | #endif |