From: Hirokazu Takata Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton --- arch/m32r/boot/compressed/m32r_sio.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-) diff -puN arch/m32r/boot/compressed/m32r_sio.c~m32r-support-m3a-2170mappi-iii-platform-fix arch/m32r/boot/compressed/m32r_sio.c --- 25/arch/m32r/boot/compressed/m32r_sio.c~m32r-support-m3a-2170mappi-iii-platform-fix 2005-06-03 00:51:02.000000000 -0700 +++ 25-akpm/arch/m32r/boot/compressed/m32r_sio.c 2005-06-03 00:51:02.000000000 -0700 @@ -6,6 +6,7 @@ */ #include +#include static void putc(char c); @@ -38,10 +39,12 @@ static int puts(const char *s) static void putc(char c) { - while ((*BOOT_SIO0STS & 0x3) != 0x3) ; + while ((*BOOT_SIO0STS & 0x3) != 0x3) + cpu_relax(); if (c == '\n') { *BOOT_SIO0TXB = '\r'; - while ((*BOOT_SIO0STS & 0x3) != 0x3) ; + while ((*BOOT_SIO0STS & 0x3) != 0x3) + cpu_relax(); } *BOOT_SIO0TXB = c; } @@ -56,10 +59,12 @@ static void putc(char c) static void putc(char c) { - while ((*SIO0STS & 0x1) == 0) ; + while ((*SIO0STS & 0x1) == 0) + cpu_relax(); if (c == '\n') { *SIO0TXB = '\r'; - while ((*SIO0STS & 0x1) == 0) ; + while ((*SIO0STS & 0x1) == 0) + cpu_relax(); } *SIO0TXB = c; } _