Index: uspace/srv/console/console.c
===================================================================
--- uspace/srv/console/console.c	(revision ebfabf6380f038fae3fc5fe621e478743080cd48)
+++ uspace/srv/console/console.c	(revision 8e7afdbcf69dd1225fd11f3444d63f9563bfd98e)
@@ -65,4 +65,7 @@
 int prev_console = 0;
 
+/** Phone to the keyboard driver. */
+static int kbd_phone;
+
 /** Information about framebuffer */
 struct {
@@ -150,4 +153,14 @@
 {
 	ipc_call_sync_0_0(fb_info.phone, FB_SCREEN_RECLAIM);
+}
+
+static void kbd_yield(void)
+{
+	ipc_call_sync_0_0(kbd_phone, KBD_YIELD);
+}
+
+static void kbd_reclaim(void)
+{
+	ipc_call_sync_0_0(kbd_phone, KBD_RECLAIM);
 }
 
@@ -342,4 +355,5 @@
 		gcons_in_kernel();
 		screen_yield();
+		kbd_yield();
 		async_serialize_end();
 
@@ -357,4 +371,5 @@
 		if (active_console == KERNEL_CONSOLE) {
 			screen_reclaim();
+			kbd_reclaim();
 			gcons_redraw_console();
 		}
@@ -666,5 +681,4 @@
 	
 	ipcarg_t phonehash;
-	int kbd_phone;
 	size_t ib_size;
 	int i;
