libpayload/keyboard: Add timestamp to track time spent in a state
Will be used to time out in states that don't always advance. Change-Id: I28235e7638d8157cedf81fd915a41d28a1fc070b Signed-off-by: Nico Huber <nico.h@gmx.de> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47087 Reviewed-by: Angel Pons <th3fanbus@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
260dd9eb7e
commit
777c599747
|
@ -245,6 +245,7 @@ static enum keyboard_state {
|
||||||
} keyboard_state;
|
} keyboard_state;
|
||||||
|
|
||||||
static uint64_t keyboard_time;
|
static uint64_t keyboard_time;
|
||||||
|
static uint64_t state_time;
|
||||||
|
|
||||||
static void keyboard_poll(void)
|
static void keyboard_poll(void)
|
||||||
{
|
{
|
||||||
|
@ -334,8 +335,10 @@ static void keyboard_poll(void)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (keyboard_state != next_state)
|
if (keyboard_state != next_state) {
|
||||||
keyboard_state = next_state;
|
keyboard_state = next_state;
|
||||||
|
state_time = timer_us(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool keyboard_havechar(void)
|
bool keyboard_havechar(void)
|
||||||
|
@ -489,7 +492,7 @@ void keyboard_init(void)
|
||||||
i8042_cmd(I8042_CMD_EN_KB);
|
i8042_cmd(I8042_CMD_EN_KB);
|
||||||
|
|
||||||
keyboard_state = STATE_DISABLE_SCAN;
|
keyboard_state = STATE_DISABLE_SCAN;
|
||||||
keyboard_time = timer_us(0);
|
keyboard_time = state_time = timer_us(0);
|
||||||
|
|
||||||
console_add_input_driver(&cons);
|
console_add_input_driver(&cons);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue