Hi Harsimran, On 2026-05-14T12:49:13, Harsimran Singh Tungal <[email protected]> wrote: > doc: bootefi: note two-phase runtime variables selftest > > The bootefi documentation did not describe how to run the > runtime-variable selftest, so users had no guidance on its reboot > requirements or on which flow applies to their configuration. > > Document the runtime-variable selftest flow in bootefi.rst. Describe > the non-volatile path, note the single-run > CONFIG_EFI_RT_VOLATILE_STORE=y case, and show how to select the > runtime-variable selftest with efi_selftest. > > Signed-off-by: Harsimran Singh Tungal <[email protected]> > > doc/usage/cmd/bootefi.rst | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+)
Reviewed-by: Simon Glass <[email protected]> > diff --git a/doc/usage/cmd/bootefi.rst b/doc/usage/cmd/bootefi.rst > @@ -160,6 +160,33 @@ environment variable to match one of the listed > identifiers > Some of the tests execute the ExitBootServices() UEFI boot service and will > not > return to the command line but require a board reset. > > +When CONFIG_EFI_RT_VOLATILE_STORE is enabled, the test > +*variables at runtime* completes in a single run and does not require > +a reboot. This contradicts the sentence above it. All three tests live in the EFI_SETUP_BEFORE_BOOTTIME_EXIT phase, so the framework calls efi_st_exit_boot_services() before executing them and a board reset is still required to get back to the prompt. What I suspect you mean is that the volatile path does not need an intermediate reboot between setup and verify - please reword, e.g. "completes in a single run and does not require an intermediate reboot to carry state across runs (a board reset is still needed afterwards, as for any test that calls ExitBootServices())". > diff --git a/doc/usage/cmd/bootefi.rst b/doc/usage/cmd/bootefi.rst > @@ -160,6 +160,33 @@ environment variable to match one of the listed > identifiers > +When CONFIG_EFI_RT_VOLATILE_STORE is not enabled, the runtime-variable > +flow is split into *variables at runtime setup* and > +*variables at runtime verify*. Run the setup test once to create the > +runtime-accessible variable in non-volatile storage, reboot, then run > +the verify test to validate, append, and delete that variable. Worth noting that both halves are on_request tests, so they will not be picked up by 'bootefi selftest' without naming them explicitly. A single sentence ("Both phases are on-request tests, so they only run when selected by efi_selftest.") would make this self-contained. Regards, Simon

