STRUCT X86_LEGACY_FEATURES(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct x86_legacy_features(9) ✨

okay bestie, welcome to the Kernel API Manual entry for struct x86_legacy_features β€” it's literally the whole personality file for legacy x86 features πŸŽ€ iykyk


πŸ’œ NAME πŸ’œ

struct x86_legacy_features β€” legacy x86 features, that's the whole vibe πŸ¦‹


🌸 SYNOPSIS 🌸

struct x86_legacy_features {
    enum x86_legacy_i8042_state i8042;
    int rtc;
    int warm_reset;
    int no_vga;
    int reserve_bios_regions;
    struct x86_legacy_devices devices;
 };

no cap, that's the exact struct πŸ’…


🫢 Members 🫢

  • i8042 β€” tells you if we should expect this device to have an i8042 controller present. it's giving "is the keyboard controller in the room with us" energy 😭
  • rtc β€” this device has a CMOS real-time clock present ⭐
  • warm_reset β€” 1 if the platform allows warm reset, else 0. simple as that, fr fr
  • no_vga β€” 1 if (FADT.boot_flags & ACPI_FADT_NO_VGA) is set, else 0. that's the literal expression, don't come for me πŸ”₯
  • reserve_bios_regions β€” boot code will search for the EBDA address and the start of the 640k - 1M BIOS region. if false, the platform must ensure that its memory map correctly reserves sub-1MB regions as needed. lowkey important β€” don't skip this one bestie πŸ™ˆ
  • devices β€” legacy x86 devices. refer to struct x86_legacy_devices documentation for further details πŸ‘‘

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./arch/x86/include/asm/x86_init.h plus all these iconic siblings:

  • struct x86_init_mpparse(9)
  • struct x86_init_resources(9)
  • struct x86_init_irqs(9)
  • struct x86_init_oem(9)
  • struct x86_init_paging(9)
  • struct x86_init_timers(9)
  • struct x86_init_iommu(9)
  • struct x86_init_pci(9)
  • struct x86_hyper_init(9)
  • struct x86_init_acpi(9)
  • struct x86_guest(9)
  • struct x86_init_ops(9)
  • struct x86_cpuinit_ops(9)
  • struct x86_legacy_devices(9)
  • enum x86_legacy_i8042_state(9)
  • struct x86_hyper_runtime(9)
  • struct x86_platform_ops(9)

go read struct x86_legacy_devices(9) too, bestie β€” the devices member is literally pointing you there 🧚

and that's the page!! mwah πŸ’– this one lives in ./arch/x86/include/asm in the Kernel API Manual, dated October 2026, and the header is literally struct x86_legacy_features(9) β€” slay, go touch some registers πŸŒˆπŸ‘‘

πŸ“¦ where this page comes from