mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-18 16:08:53 +09:00
![Ilias Apalodimas](/assets/img/avatar_default.png)
We recently added functions for storing/restoring variables from a file to a memory backed buffer marked as __efi_runtime_data commitf1f990a8c9
("efi_loader: memory buffer for variables") commit5f7dcf079d
("efi_loader: UEFI variable persistence") Using the same idea we now can support GetVariable() and GetNextVariable() on the OP-TEE based variables as well. So let's re-arrange the code a bit and move the commmon code for accessing variables out of efi_variable.c. Create common functions for reading variables from memory that both implementations can use on run-time. Then just use those functions in the run-time variants of the OP-TEE based EFI variable implementation and initialize the memory buffer on ExitBootServices() Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
60 lines
1.8 KiB
Makefile
60 lines
1.8 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
# (C) Copyright 2016 Alexander Graf
|
|
#
|
|
|
|
# This file only gets included with CONFIG_EFI_LOADER set, so all
|
|
# object inclusion implicitly depends on it
|
|
|
|
asflags-y += -DHOST_ARCH="$(HOST_ARCH)" -I.
|
|
ccflags-y += -DHOST_ARCH="$(HOST_ARCH)"
|
|
|
|
CFLAGS_efi_boottime.o += \
|
|
-DFW_VERSION="0x$(VERSION)" \
|
|
-DFW_PATCHLEVEL="0x$(PATCHLEVEL)"
|
|
CFLAGS_helloworld.o := $(CFLAGS_EFI) -Os -ffreestanding
|
|
CFLAGS_REMOVE_helloworld.o := $(CFLAGS_NON_EFI)
|
|
|
|
ifneq ($(CONFIG_CMD_BOOTEFI_HELLO_COMPILE),)
|
|
always += helloworld.efi
|
|
targets += helloworld.o
|
|
endif
|
|
|
|
obj-$(CONFIG_CMD_BOOTEFI_HELLO) += helloworld_efi.o
|
|
obj-y += efi_bootmgr.o
|
|
obj-y += efi_boottime.o
|
|
obj-y += efi_console.o
|
|
obj-y += efi_device_path.o
|
|
obj-$(CONFIG_EFI_DEVICE_PATH_TO_TEXT) += efi_device_path_to_text.o
|
|
obj-y += efi_device_path_utilities.o
|
|
obj-y += efi_file.o
|
|
obj-$(CONFIG_EFI_LOADER_HII) += efi_hii.o efi_hii_config.o
|
|
obj-y += efi_image_loader.o
|
|
obj-y += efi_memory.o
|
|
obj-y += efi_root_node.o
|
|
obj-y += efi_runtime.o
|
|
obj-y += efi_setup.o
|
|
obj-$(CONFIG_EFI_UNICODE_COLLATION_PROTOCOL2) += efi_unicode_collation.o
|
|
obj-y += efi_var_common.o
|
|
obj-y += efi_var_mem.o
|
|
obj-y += efi_var_file.o
|
|
ifeq ($(CONFIG_EFI_MM_COMM_TEE),y)
|
|
obj-y += efi_variable_tee.o
|
|
else
|
|
obj-y += efi_variable.o
|
|
obj-$(CONFIG_EFI_VARIABLES_PRESEED) += efi_var_seed.o
|
|
endif
|
|
obj-y += efi_watchdog.o
|
|
obj-$(CONFIG_LCD) += efi_gop.o
|
|
obj-$(CONFIG_DM_VIDEO) += efi_gop.o
|
|
obj-$(CONFIG_PARTITIONS) += efi_disk.o
|
|
obj-$(CONFIG_NET) += efi_net.o
|
|
obj-$(CONFIG_GENERATE_ACPI_TABLE) += efi_acpi.o
|
|
obj-$(CONFIG_GENERATE_SMBIOS_TABLE) += efi_smbios.o
|
|
obj-$(CONFIG_EFI_RNG_PROTOCOL) += efi_rng.o
|
|
obj-$(CONFIG_EFI_LOAD_FILE2_INITRD) += efi_load_initrd.o
|
|
obj-y += efi_signature.o
|
|
|
|
EFI_VAR_SEED_FILE := $(subst $\",,$(CONFIG_EFI_VAR_SEED_FILE))
|
|
$(obj)/efi_var_seed.o: $(srctree)/$(EFI_VAR_SEED_FILE)
|