coreinfo: Allow numbers in addition to F keys

When using coreinfo on a serial console (at least
with gtkterm, picocom and minicom on Ubuntu 15.10)
you can't send F keys to the payload. Allow 1..9
for F1..F9

Change-Id: Ie3a11fa1de57c7345737a1ccaff177f407cd5e48
Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-on: https://review.coreboot.org/14065
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
Stefan Reinauer 2016-03-11 23:17:28 -08:00
parent f3f654ddb9
commit c2b50ace1b
1 changed files with 15 additions and 12 deletions

View File

@ -247,6 +247,8 @@ static void loop(void)
halfdelay(10);
while (1) {
int ch = -1;
#if IS_ENABLED(CONFIG_SHOW_DATE_TIME)
print_time_and_date();
wrefresh(menuwin);
@ -257,20 +259,21 @@ static void loop(void)
if (key == ERR)
continue;
if (key >= KEY_F(1) && key <= KEY_F(9)) {
unsigned char ch = key - KEY_F(1);
if (key >= KEY_F(1) && key <= KEY_F(9))
ch = key - KEY_F(1);
if (key >= '1' && key <= '9')
ch = key - '1';
if (ch <= ARRAY_SIZE(categories)) {
if (ch == ARRAY_SIZE(categories))
continue;
if (categories[ch].count == 0)
continue;
curwin = ch;
print_submenu(&categories[curwin]);
redraw_module(&categories[curwin]);
if (ch >= 0 && ch <= ARRAY_SIZE(categories)) {
if (ch == ARRAY_SIZE(categories))
continue;
}
if (categories[ch].count == 0)
continue;
curwin = ch;
print_submenu(&categories[curwin]);
redraw_module(&categories[curwin]);
continue;
}
if (key == KEY_ESC)