diff options
author | Will Deacon <will.deacon@arm.com> | 2011-07-20 11:57:03 +0100 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2011-08-12 15:40:57 +0100 |
commit | 5cb843ca0f781b62dc9793b26926d0b8efef5576 (patch) | |
tree | d39a92f10ad51b98e989669ed47b532e85c876d0 /arch/arm/mach-realview | |
parent | 7fdd3c49629e8aab48dbd1b2f800854b0f93cba0 (diff) | |
download | blackbird-op-linux-5cb843ca0f781b62dc9793b26926d0b8efef5576.tar.gz blackbird-op-linux-5cb843ca0f781b62dc9793b26926d0b8efef5576.zip |
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>
Diffstat (limited to 'arch/arm/mach-realview')
-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) */ if (realview_reset) realview_reset(mode); + dsb(); } #endif |