/* * linux/arch/h8300/boot/compressed/head.S * * Copyright (C) 2006 Yoshinori Sato */ #include <linux/linkage.h> .section .text..startup,"ax" .global startup startup: mov.l #startup, sp mov.l er0, er4 mov.l #__sbss, er0 mov.l #__ebss, er1 sub.l er0, er1 shlr er1 shlr er1 sub.l er2, er2 1: mov.l er2, @er0 adds #4, er0 dec.l #1, er1 bne 1b jsr @decompress_kernel mov.l er4, er0 jmp @output .align 9 fake_headers_as_bzImage: .word 0 .ascii "HdrS" ; header signature .word 0x0202 ; header version number (>= 0x0105) ; or else old loadlin-1.5 will fail) .word 0 ; default_switch .word 0 ; SETUPSEG .word 0x1000 .word 0 ; pointing to kernel version string .byte 0 ; = 0, old one (LILO, Loadlin, ; 0xTV: T=0 for LILO ; V = version .byte 1 ; Load flags bzImage=1 .word 0x8000 ; size to move, when setup is not .long 0x100000 ; 0x100000 = default for big kernel .long 0 ; address of loaded ramdisk image .long 0 ; its size in bytes .end |