2008-08-05 11:14:15 -04:00
|
|
|
/* arch/arm/mach-s3c2410/include/mach/system-reset.h
|
2008-04-15 19:15:20 -04:00
|
|
|
*
|
|
|
|
* Copyright (c) 2008 Simtec Electronics
|
|
|
|
* Ben Dooks <ben@simtec.co.uk>
|
|
|
|
*
|
|
|
|
* S3C2410 - System define for arch_reset() function
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
|
|
* published by the Free Software Foundation.
|
|
|
|
*/
|
|
|
|
|
2008-08-05 11:14:15 -04:00
|
|
|
#include <mach/hardware.h>
|
2009-05-17 18:30:45 -04:00
|
|
|
#include <plat/watchdog-reset.h>
|
2008-04-15 19:15:20 -04:00
|
|
|
|
|
|
|
extern void (*s3c24xx_reset_hook)(void);
|
|
|
|
|
|
|
|
static void
|
2009-03-19 12:20:24 -04:00
|
|
|
arch_reset(char mode, const char *cmd)
|
2008-04-15 19:15:20 -04:00
|
|
|
{
|
|
|
|
if (mode == 's') {
|
|
|
|
cpu_reset(0);
|
|
|
|
}
|
|
|
|
|
|
|
|
if (s3c24xx_reset_hook)
|
|
|
|
s3c24xx_reset_hook();
|
|
|
|
|
2009-05-17 18:30:45 -04:00
|
|
|
arch_wdt_reset();
|
2008-04-15 19:15:20 -04:00
|
|
|
|
|
|
|
/* we'll take a jump through zero as a poor second */
|
|
|
|
cpu_reset(0);
|
|
|
|
}
|