xref: /openbmc/u-boot/arch/x86/include/asm/zimage.h (revision ef64e782)
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2002
4  * Daniel Engström, Omicron Ceti AB, daniel@omicron.se
5  */
6 
7 #ifndef _ASM_ZIMAGE_H_
8 #define _ASM_ZIMAGE_H_
9 
10 #include <asm/bootparam.h>
11 #include <asm/e820.h>
12 
13 /* linux i386 zImage/bzImage header. Offsets relative to
14  * the start of the image */
15 
16 #define HEAP_FLAG           0x80
17 #define BIG_KERNEL_FLAG     0x01
18 
19 /* magic numbers */
20 #define KERNEL_MAGIC        0xaa55
21 #define KERNEL_V2_MAGIC     0x53726448
22 #define COMMAND_LINE_MAGIC  0xA33F
23 
24 /* limits */
25 #define BZIMAGE_MAX_SIZE   15*1024*1024     /* 15MB */
26 #define ZIMAGE_MAX_SIZE    512*1024         /* 512k */
27 #define SETUP_MAX_SIZE     32768
28 
29 #define SETUP_START_OFFSET 0x200
30 #define BZIMAGE_LOAD_ADDR  0x100000
31 #define ZIMAGE_LOAD_ADDR   0x10000
32 
33 struct boot_params *load_zimage(char *image, unsigned long kernel_size,
34 				ulong *load_addressp);
35 int setup_zimage(struct boot_params *setup_base, char *cmd_line, int auto_boot,
36 		 unsigned long initrd_addr, unsigned long initrd_size);
37 void setup_video(struct screen_info *screen_info);
38 void setup_efi_info(struct efi_info *efi_info);
39 
40 #endif
41