Specifications
40
EFI_LEGACY_BIOS_PROTOCOL.LegacyBoot()
Summary
Boots a traditional OS.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_LEGACY_BIOS_BOOT) (
IN EFI_LEGACY_BIOS_PROTOCOL *This,
IN BBS_BBS_DEVICE_PATH *BootOption,
IN UINT32 LoadOptionsSize,
IN VOID *LoadOptions
)
Parameters
This
Indicates the EFI_LEGACY_BIOS_PROTOCOL instance.
BootOption
The EFI device path from BootXXXX variable. Type BBS_BBS_DEVICE_PATH is
defined in "Related Definitions" below.
LoadOptionSize
Size of LoadOption.
LoadOption
The load option from BootXXXX variable.
Description
This function attempts to traditionally boot the specified BootOption. If the EFI
context has been compromised, this function will not return. This procedure is not used
for loading an EFI-aware OS off a traditional device. The following actions occur:
• Get EFI SMBIOS data structures, convert them to a traditional format, and
copy to Compatibility16.
• Get a pointer to ACPI data structures and copy the Compatibility16 RSD PTR
to F0000 block.
• Find the traditional SMI handler from a firmware volume and register the
traditional SMI handler with the EFI SMI handler.
• Build onboard IDE information and pass this information to the
Compatibility16 code.
• Make sure all PCI Interrupt Line registers are programmed to match 8259.










