8. Zero Page

The additional fields in struct boot_params as a part of 32-bit bootprotocol of kernel. These should be filled by bootloader or 16-bitreal-mode setup code of the kernel. References/settings to it mainlyare in:

arch/x86/include/uapi/asm/bootparam.h
Offset/SizeProtoNameMeaning
000/040ALLscreen_infoText mode or frame buffer information(struct screen_info)
040/014ALLapm_bios_infoAPM BIOS information (struct apm_bios_info)
058/008ALLtboot_addrPhysical address of tboot shared page
060/010ALList_infoIntel SpeedStep (IST) BIOS support information(struct ist_info)
080/010ALLhd0_infohd0 disk parameter, OBSOLETE!!
090/010ALLhd1_infohd1 disk parameter, OBSOLETE!!
0A0/010ALLsys_desc_tableSystem description table (struct sys_desc_table),OBSOLETE!!
0B0/010ALLolpc_ofw_headerOLPC’s OpenFirmware CIF and friends
0C0/004ALLext_ramdisk_imageramdisk_image high 32bits
0C4/004ALLext_ramdisk_sizeramdisk_size high 32bits
0C8/004ALLext_cmd_line_ptrcmd_line_ptr high 32bits
140/080ALLedid_infoVideo mode setup (struct edid_info)
1C0/020ALLefi_infoEFI 32 information (struct efi_info)
1E0/004ALLalt_mem_kAlternative mem check, in KB
1E4/004ALLscratchScratch field for the kernel setup code
1E8/001ALLe820_entriesNumber of entries in e820_table (below)
1E9/001ALLeddbuf_entriesNumber of entries in eddbuf (below)
1EA/001ALLedd_mbr_sig_buf_entriesNumber of entries in edd_mbr_sig_buffer(below)
1EB/001ALLkbd_statusNumlock is enabled
1EC/001ALLsecure_bootSecure boot is enabled in the firmware
1EF/001ALLsentinelUsed to detect broken bootloaders
290/040ALLedd_mbr_sig_bufferEDD MBR signatures
2D0/A00ALLe820_tableE820 memory map table(array of struct e820_entry)
D00/1ECALLeddbufEDD data (array of struct edd_info)