diff options
author | Jose Marinho <jose.marinho@arm.com> | 2021-12-23 14:51:07 +0000 |
---|---|---|
committer | Heinrich Schuchardt <heinrich.schuchardt@canonical.com> | 2022-09-03 09:35:48 +0200 |
commit | 6b92c1735205eef308a9e33ec90330a3e6d27fc3 (patch) | |
tree | 002f171fa16a21af8ac0b938d804da7f3c2c946a /include | |
parent | 2b7a6e013fe9c4f8c8ed29d79f6757f8c482dc72 (diff) |
efi: Create ECPT table
The ECPT table will be included in the UEFI specification 2.9+.
The ECPT table was introduced in UEFI following the code-first path. The
acceptance ticket can be viewed at:
https://bugzilla.tianocore.org/show_bug.cgi?id=3591
The Conformance Profiles table is a UEFI configuration table that contains
GUID of the UEFI profiles that the UEFI implementation conforms with.
The ECPT table is created when CONFIG_EFI_ECPT=y.
The config is set by default.
Signed-off-by: Jose Marinho <jose.marinho@arm.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/efi_api.h | 12 | ||||
-rw-r--r-- | include/efi_loader.h | 7 |
2 files changed, 19 insertions, 0 deletions
diff --git a/include/efi_api.h b/include/efi_api.h index 83c01085fd..58934bd0d5 100644 --- a/include/efi_api.h +++ b/include/efi_api.h @@ -226,6 +226,18 @@ enum efi_reset_type { EFI_GUID(0x6dcbd5ed, 0xe82d, 0x4c44, 0xbd, 0xa1, \ 0x71, 0x94, 0x19, 0x9a, 0xd9, 0x2a) +#define EFI_CONFORMANCE_PROFILES_TABLE_GUID \ + EFI_GUID(0x36122546, 0xf7ef, 0x4c8f, 0xbd, 0x9b, \ + 0xeb, 0x85, 0x25, 0xb5, 0x0c, 0x0b) + +#define EFI_CONFORMANCE_PROFILES_TABLE_VERSION 1 + +struct efi_conformance_profiles_table { + u16 version; + u16 number_of_profiles; + efi_guid_t conformance_profiles[]; +} __packed; + struct efi_capsule_header { efi_guid_t capsule_guid; u32 header_size; diff --git a/include/efi_loader.h b/include/efi_loader.h index 9611aec2de..545ba06d94 100644 --- a/include/efi_loader.h +++ b/include/efi_loader.h @@ -1053,6 +1053,13 @@ extern u8 num_image_type_guids; efi_status_t efi_esrt_register(void); /** + * efi_ecpt_register() - Install the ECPT system table. + * + * Return: status code + */ +efi_status_t efi_ecpt_register(void); + +/** * efi_esrt_populate() - Populates the ESRT entries from the FMP instances * present in the system. * If an ESRT already exists, the old ESRT is replaced in the system table. |