Hi Heinrich, > > + > > > > /* Use internal device tree when starting UEFI application */ > > #define EFI_FDT_USE_INTERNAL NULL > > diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c > > index 8ebbea7e5c69..d898ba6c268f 100644 > > --- a/lib/efi_loader/efi_runtime.c > > +++ b/lib/efi_loader/efi_runtime.c > > @@ -127,10 +127,6 @@ efi_status_t efi_init_runtime_supported(void) > > EFI_RT_SUPPORTED_SET_VIRTUAL_ADDRESS_MAP | > > EFI_RT_SUPPORTED_CONVERT_POINTER; > > > > - if (IS_ENABLED(CONFIG_EFI_RT_VOLATILE_STORE)) > > - rt_table->runtime_services_supported |= > > - EFI_RT_SUPPORTED_SET_VARIABLE; > > - > [...]
> Why do you want to remove this flag? > I don't, I messed this up during my rebase before sending the patches. The code in EBS() was supposed to re-enable it. It's all fixed in patch #3, but this patch needs a change as well rt_prop->runtime_services_supported |= ~EFI_RT_SUPPORTED_SET_VARIABLE; should be rt_prop->runtime_services_supported |= EFI_RT_SUPPORTED_SET_VARIABLE; in efi_variables_boot_exit_notify() Thanks /Ilias > Best regards > > Heinrich > > > /* > > * This value must be synced with efi_runtime_detach_list > > * as well as efi_runtime_services. > > diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c > > index f79041e6bedd..f97c8c57f75c 100644 > > --- a/lib/efi_loader/efi_variable.c > > +++ b/lib/efi_loader/efi_variable.c > > @@ -554,6 +554,26 @@ if (IS_ENABLED(CONFIG_EFI_RT_VOLATILE_STORE)) { > > */ > > void efi_variables_boot_exit_notify(void) > > { > > + const efi_guid_t efi_guid_efi_rt_var_file = > > U_BOOT_EFI_RT_VAR_FILE_GUID; > > + const efi_guid_t rt_prop_guid = EFI_RT_PROPERTIES_TABLE_GUID; > > + efi_status_t ret; > > + > > + if (IS_ENABLED(CONFIG_EFI_RT_VOLATILE_STORE)) { > > + struct efi_rt_properties_table *rt_prop = > > + efi_get_configuration_table(&rt_prop_guid); > > + > > + ret = efi_set_variable_int(u"RTStorageVolatile", > > + &efi_guid_efi_rt_var_file, > > + EFI_VARIABLE_BOOTSERVICE_ACCESS | > > + EFI_VARIABLE_RUNTIME_ACCESS | > > + EFI_VARIABLE_READ_ONLY, > > + sizeof(EFI_VAR_FILE_NAME), > > + EFI_VAR_FILE_NAME, false); > > + if (ret != EFI_SUCCESS) > > + rt_prop->runtime_services_supported |= > > ~EFI_RT_SUPPORTED_SET_VARIABLE; > > + else > > + log_err("Can't RTStorage. SetVariableRT won't be > > available\n"); > > + } > > /* Switch variable services functions to runtime version */ > > efi_runtime_services.get_variable = efi_get_variable_runtime; > > efi_runtime_services.get_next_variable_name = >