summaryrefslogtreecommitdiff
path: root/arch/mips/pmcs-msp71xx
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2015-11-27 19:17:01 +0100
committerRalf Baechle <ralf@linux-mips.org>2015-11-27 19:20:37 +0100
commitc861519fcf95b2d46cb4275903423b43ae150a40 (patch)
tree7e17dcbb79a0a12dc06eae6d1bc3a5a3d8fa58ce /arch/mips/pmcs-msp71xx
parent1ec218373b8ebda821aec00bb156a9c94fad9cd4 (diff)
MIPS: Fix delay loops which may be removed by GCC.
GCC 4.1 and newer remove empty loops. This becomes a problem when delay loops get removed. Fixed by rewriting to user the proper Linux interface for such delays. Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Reported-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Acked-by: John Crispin <blogic@openwrt.org>
Diffstat (limited to 'arch/mips/pmcs-msp71xx')
-rw-r--r--arch/mips/pmcs-msp71xx/msp_setup.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mips/pmcs-msp71xx/msp_setup.c b/arch/mips/pmcs-msp71xx/msp_setup.c
index 4f925e06c414..78b2ef49dbc7 100644
--- a/arch/mips/pmcs-msp71xx/msp_setup.c
+++ b/arch/mips/pmcs-msp71xx/msp_setup.c
@@ -10,6 +10,8 @@
* option) any later version.
*/
+#include <linux/delay.h>
+
#include <asm/bootinfo.h>
#include <asm/cacheflush.h>
#include <asm/idle.h>
@@ -77,7 +79,7 @@ void msp7120_reset(void)
*/
/* Wait a bit for the DDRC to settle */
- for (i = 0; i < 100000000; i++);
+ mdelay(125);
#if defined(CONFIG_PMC_MSP7120_GW)
/*