iPXE
Data Fields
bzimage_header Struct Reference

A bzImage header. More...

#include <bzimage.h>

Data Fields

uint8_t setup_sects
 The size of the setup in sectors. More...
 
uint16_t root_flags
 If set, the root is mounted readonly. More...
 
uint16_t syssize
 DO NOT USE - for bootsect.S use only. More...
 
uint16_t swap_dev
 DO NOT USE - obsolete. More...
 
uint16_t ram_size
 DO NOT USE - for bootsect.S use only. More...
 
uint16_t vid_mode
 Video mode control. More...
 
uint16_t root_dev
 Default root device number. More...
 
uint16_t boot_flag
 0xAA55 magic number More...
 
uint16_t jump
 Jump instruction. More...
 
uint32_t header
 Magic signature "HdrS". More...
 
uint16_t version
 Boot protocol version supported. More...
 
uint32_t realmode_swtch
 Boot loader hook (see below) More...
 
uint16_t start_sys
 The load-low segment (0x1000) (obsolete) More...
 
uint16_t kernel_version
 Pointer to kernel version string. More...
 
uint8_t type_of_loader
 Boot loader identifier. More...
 
uint8_t loadflags
 Boot protocol option flags. More...
 
uint16_t setup_move_size
 Move to high memory size (used with hooks) More...
 
uint32_t code32_start
 Boot loader hook (see below) More...
 
uint32_t ramdisk_image
 initrd load address (set by boot loader) More...
 
uint32_t ramdisk_size
 initrd size (set by boot loader) More...
 
uint32_t bootsect_kludge
 DO NOT USE - for bootsect.S use only. More...
 
uint16_t heap_end_ptr
 Free memory after setup end. More...
 
uint16_t pad1
 Unused. More...
 
uint32_t cmd_line_ptr
 32-bit pointer to the kernel command line More...
 
uint32_t initrd_addr_max
 Highest legal initrd address. More...
 
uint32_t kernel_alignment
 Physical addr alignment required for kernel. More...
 
uint8_t relocatable_kernel
 Whether kernel is relocatable or not. More...
 
uint8_t pad2 [3]
 Unused. More...
 
uint32_t cmdline_size
 Maximum size of the kernel command line. More...
 

Detailed Description

A bzImage header.

As documented in Documentation/i386/boot.txt

Definition at line 13 of file bzimage.h.

Field Documentation

◆ setup_sects

uint8_t bzimage_header::setup_sects

The size of the setup in sectors.

If this field contains 0, assume it contains 4.

Definition at line 18 of file bzimage.h.

Referenced by bzimage_parse_header().

◆ root_flags

uint16_t bzimage_header::root_flags

If set, the root is mounted readonly.

Definition at line 20 of file bzimage.h.

◆ syssize

uint16_t bzimage_header::syssize

DO NOT USE - for bootsect.S use only.

Definition at line 22 of file bzimage.h.

Referenced by bzimage_parse_header().

◆ swap_dev

uint16_t bzimage_header::swap_dev

DO NOT USE - obsolete.

Definition at line 24 of file bzimage.h.

◆ ram_size

uint16_t bzimage_header::ram_size

DO NOT USE - for bootsect.S use only.

Definition at line 26 of file bzimage.h.

◆ vid_mode

uint16_t bzimage_header::vid_mode

Video mode control.

Definition at line 28 of file bzimage.h.

Referenced by bzimage_parse_header(), and bzimage_update_header().

◆ root_dev

uint16_t bzimage_header::root_dev

Default root device number.

Definition at line 30 of file bzimage.h.

◆ boot_flag

uint16_t bzimage_header::boot_flag

0xAA55 magic number

Definition at line 32 of file bzimage.h.

Referenced by bzimage_parse_header().

◆ jump

uint16_t bzimage_header::jump

Jump instruction.

Definition at line 34 of file bzimage.h.

◆ header

uint32_t bzimage_header::header

Magic signature "HdrS".

Definition at line 36 of file bzimage.h.

Referenced by bzimage_parse_header().

◆ version

uint16_t bzimage_header::version

Boot protocol version supported.

Definition at line 38 of file bzimage.h.

Referenced by bzimage_parse_header().

◆ realmode_swtch

uint32_t bzimage_header::realmode_swtch

Boot loader hook (see below)

Definition at line 40 of file bzimage.h.

◆ start_sys

uint16_t bzimage_header::start_sys

The load-low segment (0x1000) (obsolete)

Definition at line 42 of file bzimage.h.

◆ kernel_version

uint16_t bzimage_header::kernel_version

Pointer to kernel version string.

Definition at line 44 of file bzimage.h.

◆ type_of_loader

uint8_t bzimage_header::type_of_loader

Boot loader identifier.

Definition at line 46 of file bzimage.h.

Referenced by bzimage_update_header().

◆ loadflags

uint8_t bzimage_header::loadflags

Boot protocol option flags.

Definition at line 48 of file bzimage.h.

Referenced by bzimage_parse_header(), and bzimage_update_header().

◆ setup_move_size

uint16_t bzimage_header::setup_move_size

Move to high memory size (used with hooks)

Definition at line 50 of file bzimage.h.

Referenced by bzimage_update_header().

◆ code32_start

uint32_t bzimage_header::code32_start

Boot loader hook (see below)

Definition at line 52 of file bzimage.h.

◆ ramdisk_image

uint32_t bzimage_header::ramdisk_image

initrd load address (set by boot loader)

Definition at line 54 of file bzimage.h.

Referenced by bzimage_update_header().

◆ ramdisk_size

uint32_t bzimage_header::ramdisk_size

initrd size (set by boot loader)

Definition at line 56 of file bzimage.h.

Referenced by bzimage_update_header().

◆ bootsect_kludge

uint32_t bzimage_header::bootsect_kludge

DO NOT USE - for bootsect.S use only.

Definition at line 58 of file bzimage.h.

◆ heap_end_ptr

uint16_t bzimage_header::heap_end_ptr

Free memory after setup end.

Definition at line 60 of file bzimage.h.

Referenced by bzimage_update_header().

◆ pad1

uint16_t bzimage_header::pad1

Unused.

Definition at line 62 of file bzimage.h.

◆ cmd_line_ptr

uint32_t bzimage_header::cmd_line_ptr

32-bit pointer to the kernel command line

Definition at line 64 of file bzimage.h.

Referenced by bzimage_update_header().

◆ initrd_addr_max

uint32_t bzimage_header::initrd_addr_max

Highest legal initrd address.

Definition at line 66 of file bzimage.h.

Referenced by bzimage_parse_header().

◆ kernel_alignment

uint32_t bzimage_header::kernel_alignment

Physical addr alignment required for kernel.

Definition at line 68 of file bzimage.h.

◆ relocatable_kernel

uint8_t bzimage_header::relocatable_kernel

Whether kernel is relocatable or not.

Definition at line 70 of file bzimage.h.

◆ pad2

uint8_t bzimage_header::pad2[3]

Unused.

Definition at line 72 of file bzimage.h.

◆ cmdline_size

uint32_t bzimage_header::cmdline_size

Maximum size of the kernel command line.

Definition at line 74 of file bzimage.h.

Referenced by bzimage_parse_header().


The documentation for this struct was generated from the following file: