ARM: restart: prima2: use new restart hook

Hook these platforms restart code into the new restart hook rather
than using arch_reset().

Reviewed-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Russell King 2011-11-05 10:23:27 +00:00
parent a1c1cee9ad
commit 125c4033f0
4 changed files with 9 additions and 8 deletions

View file

@ -16,6 +16,7 @@ extern struct sys_timer sirfsoc_timer;
extern void __init sirfsoc_of_irq_init(void);
extern void __init sirfsoc_of_clk_init(void);
extern void sirfsoc_restart(char, const char *);
#ifndef CONFIG_DEBUG_LL
static inline void sirfsoc_map_lluart(void) {}

View file

@ -9,13 +9,6 @@
#ifndef __MACH_SYSTEM_H__
#define __MACH_SYSTEM_H__
#include <linux/bitops.h>
#include <mach/hardware.h>
#define SIRFSOC_SYS_RST_BIT BIT(31)
extern void __iomem *sirfsoc_rstc_base;
static inline void arch_idle(void)
{
cpu_do_idle();
@ -23,7 +16,6 @@ static inline void arch_idle(void)
static inline void arch_reset(char mode, const char *cmd)
{
writel(SIRFSOC_SYS_RST_BIT, sirfsoc_rstc_base);
}
#endif

View file

@ -40,4 +40,5 @@ MACHINE_START(PRIMA2_EVB, "prima2cb")
.dma_zone_size = SZ_256M,
.init_machine = sirfsoc_mach_init,
.dt_compat = prima2cb_dt_match,
.restart = sirfsoc_restart,
MACHINE_END

View file

@ -68,3 +68,10 @@ int sirfsoc_reset_device(struct device *dev)
return 0;
}
#define SIRFSOC_SYS_RST_BIT BIT(31)
void sirfsoc_restart(char mode, const char *cmd)
{
writel(SIRFSOC_SYS_RST_BIT, sirfsoc_rstc_base);
}