Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[linux-2.6] / include / asm-arm / arch-pxa / system.h
1 /*
2  * linux/include/asm-arm/arch-pxa/system.h
3  *
4  * Author:      Nicolas Pitre
5  * Created:     Jun 15, 2001
6  * Copyright:   MontaVista Software Inc.
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  */
12
13 #include <asm/proc-fns.h>
14 #include "hardware.h"
15 #include "pxa2xx-regs.h"
16 #include "pxa-regs.h"
17
18 static inline void arch_idle(void)
19 {
20         cpu_do_idle();
21 }
22
23
24 static inline void arch_reset(char mode)
25 {
26         if (cpu_is_pxa2xx())
27                 RCSR = RCSR_HWR | RCSR_WDR | RCSR_SMR | RCSR_GPR;
28
29         if (mode == 's') {
30                 /* Jump into ROM at address 0 */
31                 cpu_reset(0);
32         } else {
33                 /* Initialize the watchdog and let it fire */
34                 OWER = OWER_WME;
35                 OSSR = OSSR_M3;
36                 OSMR3 = OSCR + 368640;  /* ... in 100 ms */
37         }
38 }
39