Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d4156d52 authored by Ben Dooks's avatar Ben Dooks Committed by Russell King
Browse files

[ARM] 4204/1: S3C24XX: add hook to specify cpu reset



Add hook code to specify cpu specific reset call

Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent d9c0ebbd
Loading
Loading
Loading
Loading
+22 −0
Original line number Diff line number Diff line
/* linux/include/asm-arm/arch-s3c2410/reset.h
 *
 * Copyright (c) 2007 Simtec Electronics
 *	Ben Dooks <ben@simtec.co.uk>
 *	http://armlinux.simtec.co.uk/
 *
 * 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.
 *
 * S3C2410 CPU reset controls
*/

#ifndef __ASM_ARCH_RESET_H
#define __ASM_ARCH_RESET_H __FILE__

/* This allows the over-ride of the default reset code
*/

extern void (*s3c24xx_reset_hook)(void);

#endif /* __ASM_ARCH_RESET_H */
+5 −1
Original line number Diff line number Diff line
@@ -15,11 +15,13 @@

#include <asm/arch/map.h>
#include <asm/arch/idle.h>
#include <asm/arch/reset.h>

#include <asm/arch/regs-watchdog.h>
#include <asm/arch/regs-clock.h>

void (*s3c24xx_idle)(void);
void (*s3c24xx_reset_hook)(void);

void s3c24xx_default_idle(void)
{
@@ -54,7 +56,6 @@ static void arch_idle(void)
		s3c24xx_default_idle();
}


static void
arch_reset(char mode)
{
@@ -62,6 +63,9 @@ arch_reset(char mode)
		cpu_reset(0);
	}

	if (s3c24xx_reset_hook)
		s3c24xx_reset_hook();

	printk("arch_reset: attempting watchdog reset\n");

	__raw_writel(0, S3C2410_WTCON);	  /* disable watchdog, to be safe  */