[PATCH v2 3/3] efi_selftest: substitute ResetSystem() by do_reset()

Heinrich Schuchardt xypron.glpk at gmx.de
Sat Aug 22 09:39:22 CEST 2020


If ResetSystem() is not implemented at runtime, call do_reset() after
test completion.

Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
v2:
	new patch
---
 lib/efi_selftest/efi_selftest.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/lib/efi_selftest/efi_selftest.c b/lib/efi_selftest/efi_selftest.c
index 5b01610eca..6eec8ae2a7 100644
--- a/lib/efi_selftest/efi_selftest.c
+++ b/lib/efi_selftest/efi_selftest.c
@@ -5,6 +5,7 @@
  * Copyright (c) 2017 Heinrich Schuchardt <xypron.glpk at gmx.de>
  */

+#include <command.h>
 #include <efi_selftest.h>
 #include <vsprintf.h>

@@ -309,8 +310,13 @@ efi_status_t EFIAPI efi_selftest(efi_handle_t image_handle,
 	/* Reset system */
 	efi_st_printf("Preparing for reset. Press any key...\n");
 	efi_st_get_key();
-	runtime->reset_system(EFI_RESET_WARM, EFI_NOT_READY,
-			      sizeof(reset_message), reset_message);
+
+	if (IS_ENABLED(CONFIG_EFI_HAVE_RUNTIME_RESET))
+		runtime->reset_system(EFI_RESET_WARM, EFI_NOT_READY,
+				      sizeof(reset_message), reset_message);
+	else
+		do_reset(NULL, 0, 0, NULL);
+
 	efi_st_printf("\n");
 	efi_st_error("Reset failed\n");

--
2.28.0



More information about the U-Boot mailing list