summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu-Ping Wu <yupingso@chromium.org>2020-05-21 15:44:09 +0800
committerCommit Bot <commit-bot@chromium.org>2020-06-01 07:52:32 +0000
commitebb28ba36e7bed99c46062ddf620e20614bdbfd4 (patch)
tree5f0e41021eec1cec69057fcfc72c91ada45520e8
parent251c0f23f57f54dcc3bb91b4ef78598e971afa1f (diff)
downloadvboot-ebb28ba36e7bed99c46062ddf620e20614bdbfd4.tar.gz
vboot/ui: implement disk recovery screens
Implement disk recovery screens for all the 3 steps. BRANCH=none BUG=b:146399181 TEST=USE="menu_ui" emerge-nami depthcharge Change-Id: Iea8fe4650cecb63ea519084ec8a71325ba4e3ebb Signed-off-by: Yu-Ping Wu <yupingso@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/2211981 Reviewed-by: Joel Kitching <kitching@chromium.org>
-rw-r--r--firmware/2lib/2ui_screens.c48
1 files changed, 44 insertions, 4 deletions
diff --git a/firmware/2lib/2ui_screens.c b/firmware/2lib/2ui_screens.c
index 612a08c8..50281e04 100644
--- a/firmware/2lib/2ui_screens.c
+++ b/firmware/2lib/2ui_screens.c
@@ -25,6 +25,16 @@
.is_language_select = 1, \
}
+#define NEXT_ITEM(target_screen) { \
+ .text = "Next", \
+ .target = (target_screen), \
+}
+
+#define BACK_ITEM { \
+ .text = "Back", \
+ .action = vb2_ui_change_root, \
+}
+
#define ADVANCED_OPTIONS_ITEM { \
.text = "Advanced options", \
.target = VB2_SCREEN_ADVANCED_OPTIONS, \
@@ -153,10 +163,7 @@ static const struct vb2_menu_item advanced_options_items[] = {
.text = "Enable developer mode",
.target = VB2_SCREEN_RECOVERY_TO_DEV,
},
- [ADVANCED_OPTIONS_ITEM_BACK] = {
- .text = "Back",
- .action = vb2_ui_change_root,
- },
+ [ADVANCED_OPTIONS_ITEM_BACK] = BACK_ITEM,
};
static const struct vb2_screen_info advanced_options_screen = {
@@ -341,6 +348,8 @@ static const struct vb2_screen_info recovery_phone_step1_screen = {
static const struct vb2_menu_item recovery_disk_step1_items[] = {
LANGUAGE_SELECT_ITEM,
+ NEXT_ITEM(VB2_SCREEN_RECOVERY_DISK_STEP2),
+ BACK_ITEM,
};
static const struct vb2_screen_info recovery_disk_step1_screen = {
@@ -350,6 +359,35 @@ static const struct vb2_screen_info recovery_disk_step1_screen = {
};
/******************************************************************************/
+/* VB2_SCREEN_RECOVERY_DISK_STEP2 */
+
+static const struct vb2_menu_item recovery_disk_step2_items[] = {
+ LANGUAGE_SELECT_ITEM,
+ NEXT_ITEM(VB2_SCREEN_RECOVERY_DISK_STEP3),
+ BACK_ITEM,
+};
+
+static const struct vb2_screen_info recovery_disk_step2_screen = {
+ .id = VB2_SCREEN_RECOVERY_DISK_STEP2,
+ .name = "Disk recovery step 2",
+ .menu = MENU_ITEMS(recovery_disk_step2_items),
+};
+
+/******************************************************************************/
+/* VB2_SCREEN_RECOVERY_DISK_STEP3 */
+
+static const struct vb2_menu_item recovery_disk_step3_items[] = {
+ LANGUAGE_SELECT_ITEM,
+ BACK_ITEM,
+};
+
+static const struct vb2_screen_info recovery_disk_step3_screen = {
+ .id = VB2_SCREEN_RECOVERY_DISK_STEP3,
+ .name = "Disk recovery step 3",
+ .menu = MENU_ITEMS(recovery_disk_step3_items),
+};
+
+/******************************************************************************/
/* VB2_SCREEN_DEVELOPER_MODE */
#define DEVELOPER_MODE_ITEM_RETURN_TO_SECURE 1
@@ -536,6 +574,8 @@ static const struct vb2_screen_info *screens[] = {
&recovery_to_dev_screen,
&recovery_phone_step1_screen,
&recovery_disk_step1_screen,
+ &recovery_disk_step2_screen,
+ &recovery_disk_step3_screen,
&developer_mode_screen,
&developer_to_norm_screen,
};