Index: arch/mips32/src/drivers/arc.c
===================================================================
--- arch/mips32/src/drivers/arc.c	(revision 973be64e8e922f2fbbbb92f7f7cddc8125f9e36b)
+++ arch/mips32/src/drivers/arc.c	(revision 6095342f82cb691572e06dbe4aef66ee04a8d94a)
@@ -189,5 +189,5 @@
 }
 
-static int kbd_polling_enabled;
+static bool kbd_polling_enabled;
 static chardev_t console;
 
@@ -221,10 +221,10 @@
 static void arc_enable(chardev_t *dev)
 {
-	kbd_polling_enabled = 1;	
+	kbd_polling_enabled = true;
 }
 
 static void arc_disable(chardev_t *dev)
 {
-	kbd_polling_enabled = 0;
+	kbd_polling_enabled = false;
 }
 
@@ -247,5 +247,5 @@
 chardev_t * arc_console(void)
 {
-	kbd_polling_enabled = 1;
+	kbd_polling_enabled = true;
 	
 	chardev_initialize("arc_console", &console, &arc_ops);
Index: arch/mips32/src/drivers/serial.c
===================================================================
--- arch/mips32/src/drivers/serial.c	(revision 973be64e8e922f2fbbbb92f7f7cddc8125f9e36b)
+++ arch/mips32/src/drivers/serial.c	(revision 6095342f82cb691572e06dbe4aef66ee04a8d94a)
@@ -34,6 +34,6 @@
 
 static chardev_t console;
-
 static serial_t sconf[SERIAL_MAX];
+static bool kb_enabled;
 
 static void serial_write(chardev_t *d, const char ch)
@@ -52,8 +52,10 @@
 static void serial_enable(chardev_t *d)
 {
+	kb_enabled = true;
 }
 
 static void serial_disable(chardev_t *d)
 {
+	kb_enabled = false;
 }
 
@@ -108,4 +110,5 @@
 	chardev_initialize("serial_console", &console, &serial_ops);
 	console.data = sd;
+	kb_enabled = true;
 
 //	exc_register(2, "serial_drvr", serial_interrupt);
