blob: fc1cfea573bbdb7c71e873251f933904d282eb0e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/* SPDX-License-Identifier: GPL-2.0-only */
#include <boot/coreboot_tables.h>
#include <console/console.h>
#include <stdint.h>
#include <string.h>
#include <uuid.h>
void lb_efi_fw_info(struct lb_header *header)
{
uint8_t guid[16];
struct lb_efi_fw_info *fw_info;
if (parse_uuid(guid, CONFIG_DRIVERS_EFI_MAIN_FW_GUID)) {
printk(BIOS_ERR, "%s(): failed to parse firmware's GUID: '%s'\n", __func__,
CONFIG_DRIVERS_EFI_MAIN_FW_GUID);
return;
}
fw_info = (struct lb_efi_fw_info *)lb_new_record(header);
fw_info->tag = LB_TAG_EFI_FW_INFO;
fw_info->size = sizeof(*fw_info);
memcpy(fw_info->guid, guid, sizeof(guid));
fw_info->version = CONFIG_DRIVERS_EFI_MAIN_FW_VERSION;
fw_info->lowest_supported_version = CONFIG_DRIVERS_EFI_MAIN_FW_LSV;
fw_info->fw_size = CONFIG_ROM_SIZE;
}
|