Commit | Line | Data |
---|---|---|
1b93b3c3 WZ |
1 | /* |
2 | * This file is subject to the terms and conditions of the GNU General Public | |
3 | * License. See the file "COPYING" in the main directory of this archive | |
4 | * for more details. | |
5 | * | |
6 | * Copyright (C) 1994, 1995 Waldorf Electronics | |
7 | * Written by Ralf Baechle and Andreas Busse | |
8 | * Copyright (C) 1995 - 1999 Ralf Baechle | |
9 | * Copyright (C) 1996 Paul M. Antoine | |
10 | * Modified for DECStation and hence R3000 support by Paul M. Antoine | |
11 | * Further modifications by David S. Miller and Harald Koerfgen | |
12 | * Copyright (C) 1999 Silicon Graphics, Inc. | |
13 | */ | |
14 | ||
15 | #include <asm/asm.h> | |
16 | #include <asm/regdef.h> | |
17 | ||
18 | .set noreorder | |
19 | .cprestore | |
20 | LEAF(start) | |
21 | start: | |
22 | /* Save boot rom start args */ | |
23 | move s0, a0 | |
24 | move s1, a1 | |
25 | move s2, a2 | |
26 | move s3, a3 | |
27 | ||
28 | /* Clear BSS */ | |
29 | PTR_LA a0, _edata | |
30 | PTR_LA a2, _end | |
31 | 1: sw zero, 0(a0) | |
32 | bne a2, a0, 1b | |
33 | addiu a0, a0, 4 | |
34 | ||
70342287 RB |
35 | PTR_LA a0, (.heap) /* heap address */ |
36 | PTR_LA sp, (.stack + 8192) /* stack address */ | |
1b93b3c3 WZ |
37 | |
38 | PTR_LA ra, 2f | |
39 | PTR_LA k0, decompress_kernel | |
40 | jr k0 | |
41 | nop | |
42 | 2: | |
43 | move a0, s0 | |
44 | move a1, s1 | |
45 | move a2, s2 | |
46 | move a3, s3 | |
47 | PTR_LI k0, KERNEL_ENTRY | |
48 | jr k0 | |
49 | nop | |
50 | 3: | |
51 | b 3b | |
52 | nop | |
53 | END(start) | |
54 | ||
55 | .comm .heap,BOOT_HEAP_SIZE,4 | |
56 | .comm .stack,4096*2,4 |