Index: kernel/arch/ia64/src/ski/ski.c
===================================================================
--- kernel/arch/ia64/src/ski/ski.c	(revision 3dea17f5a2dc97de65bf1ff23eb43f3621665af4)
+++ kernel/arch/ia64/src/ski/ski.c	(revision 715a847f39286d8a5751f93af972d0fdb8bfb951)
@@ -43,4 +43,5 @@
 #include <ddi/irq.h>
 #include <ipc/irq.h>
+#include <proc/thread.h>
 #include <synch/spinlock.h>
 #include <arch/asm.h>
@@ -124,5 +125,5 @@
 
 /** Ask keyboard if a key was pressed. */
-void poll_keyboard(void)
+static void poll_keyboard(void)
 {
 	char ch;
@@ -225,14 +226,4 @@
 	irq_register(&ski_kbd_irq);
 
-}
-
-/** Setup console sysinfo (i.e. Keyboard IRQ)
- *
- * Because sysinfo neads memory allocation/dealocation
- * this functions should be called separetely from init.
- *
- */
-void ski_set_console_sysinfo(void)
-{
 	sysinfo_set_item_val("kbd", NULL, true);
 	sysinfo_set_item_val("kbd.inr", NULL, SKI_KBD_INR);
@@ -259,4 +250,16 @@
 }
 
+
+#define POLL_INTERVAL		50000		/* 50 ms */
+
+/** Kernel thread for polling keyboard. */
+void kkbdpoll(void *arg)
+{
+	while (1) {
+		poll_keyboard();
+		thread_usleep(POLL_INTERVAL);
+	}
+}
+
 /** @}
  */
