coreboot-kgpe-d16/payloads/libpayload/drivers
Nico Huber e9c572f203 libpayload/keyboard: Implement self-test
The keyboard self-test is required for some devices. At least one
device (integrated keyboard in a ThinkPad X201) actually starts the
test automatically leading to spurious output and no response for
the first seconds.

We wait up to 5s for the self-test result. On failure or timeout,
the command will be repeated until the 30s init timer runs out. This
happens all in the background of the UI polling loop.

To not unnecessarily delay the boot process, we first try an oppor-
tunistic initialization which skips the self-test.

Change-Id: Ie07b31e74d06e116ac81e76309621eed39a19b49
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/47088
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-12-24 08:20:16 +00:00
..
i8042 libpayload/keyboard: Implement self-test 2020-12-24 08:20:16 +00:00
serial payloads: Drop unneeded empty lines 2020-09-21 16:20:57 +00:00
storage libpayload: storage.c: remove unneeded #if CONFIG() 2020-11-09 07:23:20 +00:00
timer treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
udc payloads: Drop unneeded empty lines 2020-09-21 16:20:57 +00:00
usb libpayload/usb: Fix printf format string mismatches in debug messages 2020-11-22 22:34:52 +00:00
video payloads: Drop unneeded empty lines 2020-09-21 16:20:57 +00:00
Makefile.inc treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
cbmem_console.c libpayload: Cache physical cbmem console address 2020-08-24 09:12:47 +00:00
hid.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
mouse_cursor.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
nvram.c payloads: Drop unneeded empty lines 2020-09-21 16:20:57 +00:00
options.c libpayload: use PRIu64 type to print u64 2020-09-30 10:16:44 +00:00
pci.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
speaker.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00