git: 4aeeb4d58156 - stable/15 - loader.efi(8): document the ia32 loader

From: Ahmad Khalifa <vexeduxr_at_FreeBSD.org>
Date: Wed, 17 Jun 2026 13:47:36 UTC
The branch stable/15 has been updated by vexeduxr:

URL: https://cgit.FreeBSD.org/src/commit/?id=4aeeb4d58156fec155adbbd728a12fc8fcab57bf

commit 4aeeb4d58156fec155adbbd728a12fc8fcab57bf
Author:     Ahmad Khalifa <vexeduxr@FreeBSD.org>
AuthorDate: 2026-06-14 16:26:30 +0000
Commit:     Ahmad Khalifa <vexeduxr@FreeBSD.org>
CommitDate: 2026-06-17 13:39:54 +0000

    loader.efi(8): document the ia32 loader
    
    Reviewed by:    kib
    MFC after:      3 days
    Differential Revision:  https://reviews.freebsd.org/D57569
    
    (cherry picked from commit 2e1f5b78976ad09bee41e602e75e79a0c3892e59)
---
 stand/man/loader.efi.8 | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/stand/man/loader.efi.8 b/stand/man/loader.efi.8
index ff43cbefe9bd..8ddc869e0a27 100644
--- a/stand/man/loader.efi.8
+++ b/stand/man/loader.efi.8
@@ -373,6 +373,18 @@ command produces a fault in the
 environment for testing purposes, by executing the
 .Ic ud2
 processor instruction.
+.Ss i386 firmware on amd64 machines
+Some devices have 64-bit (long mode) capable CPUs, but come with a
+32-bit (protected mode) UEFI implementation.
+.Pa /boot/loader_ia32.efi
+is provided for such devices.
+It switches to long mode right before executing the kernel.
+Note that since the firmware expects its runtime EFI functions to be
+executed in 32-bit protected mode, EFI runtime services are not
+available to the kernel.
+Which means that programs like
+.Xr efibootmgr 8
+will not work.
 .Sh FILES
 .Bl -tag -width "/boot/loader.efi"
 .It Pa /boot/loader.efi