1fea25720SGraeme Russ /* 2fea25720SGraeme Russ * (C) Copyright 2002 3fa82f871SAlbert ARIBAUD * Daniel Engström, Omicron Ceti AB, daniel@omicron.se 4fea25720SGraeme Russ * 51a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 6fea25720SGraeme Russ */ 7fea25720SGraeme Russ 8fea25720SGraeme Russ #ifndef _ASM_ZIMAGE_H_ 9fea25720SGraeme Russ #define _ASM_ZIMAGE_H_ 10fea25720SGraeme Russ 1169370d14SGabe Black #include <asm/bootparam.h> 12233dbc11SGabe Black #include <asm/e820.h> 13233dbc11SGabe Black 14fea25720SGraeme Russ /* linux i386 zImage/bzImage header. Offsets relative to 15fea25720SGraeme Russ * the start of the image */ 16fea25720SGraeme Russ 17fea25720SGraeme Russ #define HEAP_FLAG 0x80 18fea25720SGraeme Russ #define BIG_KERNEL_FLAG 0x01 19fea25720SGraeme Russ 20fea25720SGraeme Russ /* magic numbers */ 21fea25720SGraeme Russ #define KERNEL_MAGIC 0xaa55 22fea25720SGraeme Russ #define KERNEL_V2_MAGIC 0x53726448 23fea25720SGraeme Russ #define COMMAND_LINE_MAGIC 0xA33F 24fea25720SGraeme Russ 25fea25720SGraeme Russ /* limits */ 26fea25720SGraeme Russ #define BZIMAGE_MAX_SIZE 15*1024*1024 /* 15MB */ 27fea25720SGraeme Russ #define ZIMAGE_MAX_SIZE 512*1024 /* 512k */ 28fea25720SGraeme Russ #define SETUP_MAX_SIZE 32768 29fea25720SGraeme Russ 30fea25720SGraeme Russ #define SETUP_START_OFFSET 0x200 31fea25720SGraeme Russ #define BZIMAGE_LOAD_ADDR 0x100000 32fea25720SGraeme Russ #define ZIMAGE_LOAD_ADDR 0x10000 33fea25720SGraeme Russ 3469370d14SGabe Black struct boot_params *load_zimage(char *image, unsigned long kernel_size, 3576539383SSimon Glass ulong *load_addressp); 3669370d14SGabe Black int setup_zimage(struct boot_params *setup_base, char *cmd_line, int auto_boot, 3769370d14SGabe Black unsigned long initrd_addr, unsigned long initrd_size); 38*a4520022SBin Meng void setup_video(struct screen_info *screen_info); 39fea25720SGraeme Russ 40fea25720SGraeme Russ #endif 41