From 657a6dc390871721711c2becc8501d05095891e5 Mon Sep 17 00:00:00 2001 From: Patrick Georgi Date: Tue, 21 Oct 2008 15:08:18 +0000 Subject: This patch removes most of the #ifdefs in libc/console.c, and replaces it with two queues (input, output) where drivers (serial, keyboard, video, usb) can attach. The only things left with #ifdefs are initialization (at some point the drivers must get a chance to register) Signed-off-by: Patrick Georgi Acked-by: Jordan Crouse git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3679 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- payloads/libpayload/drivers/keyboard.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'payloads/libpayload/drivers/keyboard.c') diff --git a/payloads/libpayload/drivers/keyboard.c b/payloads/libpayload/drivers/keyboard.c index 95827463ca..0d8f72b32e 100644 --- a/payloads/libpayload/drivers/keyboard.c +++ b/payloads/libpayload/drivers/keyboard.c @@ -326,6 +326,11 @@ int keyboard_add_reset_handler(void (*new_handler)(void)) return 0; } +static struct console_input_driver cons = { + .havekey = keyboard_havechar, + .getchar = keyboard_getchar +}; + void keyboard_init(void) { u8 mode; @@ -350,5 +355,7 @@ void keyboard_init(void) /* Write the new mode */ keyboard_set_mode(mode); + + console_add_input_driver(&cons); } -- cgit v1.2.3