GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / x86 / zero-page.rst
1 .. SPDX-License-Identifier: GPL-2.0
2
3 =========
4 Zero Page
5 =========
6 The additional fields in struct boot_params as a part of 32-bit boot
7 protocol of kernel. These should be filled by bootloader or 16-bit
8 real-mode setup code of the kernel. References/settings to it mainly
9 are in::
10
11   arch/x86/include/uapi/asm/bootparam.h
12
13 ===========     =====   ======================= =================================================
14 Offset/Size     Proto   Name                    Meaning
15
16 000/040         ALL     screen_info             Text mode or frame buffer information
17                                                 (struct screen_info)
18 040/014         ALL     apm_bios_info           APM BIOS information (struct apm_bios_info)
19 058/008         ALL     tboot_addr              Physical address of tboot shared page
20 060/010         ALL     ist_info                Intel SpeedStep (IST) BIOS support information
21                                                 (struct ist_info)
22 070/008         ALL     acpi_rsdp_addr          Physical address of ACPI RSDP table
23 080/010         ALL     hd0_info                hd0 disk parameter, OBSOLETE!!
24 090/010         ALL     hd1_info                hd1 disk parameter, OBSOLETE!!
25 0A0/010         ALL     sys_desc_table          System description table (struct sys_desc_table),
26                                                 OBSOLETE!!
27 0B0/010         ALL     olpc_ofw_header         OLPC's OpenFirmware CIF and friends
28 0C0/004         ALL     ext_ramdisk_image       ramdisk_image high 32bits
29 0C4/004         ALL     ext_ramdisk_size        ramdisk_size high 32bits
30 0C8/004         ALL     ext_cmd_line_ptr        cmd_line_ptr high 32bits
31 13C/004         ALL     cc_blob_address         Physical address of Confidential Computing blob
32 140/080         ALL     edid_info               Video mode setup (struct edid_info)
33 1C0/020         ALL     efi_info                EFI 32 information (struct efi_info)
34 1E0/004         ALL     alt_mem_k               Alternative mem check, in KB
35 1E4/004         ALL     scratch                 Scratch field for the kernel setup code
36 1E8/001         ALL     e820_entries            Number of entries in e820_table (below)
37 1E9/001         ALL     eddbuf_entries          Number of entries in eddbuf (below)
38 1EA/001         ALL     edd_mbr_sig_buf_entries Number of entries in edd_mbr_sig_buffer
39                                                 (below)
40 1EB/001         ALL     kbd_status              Numlock is enabled
41 1EC/001         ALL     secure_boot             Secure boot is enabled in the firmware
42 1EF/001         ALL     sentinel                Used to detect broken bootloaders
43 290/040         ALL     edd_mbr_sig_buffer      EDD MBR signatures
44 2D0/A00         ALL     e820_table              E820 memory map table
45                                                 (array of struct e820_entry)
46 D00/1EC         ALL     eddbuf                  EDD data (array of struct edd_info)
47 ===========     =====   ======================= =================================================