2005-04-16 18:20:36 -04:00
|
|
|
/*
|
|
|
|
* linux/include/asm-arm/arch-pxa/system.h
|
|
|
|
*
|
|
|
|
* Author: Nicolas Pitre
|
|
|
|
* Created: Jun 15, 2001
|
|
|
|
* Copyright: MontaVista Software Inc.
|
|
|
|
*
|
|
|
|
* 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.
|
|
|
|
*/
|
|
|
|
|
2006-06-19 14:57:12 -04:00
|
|
|
#include <asm/proc-fns.h>
|
2005-04-16 18:20:36 -04:00
|
|
|
#include "hardware.h"
|
|
|
|
#include "pxa-regs.h"
|
|
|
|
|
|
|
|
static inline void arch_idle(void)
|
|
|
|
{
|
|
|
|
cpu_do_idle();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
static inline void arch_reset(char mode)
|
|
|
|
{
|
2008-05-08 11:50:39 -04:00
|
|
|
if (cpu_is_pxa2xx())
|
|
|
|
RCSR = RCSR_HWR | RCSR_WDR | RCSR_SMR | RCSR_GPR;
|
2008-04-21 06:54:13 -04:00
|
|
|
|
2005-04-16 18:20:36 -04:00
|
|
|
if (mode == 's') {
|
|
|
|
/* Jump into ROM at address 0 */
|
|
|
|
cpu_reset(0);
|
|
|
|
} else {
|
|
|
|
/* Initialize the watchdog and let it fire */
|
|
|
|
OWER = OWER_WME;
|
|
|
|
OSSR = OSSR_M3;
|
|
|
|
OSMR3 = OSCR + 368640; /* ... in 100 ms */
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|