14 #include <linux/types.h>
15 #include <linux/kernel.h>
17 #include <asm/addrspace.h>
30 extern void puts(
const char *
s);
31 extern void puthex(
unsigned long long val);
37 puts(
"\n\n -- System halted");
46 #ifdef CONFIG_KERNEL_GZIP
53 for (i = 0; i <
n; i++)
57 #include "../../../../lib/decompress_inflate.c"
60 #ifdef CONFIG_KERNEL_BZIP2
66 for (i = 0; i <
n; i++)
70 #include "../../../../lib/decompress_bunzip2.c"
73 #ifdef CONFIG_KERNEL_LZMA
74 #include "../../../../lib/decompress_unlzma.c"
77 #ifdef CONFIG_KERNEL_LZO
78 #include "../../../../lib/decompress_unlzo.c"
83 unsigned long zimage_start, zimage_size;
92 puthex(zimage_size + zimage_start);
100 puts(
"Uncompressing Linux at load address ");
101 puthex(VMLINUX_LOAD_ADDRESS_ULL);
105 decompress((
char *)zimage_start, zimage_size, 0, 0,
106 (
void *)VMLINUX_LOAD_ADDRESS_ULL, 0,
error);
109 puts(
"Now, booting the kernel...\n");