ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / include / asm-arm / arch-ebsa285 / uncompress.h
1 /*
2  *  linux/include/asm-arm/arch-ebsa285/uncompress.h
3  *
4  *  Copyright (C) 1996-1999 Russell King
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10 #include <asm/mach-types.h>
11
12 /*
13  * Note! This could cause problems on the NetWinder
14  */
15 #define DC21285_BASE ((volatile unsigned int *)0x42000160)
16 #define SER0_BASE    ((volatile unsigned char *)0x7c0003f8)
17
18 static __inline__ void putc(char c)
19 {
20         if (machine_is_netwinder()) {
21                 while ((SER0_BASE[5] & 0x60) != 0x60);
22                 SER0_BASE[0] = c;
23         } else {
24                 while (DC21285_BASE[6] & 8);
25                 DC21285_BASE[0] = c;
26         }
27 }
28
29 /*
30  * This does not append a newline
31  */
32 static void puts(const char *s)
33 {
34         while (*s) {
35                 putc(*s);
36                 if (*s == '\n')
37                         putc('\r');
38                 s++;
39         }
40 }
41
42 /*
43  * nothing to do
44  */
45 #define arch_decomp_setup()
46 #define arch_decomp_wdog()