diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-w90x900/include/mach/uncompress.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/mach-w90x900/include/mach/uncompress.h b/arch/arm/mach-w90x900/include/mach/uncompress.h index 050d9fe5ae1b..56f1a74d7016 100644 --- a/arch/arm/mach-w90x900/include/mach/uncompress.h +++ b/arch/arm/mach-w90x900/include/mach/uncompress.h | |||
@@ -22,11 +22,21 @@ | |||
22 | 22 | ||
23 | #include <mach/regs-serial.h> | 23 | #include <mach/regs-serial.h> |
24 | #include <mach/map.h> | 24 | #include <mach/map.h> |
25 | #include <linux/serial_reg.h> | ||
25 | 26 | ||
26 | #define arch_decomp_wdog() | 27 | #define arch_decomp_wdog() |
27 | 28 | ||
29 | #define TX_DONE (UART_LSR_TEMT | UART_LSR_THRE) | ||
30 | static volatile u32 * uart_base = (u32 *)UART0_PA; | ||
31 | |||
28 | static void putc(int ch) | 32 | static void putc(int ch) |
29 | { | 33 | { |
34 | /* Check THRE and TEMT bits before we transmit the character. | ||
35 | */ | ||
36 | while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE) | ||
37 | barrier(); | ||
38 | |||
39 | *uart_base = ch; | ||
30 | } | 40 | } |
31 | 41 | ||
32 | static inline void flush(void) | 42 | static inline void flush(void) |