diff options
author | Will Deacon <will.deacon@arm.com> | 2011-07-20 06:57:03 -0400 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2011-08-12 10:40:57 -0400 |
commit | 5cb843ca0f781b62dc9793b26926d0b8efef5576 (patch) | |
tree | d39a92f10ad51b98e989669ed47b532e85c876d0 | |
parent | 7fdd3c49629e8aab48dbd1b2f800854b0f93cba0 (diff) |
ARM: realview: ensure visibility of writes during reset
The various reset routines in mach-realview rely on an FPGA to
power-cycle the board after writing some magic runes to memory-mapped
registers.
This patch adds a dsb() following the writes, so that they become
visible before we mdelay(1000) in the arch_reset code. Without this
patch, the timeout would expire sporadically, causing the reset to fail.
Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r-- | arch/arm/mach-realview/include/mach/system.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/mach-realview/include/mach/system.h b/arch/arm/mach-realview/include/mach/system.h index a30f2e3ec178..6657ff231161 100644 --- a/arch/arm/mach-realview/include/mach/system.h +++ b/arch/arm/mach-realview/include/mach/system.h | |||
@@ -44,6 +44,7 @@ static inline void arch_reset(char mode, const char *cmd) | |||
44 | */ | 44 | */ |
45 | if (realview_reset) | 45 | if (realview_reset) |
46 | realview_reset(mode); | 46 | realview_reset(mode); |
47 | dsb(); | ||
47 | } | 48 | } |
48 | 49 | ||
49 | #endif | 50 | #endif |