Merge Linus' latest into master
[linux-2.6] / arch / arm / mach-kirkwood / include / mach / uncompress.h
1 /*
2  * arch/arm/mach-kirkwood/include/mach/uncompress.h
3  *
4  * This file is licensed under the terms of the GNU General Public
5  * License version 2.  This program is licensed "as is" without any
6  * warranty of any kind, whether express or implied.
7  */
8
9 #include <linux/serial_reg.h>
10 #include <mach/kirkwood.h>
11
12 #define SERIAL_BASE     ((unsigned char *)UART0_PHYS_BASE)
13
14 static void putc(const char c)
15 {
16         unsigned char *base = SERIAL_BASE;
17         int i;
18
19         for (i = 0; i < 0x1000; i++) {
20                 if (base[UART_LSR << 2] & UART_LSR_THRE)
21                         break;
22                 barrier();
23         }
24
25         base[UART_TX << 2] = c;
26 }
27
28 static void flush(void)
29 {
30         unsigned char *base = SERIAL_BASE;
31         unsigned char mask;
32         int i;
33
34         mask = UART_LSR_TEMT | UART_LSR_THRE;
35
36         for (i = 0; i < 0x1000; i++) {
37                 if ((base[UART_LSR << 2] & mask) == mask)
38                         break;
39                 barrier();
40         }
41 }
42
43 /*
44  * nothing to do
45  */
46 #define arch_decomp_setup()
47 #define arch_decomp_wdog()