patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / include / asm-arm / arch-ebsa110 / uncompress.h
1 /*
2  *  linux/include/asm-arm/arch-ebsa110/uncompress.h
3  *
4  *  Copyright (C) 1996,1997,1998 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
11 /*
12  * This does not append a newline
13  */
14 static void puts(const char *s)
15 {
16         __asm__ __volatile__(
17         "ldrb   %0, [%2], #1\n"
18 "       teq     %0, #0\n"
19 "       beq     3f\n"
20 "1:     strb    %0, [%3]\n"
21 "2:     ldrb    %1, [%3, #0x14]\n"
22 "       and     %1, %1, #0x60\n"
23 "       teq     %1, #0x60\n"
24 "       bne     2b\n"
25 "       teq     %0, #'\n'\n"
26 "       moveq   %0, #'\r'\n"
27 "       beq     1b\n"
28 "       ldrb    %0, [%2], #1\n"
29 "       teq     %0, #0\n"
30 "       bne     1b\n"
31 "3:     ldrb    %1, [%3, #0x14]\n"
32 "       and     %1, %1, #0x60\n"
33 "       teq     %1, #0x60\n"
34 "       bne     3b"
35         : : "r" (0), "r" (0), "r" (s), "r" (0xf0000be0) : "cc");
36 }
37
38 /*
39  * nothing to do
40  */
41 #define arch_decomp_setup()
42 #define arch_decomp_wdog()