summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c2412/s3c2412.c
diff options
context:
space:
mode:
authorHeiko Stuebner2011-12-22 23:37:44 +0100
committerRussell King2012-01-05 13:57:18 +0100
commit57538975917d4b0c467dbdd21328337f059bc027 (patch)
treee7fbdeacc9d55950f8092edf53603ec557edd667 /arch/arm/mach-s3c2412/s3c2412.c
parentARM: restart: riscpc: use new restart hook (diff)
downloadkernel-qcow2-linux-57538975917d4b0c467dbdd21328337f059bc027.tar.gz
kernel-qcow2-linux-57538975917d4b0c467dbdd21328337f059bc027.tar.xz
kernel-qcow2-linux-57538975917d4b0c467dbdd21328337f059bc027.zip
ARM: 7254/1: restart: S3C24XX: move SWRST based S3C platforms to
S3C2412/S3C2416/S3C2443 use a special register to signal the reset to the processor and used therefore the s3c24xx_reset_hook mechanism in the s3c24xx-specific arch reset. This patch introduces restart functions for these architectures, moves the board files to them and removes the s3c24xx_reset_hook infrastructure, as all users are gone. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-s3c2412/s3c2412.c')
-rw-r--r--arch/arm/mach-s3c2412/s3c2412.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/arch/arm/mach-s3c2412/s3c2412.c b/arch/arm/mach-s3c2412/s3c2412.c
index 57a1e01e4e50..867ce2e269f6 100644
--- a/arch/arm/mach-s3c2412/s3c2412.c
+++ b/arch/arm/mach-s3c2412/s3c2412.c
@@ -32,7 +32,6 @@
#include <asm/proc-fns.h>
#include <asm/irq.h>
-#include <mach/reset.h>
#include <mach/idle.h>
#include <plat/cpu-freq.h>
@@ -131,8 +130,11 @@ static void s3c2412_idle(void)
cpu_do_idle();
}
-static void s3c2412_hard_reset(void)
+void s3c2412_restart(char mode, const char *cmd)
{
+ if (mode == 's')
+ soft_restart(0);
+
/* errata "Watch-dog/Software Reset Problem" specifies that
* this reset must be done with the SYSCLK sourced from
* EXTCLK instead of FOUT to avoid a glitch in the reset
@@ -164,10 +166,6 @@ void __init s3c2412_map_io(void)
s3c24xx_idle = s3c2412_idle;
- /* set custom reset hook */
-
- s3c24xx_reset_hook = s3c2412_hard_reset;
-
/* register our io-tables */
iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc));