diff --git a/src/include/smbios.h b/src/include/smbios.h index b9dbc0bdf6..103e85b9af 100644 --- a/src/include/smbios.h +++ b/src/include/smbios.h @@ -123,6 +123,7 @@ int smbios_write_type8(unsigned long *current, int *handle, #define BIOS_EXT1_CHARACTERISTICS_ACPI (1 << 0) #define BIOS_EXT2_CHARACTERISTICS_TARGET (1 << 2) +#define BIOS_EXT2_CHARACTERISTICS_UEFI_SUPPORT (1 << 3) #define BIOS_MEMORY_ECC_SINGLE_BIT_CORRECTING (1 << 3) #define BIOS_MEMORY_ECC_DOUBLE_BIT_CORRECTING (1 << 4) diff --git a/src/lib/smbios.c b/src/lib/smbios.c index 7da3e2ad15..35b4d7765f 100644 --- a/src/lib/smbios.c +++ b/src/lib/smbios.c @@ -412,6 +412,9 @@ static int smbios_write_type0(unsigned long *current, int handle) t->bios_characteristics_ext1 = BIOS_EXT1_CHARACTERISTICS_ACPI; t->bios_characteristics_ext2 = BIOS_EXT2_CHARACTERISTICS_TARGET; + if (CONFIG(PAYLOAD_EDK2)) + t->bios_characteristics_ext2 |= BIOS_EXT2_CHARACTERISTICS_UEFI_SUPPORT; + const int len = smbios_full_table_len(&t->header, t->eos); *current += len; return len;