diff options
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | firmware/2lib/2ui_screens.c | 2 | ||||
-rw-r--r-- | firmware/lib/vboot_api_kernel.c | 2 | ||||
-rw-r--r-- | tests/vb2_ui_tests.c | 57 | ||||
-rw-r--r-- | tests/vboot_api_kernel4_tests.c | 29 |
5 files changed, 36 insertions, 61 deletions
@@ -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(); |