summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2011-07-20 11:57:03 +0100
committerNicolas Pitre <nicolas.pitre@linaro.org>2011-08-17 11:37:18 -0400
commitf47afad902c141ab6e79949f02c756ce977ce90c (patch)
tree12190ce3b5a39ca03a54098b7e13798abc43a657
parente150c289a73089aaa273bf0c3803730b326cd9d1 (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> (cherry picked from commit 5cb843ca0f781b62dc9793b26926d0b8efef5576)
-rw-r--r--arch/arm/mach-realview/include/mach/system.h1
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 a30f2e3ec17..6657ff23116 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)
*/
if (realview_reset)
realview_reset(mode);
+ dsb();
}
#endif