On 2/3/26 12:51, Michal Simek wrote:
This is updated series based on v3 version sent here https://lore.kernel.org/all/[email protected]/ that's why I am continuing on v4 instead of starting from scratch. Tested on kv260 with saving variables to location where User MTD partition is. CONFIG_EFI_VARIABLE_SF_STORE=y CONFIG_EFI_RT_VOLATILE_STORE=y CONFIG_EFI_VARIABLE_SF_OFFSET=0x22a0000 In Linux: root@som:~# mount | grep efivars none on /sys/firmware/efi/efivars type efivarfs (rw,relatime) root@som:~# printf '\x07\x00\x00\x00Hello' \ | sudo tee /sys/firmware/efi/efivars/TestVar-12345678-1234-1234-1234-123456789abc Helloroot@som:~# root@som:~# dd if=/sys/firmware/efi/efivars/VarToFile-b2ac5fc9-92b7-4acd-aeac-11e818c3130c \ of=/tmp/vars skip=4 bs=1 1352+0 records in 1352+0 records out 1352 bytes (1.4 kB, 1.3 KiB) copied, 0.380992 s, 3.5 kB/s root@som:~# flashcp /tmp/vars /dev/mtd16 root@som:~# reboot Reboot and then in U-Boot: ZynqMP> pri -e ... TestVar: 12345678-1234-1234-1234-123456789abc (12345678-1234-1234-1234-123456789abc) NV|BS|RT, DataSize = 0x5 00000000: 48 65 6c 6c 6f Hello ... Thanks, Michal Changes in v7: - sed -i 's/efi_var_from/efi_var_from_storage/g' - sed -i 's/efi_var_from/efi_var_from_storage/g' Changes in v6: - Return EFI_SUCCESS in efi_set_variable_int() when CONFIG_EFI_VARIABLE_NO_STORE is enabled - sed -i 's/efi_var_read/efi_var_from/g' - sed -i 's/efi_var_write/efi_var_to_storage/g' - sed -i 's/efi_var_read/efi_var_from/g' - sed -i 's/efi_var_write/efi_var_to_storage/g' Changes in v5: - Invert logic in efi_variable.c and avoid #if Changes in v4: - New patch based on review comments from v3 - Extend Kconfig description - Extend commit message and describe efivar missing part - use unify methods for reading/writing variable Changes in v3: - Fixed compiler warnings. Changes in v2: - Refactored efi_var_file to move common parts out as requested - Changed ifdefs to use CONFIG_IS_DEFINED - Fixed typos Michal Simek (1): efi_var: Unify read/write access helper function Shantur Rathore (2): efi_var_file: refactor to move buffer functions efi_vars: Implement SPI Flash store include/efi_variable.h | 18 +++---- lib/efi_loader/Kconfig | 34 +++++++++++- lib/efi_loader/Makefile | 3 +- lib/efi_loader/efi_var_common.c | 42 +++++++++++++++ lib/efi_loader/efi_var_file.c | 65 ++--------------------- lib/efi_loader/efi_var_sf.c | 92 +++++++++++++++++++++++++++++++++ lib/efi_loader/efi_variable.c | 19 ++++--- 7 files changed, 195 insertions(+), 78 deletions(-) create mode 100644 lib/efi_loader/efi_var_sf.c
Tested-by: Neil Armstrong <[email protected]> # on AML-S905D3-CC Thanks, Neil

