summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHsuan Ting Chen <roccochen@chromium.org>2021-07-05 18:49:20 +0800
committerCommit Bot <commit-bot@chromium.org>2021-07-16 09:35:45 +0000
commit71aa26394ac18ec35ea9cbb08392faf8dca4fbcb (patch)
tree4a6c8449dee713fe654ec48786a9a13c18263e3b
parent22777bb5d531fac82da05c1fca6f02111b93e286 (diff)
downloadvboot-71aa26394ac18ec35ea9cbb08392faf8dca4fbcb.tar.gz
Makefile: deprecate config DIAGNOSTIC_UI
DIAGNOSTIC_UI is indirectly decided by the diag_payload and minidiag use flag from depthcharge. But with introducing the diagnostic boot mode, coreboot also needs to build minidiag utility functions and enable this building flag. Therefore we consider to deprecate DIAGNOSTIC_UI and always build them. For diag_payload: It is for a diagnostic tool which based on legacy UI and deprecated For minidiag: Mini-diag is set default enabled for newer devices, and we could still use kernel secdata in runtime if we decide to disable it on certain platforms. In conclusion, deprecating DIAGNOSTIC_UI will not affect newer devices. BUG=b:190796342, b:181931817 BRANCH=none TEST=emerge-volteer depthcharge TEST=emerge-volteer coreboot TEST=CC=x86_64-pc-linux-gnu-clang; make clean && make runtests Cq-Depend: chromium:3004223 Signed-off-by: Hsuan Ting Chen <roccochen@chromium.org> Change-Id: I0d804bcd9d31d3952c744a1926ac59cde7b7f841 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/3006114 Reviewed-by: Yu-Ping Wu <yupingso@chromium.org>
-rw-r--r--Makefile7
-rw-r--r--firmware/2lib/2ui_screens.c2
-rw-r--r--firmware/lib/vboot_api_kernel.c2
-rw-r--r--tests/vb2_ui_tests.c57
-rw-r--r--tests/vboot_api_kernel4_tests.c29
5 files changed, 36 insertions, 61 deletions
diff --git a/Makefile b/Makefile
index 97069d9d..38dad3e5 100644
--- a/Makefile
+++ b/Makefile
@@ -235,13 +235,6 @@ else
CFLAGS += -DDETACHABLE=0
endif
-# pass DIAGNOSTIC_UI= (or =0) to make to disable feature
-ifneq ($(filter-out 0,${DIAGNOSTIC_UI}),)
-CFLAGS += -DDIAGNOSTIC_UI=1
-else
-CFLAGS += -DDIAGNOSTIC_UI=0
-endif
-
# Confirm physical presence using keyboard
ifneq ($(filter-out 0,${PHYSICAL_PRESENCE_KEYBOARD}),)
CFLAGS += -DPHYSICAL_PRESENCE_KEYBOARD=1
diff --git a/firmware/2lib/2ui_screens.c b/firmware/2lib/2ui_screens.c
index 0d4a0693..d2716e32 100644
--- a/firmware/2lib/2ui_screens.c
+++ b/firmware/2lib/2ui_screens.c
@@ -435,7 +435,7 @@ vb2_error_t recovery_select_init(struct vb2_ui_context *ui)
ui->state->selected_item = RECOVERY_SELECT_ITEM_EXTERNAL_DISK;
}
- if (!DIAGNOSTIC_UI || !vb2api_diagnostic_ui_enabled(ui->ctx))
+ if (!vb2api_diagnostic_ui_enabled(ui->ctx))
VB2_SET_BIT(ui->state->hidden_item_mask,
RECOVERY_SELECT_ITEM_DIAGNOSTICS);
diff --git a/firmware/lib/vboot_api_kernel.c b/firmware/lib/vboot_api_kernel.c
index 799424a2..03025988 100644
--- a/firmware/lib/vboot_api_kernel.c
+++ b/firmware/lib/vboot_api_kernel.c
@@ -199,7 +199,7 @@ vb2_error_t VbSelectAndLoadKernel(struct vb2_context *ctx,
VB2_TRY(vb2_manual_recovery_menu(ctx));
else
VB2_TRY(vb2_broken_recovery_menu(ctx));
- } else if (DIAGNOSTIC_UI && vb2api_diagnostic_ui_enabled(ctx) &&
+ } else if (vb2api_diagnostic_ui_enabled(ctx) &&
vb2_nv_get(ctx, VB2_NV_DIAG_REQUEST)) {
/*
* Need to clear the request flag and commit nvdata changes
diff --git a/tests/vb2_ui_tests.c b/tests/vb2_ui_tests.c
index 2feadfa0..657ae5f8 100644
--- a/tests/vb2_ui_tests.c
+++ b/tests/vb2_ui_tests.c
@@ -1057,18 +1057,15 @@ static void manual_recovery_tests(void)
}
/* Enter diagnostics */
- if (DIAGNOSTIC_UI) {
- /* Launch diagnostics is inside manual recovery */
- reset_common_data(FOR_MANUAL_RECOVERY);
- add_mock_keypress(VB_KEY_DOWN);
- add_mock_keypress(VB_KEY_DOWN);
- add_mock_keypress(VB_KEY_ENTER);
- TEST_EQ(vb2_manual_recovery_menu(ctx),
- VB2_REQUEST_REBOOT,
- "Reboot immediately after request diagnostics");
- TEST_EQ(vb2_nv_get(ctx, VB2_NV_DIAG_REQUEST), 1,
- "VB2_NV_DIAG_REQUEST is set");
- }
+ reset_common_data(FOR_MANUAL_RECOVERY);
+ add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_ENTER);
+ TEST_EQ(vb2_manual_recovery_menu(ctx),
+ VB2_REQUEST_REBOOT,
+ "Reboot immediately after request diagnostics");
+ TEST_EQ(vb2_nv_get(ctx, VB2_NV_DIAG_REQUEST), 1,
+ "VB2_NV_DIAG_REQUEST is set");
VB2_DEBUG("...done.\n");
}
@@ -1232,8 +1229,7 @@ static void firmware_log_tests(void)
reset_common_data(FOR_MANUAL_RECOVERY);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
- if (DIAGNOSTIC_UI)
- add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_ENTER);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
@@ -1249,8 +1245,7 @@ static void firmware_log_tests(void)
reset_common_data(FOR_MANUAL_RECOVERY);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
- if (DIAGNOSTIC_UI)
- add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_ENTER);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
@@ -1270,8 +1265,7 @@ static void firmware_log_tests(void)
reset_common_data(FOR_MANUAL_RECOVERY);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
- if (DIAGNOSTIC_UI)
- add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_ENTER);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
@@ -1624,12 +1618,9 @@ static void manual_recovery_screen_tests(void)
/* Recovery select screen: disabled and hidden item mask */
reset_common_data(FOR_MANUAL_RECOVERY);
TEST_EQ(vb2_manual_recovery_menu(ctx), VB2_REQUEST_SHUTDOWN,
- DIAGNOSTIC_UI ?
- "recovery select screen: no disabled or hidden item" :
- "recovery select screen: hide `launch diag`");
+ "recovery select screen: no disabled or hidden item");
DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT,
- MOCK_IGNORE, MOCK_IGNORE, 0x0, DIAGNOSTIC_UI ? 0x0 : 0x8,
- MOCK_IGNORE);
+ MOCK_IGNORE, MOCK_IGNORE, 0x0, 0x0, MOCK_IGNORE);
/* Recovery select screen */
reset_common_data(FOR_MANUAL_RECOVERY);
@@ -1646,8 +1637,7 @@ static void manual_recovery_screen_tests(void)
add_mock_keypress(VB_KEY_ENTER);
add_mock_keypress(VB_KEY_ESC);
/* #3: Launch diagnostics */
- if (DIAGNOSTIC_UI)
- add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
/* #4: Advanced options */
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_ENTER);
@@ -1682,9 +1672,8 @@ static void manual_recovery_screen_tests(void)
DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT,
MOCK_IGNORE, 2, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE);
/* #3: Launch diagnostics */
- if (DIAGNOSTIC_UI)
- DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT,
- MOCK_IGNORE, 3, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE);
+ DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT,
+ MOCK_IGNORE, 3, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE);
/* #4: Advanced options */
DISPLAYED_EQ("recovery select", VB2_SCREEN_RECOVERY_SELECT,
MOCK_IGNORE, 4, MOCK_IGNORE, MOCK_IGNORE, MOCK_IGNORE);
@@ -1702,15 +1691,13 @@ static void manual_recovery_screen_tests(void)
reset_common_data(FOR_MANUAL_RECOVERY);
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
- if (DIAGNOSTIC_UI)
- add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_ENTER);
TEST_EQ(vb2_manual_recovery_menu(ctx), VB2_REQUEST_SHUTDOWN,
"advanced options screen: no disabled or hidden item");
DISPLAYED_PASS();
DISPLAYED_PASS();
- if (DIAGNOSTIC_UI)
- DISPLAYED_PASS();
+ DISPLAYED_PASS();
DISPLAYED_PASS();
DISPLAYED_EQ("advanced options", VB2_SCREEN_ADVANCED_OPTIONS,
MOCK_IGNORE, MOCK_IGNORE, 0x0, 0x0, MOCK_IGNORE);
@@ -1720,8 +1707,7 @@ static void manual_recovery_screen_tests(void)
/* #0: Language menu */
add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_DOWN);
- if (DIAGNOSTIC_UI)
- add_mock_keypress(VB_KEY_DOWN);
+ add_mock_keypress(VB_KEY_DOWN);
add_mock_keypress(VB_KEY_ENTER);
add_mock_keypress(VB_KEY_UP);
add_mock_keypress(VB_KEY_ENTER);
@@ -1749,8 +1735,7 @@ static void manual_recovery_screen_tests(void)
"advanced options screen");
DISPLAYED_PASS();
DISPLAYED_PASS();
- if (DIAGNOSTIC_UI)
- DISPLAYED_PASS();
+ DISPLAYED_PASS();
DISPLAYED_PASS();
/* #0: Language menu */
DISPLAYED_PASS();
diff --git a/tests/vboot_api_kernel4_tests.c b/tests/vboot_api_kernel4_tests.c
index 32eaf025..38c6039f 100644
--- a/tests/vboot_api_kernel4_tests.c
+++ b/tests/vboot_api_kernel4_tests.c
@@ -239,22 +239,19 @@ static void select_and_load_kernel_tests(void)
test_slk(VB2_ERROR_MOCK, 0, "Normal boot bad");
/* Check that NV_DIAG_REQUEST triggers diagnostic UI */
- if (DIAGNOSTIC_UI) {
- reset_common_data();
- mock_diagnostic_ui_enabled = 1;
- vb2_nv_set(ctx, VB2_NV_DIAG_REQUEST, 1);
- vbboot_retval = -5;
- test_slk(VB2_ERROR_MOCK, 0,
- "Normal boot with diag enabled");
- TEST_EQ(vb2_nv_get(ctx, VB2_NV_DIAG_REQUEST), 0,
- " diag not requested");
-
- reset_common_data();
- vb2_nv_set(ctx, VB2_NV_DIAG_REQUEST, 1);
- test_slk(VB2_REQUEST_REBOOT, 0,
- "Normal boot with diag disabled (reboot to "
- "unset)");
- }
+ reset_common_data();
+ mock_diagnostic_ui_enabled = 1;
+ vb2_nv_set(ctx, VB2_NV_DIAG_REQUEST, 1);
+ vbboot_retval = -5;
+ test_slk(VB2_ERROR_MOCK, 0,
+ "Normal boot with diag enabled");
+ TEST_EQ(vb2_nv_get(ctx, VB2_NV_DIAG_REQUEST), 0,
+ " diag not requested");
+
+ reset_common_data();
+ vb2_nv_set(ctx, VB2_NV_DIAG_REQUEST, 1);
+ test_slk(VB2_REQUEST_REBOOT, 0,
+ "Normal boot with diag disabled (reboot to unset)");
/* Boot normal - phase1 failure */
reset_common_data();