diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-11-06 11:49:50 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-05 13:57:13 +0100 |
commit | 00aa78eea20645a751db45ae4a46dae15a4576cf (patch) | |
tree | 8a1b6c54e3ca4e38e35919f7174d57e5f58c9259 /arch/arm/mach-iop13xx/setup.c | |
parent | ARM: restart: iop3xx: use new restart hook (diff) | |
download | linux-00aa78eea20645a751db45ae4a46dae15a4576cf.tar.xz linux-00aa78eea20645a751db45ae4a46dae15a4576cf.zip |
ARM: restart: iop13xx: use new restart hook
Hook these platforms restart code into the new restart hook rather
than using arch_reset().
Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-iop13xx/setup.c')
-rw-r--r-- | arch/arm/mach-iop13xx/setup.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/mach-iop13xx/setup.c b/arch/arm/mach-iop13xx/setup.c index a5b989728b9e..daabb1fa6c2c 100644 --- a/arch/arm/mach-iop13xx/setup.c +++ b/arch/arm/mach-iop13xx/setup.c @@ -606,3 +606,14 @@ static int __init iop13xx_init_adma_setup(char *str) __setup("iop13xx_init_adma", iop13xx_init_adma_setup); __setup("iop13xx_init_uart", iop13xx_init_uart_setup); __setup("iop13xx_init_i2c", iop13xx_init_i2c_setup); + +void iop13xx_restart(char mode, const char *cmd) +{ + /* + * Reset the internal bus (warning both cores are reset) + */ + write_wdtcr(IOP_WDTCR_EN_ARM); + write_wdtcr(IOP_WDTCR_EN); + write_wdtsr(IOP13XX_WDTSR_WRITE_EN | IOP13XX_WDTCR_IB_RESET); + write_wdtcr(0x1000); +} |