[efi] Install a device tree for the booted OS, if available

If we have a device tree available (e.g. because the user has
explicitly downloaded a device tree using the "fdt" command), then
provide it to the booted operating system as an EFI configuration
table.

Since x86 does not typically use device trees, we create weak symbols
for efi_fdt_install() and efi_fdt_uninstall() to avoid dragging FDT
support into all x86 UEFI binaries.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown
2025-03-28 14:20:44 +00:00
parent 761f43ce12
commit b20f506a72
3 changed files with 127 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
#ifndef _IPXE_EFI_FDT_H
#define _IPXE_EFI_FDT_H
/** @file
*
* EFI Flattened Device Tree
*
*/
FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#include <ipxe/efi/efi.h>
extern int efi_fdt_install ( void );
extern int efi_fdt_uninstall ( void );
#endif /* _IPXE_EFI_FDT_H */