aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-arm/arch-omap/system.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2005-07-10 15:57:49 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-10 15:57:49 -0400
commit5c23804a0941a111752fdacefe0bea2db1b4d93f (patch)
tree482436cd247783c7df3d522fdc4ee51e2b3e87dc /include/asm-arm/arch-omap/system.h
parent58c853c6eabe93ab5e5daf7150fbb4e562acbb79 (diff)
parentec6bced6c7b92904f5ead39c9c1b8dc734e6eff0 (diff)
Merge master.kernel.org:~rmk/linux-2.6-arm.git
Diffstat (limited to 'include/asm-arm/arch-omap/system.h')
-rw-r--r--include/asm-arm/arch-omap/system.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/include/asm-arm/arch-omap/system.h b/include/asm-arm/arch-omap/system.h
index 17a2c4825f07..ff37bc27e603 100644
--- a/include/asm-arm/arch-omap/system.h
+++ b/include/asm-arm/arch-omap/system.h
@@ -5,7 +5,9 @@
5#ifndef __ASM_ARCH_SYSTEM_H 5#ifndef __ASM_ARCH_SYSTEM_H
6#define __ASM_ARCH_SYSTEM_H 6#define __ASM_ARCH_SYSTEM_H
7#include <linux/config.h> 7#include <linux/config.h>
8#include <asm/mach-types.h>
8#include <asm/arch/hardware.h> 9#include <asm/arch/hardware.h>
10#include <asm/mach-types.h>
9 11
10static inline void arch_idle(void) 12static inline void arch_idle(void)
11{ 13{
@@ -14,7 +16,24 @@ static inline void arch_idle(void)
14 16
15static inline void arch_reset(char mode) 17static inline void arch_reset(char mode)
16{ 18{
17 omap_writew(1, ARM_RSTCT1); 19
20#ifdef CONFIG_ARCH_OMAP16XX
21 /*
22 * Workaround for 5912/1611b bug mentioned in sprz209d.pdf p. 28
23 * "Global Software Reset Affects Traffic Controller Frequency".
24 */
25 if (cpu_is_omap5912()) {
26 omap_writew(omap_readw(DPLL_CTL) & ~(1 << 4),
27 DPLL_CTL);
28 omap_writew(0x8, ARM_RSTCT1);
29 }
30#endif
31#ifdef CONFIG_MACH_VOICEBLUE
32 if (machine_is_voiceblue())
33 voiceblue_reset();
34 else
35#endif
36 omap_writew(1, ARM_RSTCT1);
18} 37}
19 38
20#endif 39#endif