summaryrefslogtreecommitdiff
path: root/boot/bootflow_menu.c
diff options
context:
space:
mode:
authorSimon Glass <[email protected]>2025-05-02 08:46:15 -0600
committerSimon Glass <[email protected]>2025-05-30 09:49:31 +0100
commit5c365ecabcac6d3218cf7e560bda01629a46d88e (patch)
tree59dd168bdade393dc3f0d84f2fa1aadf2293cdc4 /boot/bootflow_menu.c
parent4f4b9477f4476cd86ffd4219111065d610c5237a (diff)
expo: Add CLI context to the expo
An expo generally needs to keep track of the keyboard state while it is running, so move the context into struct expo Signed-off-by: Simon Glass <[email protected]>
Diffstat (limited to 'boot/bootflow_menu.c')
-rw-r--r--boot/bootflow_menu.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/boot/bootflow_menu.c b/boot/bootflow_menu.c
index 9d0dc352f97..43125e15832 100644
--- a/boot/bootflow_menu.c
+++ b/boot/bootflow_menu.c
@@ -178,7 +178,6 @@ int bootflow_menu_apply_theme(struct expo *exp, ofnode node)
int bootflow_menu_run(struct bootstd_priv *std, bool text_mode,
struct bootflow **bflowp)
{
- struct cli_ch_state s_cch, *cch = &s_cch;
struct bootflow *sel_bflow;
struct udevice *dev;
struct expo *exp;
@@ -186,8 +185,6 @@ int bootflow_menu_run(struct bootstd_priv *std, bool text_mode,
bool done;
int ret;
- cli_ch_init(cch);
-
sel_bflow = NULL;
*bflowp = NULL;
@@ -225,16 +222,16 @@ int bootflow_menu_run(struct bootstd_priv *std, bool text_mode,
if (ret)
break;
- ichar = cli_ch_process(cch, 0);
+ ichar = cli_ch_process(&exp->cch, 0);
if (!ichar) {
while (!ichar && !tstc()) {
schedule();
mdelay(2);
- ichar = cli_ch_process(cch, -ETIMEDOUT);
+ ichar = cli_ch_process(&exp->cch, -ETIMEDOUT);
}
if (!ichar) {
ichar = getchar();
- ichar = cli_ch_process(cch, ichar);
+ ichar = cli_ch_process(&exp->cch, ichar);
}
}