Pull bugzilla-9429 into release branch
[pv_ops_mirror.git] / arch / h8300 / boot / compressed / head.S
blob985a81a2435a08715fc89a5fa6da5b322d041b90
1 /*
2  *  linux/arch/h8300/boot/compressed/head.S
3  *
4  *  Copyright (C) 2006 Yoshinori Sato
5  */
7         .h8300h
8 #include <linux/linkage.h>
10 #define SRAM_START 0xff4000
12         .section        .text.startup
13         .global startup
14 startup:
15         mov.l   #SRAM_START+0x8000, sp
16         mov.l   #__sbss, er0
17         mov.l   #__ebss, er1
18         sub.l   er0, er1
19         shlr    er1
20         shlr    er1
21         sub.l   er2, er2
23         mov.l   er2, @er0
24         adds    #4, er0
25         dec.l   #1, er1
26         bne     1b
27         jsr     @_decompress_kernel
28         jmp     @0x400000
30         .align  9
31 fake_headers_as_bzImage:
32         .word   0
33         .ascii  "HdrS"          ; header signature
34         .word   0x0202          ; header version number (>= 0x0105)
35                                 ; or else old loadlin-1.5 will fail)
36         .word   0               ; default_switch
37         .word   0               ; SETUPSEG
38         .word   0x1000
39         .word   0               ; pointing to kernel version string
40         .byte   0               ; = 0, old one (LILO, Loadlin,
41                                 ; 0xTV: T=0 for LILO
42                                 ;       V = version
43         .byte   1               ; Load flags bzImage=1
44         .word   0x8000          ; size to move, when setup is not
45         .long   0x100000        ; 0x100000 = default for big kernel
46         .long   0               ; address of loaded ramdisk image
47         .long   0               ; its size in bytes