Expand description
BootHandoff structure.
Data passed from UEFI boot phase to bare-metal phase. Populated before ExitBootServices, consumed after.
§Layout
All fields are explicitly sized and aligned for ABI stability.
The structure is #[repr(C)] to ensure predictable memory layout
across Rust/ASM boundary.
§Reference
NETWORK_IMPL_GUIDE.md §7.2
Structs§
- Data passed from UEFI boot phase to bare-metal phase.
- TSC calibration result.
Enums§
- Errors during handoff validation.
Constants§
- AHCI/SATA device (future)
- No block device
- NVMe device (future)
- VirtIO-blk device
- Magic number: “MORPHEUS” in ASCII (little-endian)
- Current structure version
- Maximum TSC frequency (10 GHz - sanity check)
- Minimum DMA region size (2MB)
- Minimum stack size (64KB)
- Minimum TSC frequency (1 GHz - sanity check)
- Broadcom BCM57xx
- Intel e1000/i210/i225
- No NIC detected
- Realtek RTL8168/8111
- VirtIO-net device
- VirtIO MMIO transport
- VirtIO PCI Legacy transport (I/O ports)
- VirtIO PCI Modern transport (capability-based)
Functions§
- Check if CPU has invariant TSC via CPUID.
- Read TSC value directly (used for calibration).