| /* SPDX-License-Identifier: GPL-2.0+ */ | |
| /* | |
| * EFI_DT_FIXUP_PROTOCOL | |
| * | |
| * Copyright (c) 2020 Heinrich Schuchardt | |
| */ | |
| #include <efi_api.h> | |
| #define EFI_DT_FIXUP_PROTOCOL_REVISION 0x00010000 | |
| /* Add nodes and update properties */ | |
| #define EFI_DT_APPLY_FIXUPS 0x00000001 | |
| /* | |
| * Reserve memory according to the /reserved-memory node | |
| * and the memory reservation block | |
| */ | |
| #define EFI_DT_RESERVE_MEMORY 0x00000002 | |
| /* Install the device-tree as configuration table */ | |
| #define EFI_DT_INSTALL_TABLE 0x00000004 | |
| #define EFI_DT_ALL (EFI_DT_APPLY_FIXUPS | \ | |
| EFI_DT_RESERVE_MEMORY | \ | |
| EFI_DT_INSTALL_TABLE) | |
| struct efi_dt_fixup_protocol { | |
| u64 revision; | |
| efi_status_t (EFIAPI *fixup) (struct efi_dt_fixup_protocol *this, | |
| void *dtb, | |
| efi_uintn_t *buffer_size, | |
| u32 flags); | |
| }; | |
| extern struct efi_dt_fixup_protocol efi_dt_fixup_prot; | |
| extern const efi_guid_t efi_guid_dt_fixup_protocol; |