Index: kernel/generic/include/console/console.h
===================================================================
--- kernel/generic/include/console/console.h	(revision e06da7efc998285c1aa3d8a9ceb29e2a5aea6fdb)
+++ kernel/generic/include/console/console.h	(revision 1515522110c67f91ca381c60a6723f751634a16b)
@@ -44,9 +44,11 @@
 extern bool silent;
 
+extern void console_init(void);
+
 extern void klog_init(void);
 extern void klog_update(void);
 
 extern uint8_t getc(chardev_t *chardev);
-uint8_t _getc(chardev_t *chardev);
+extern uint8_t _getc(chardev_t *chardev);
 extern count_t gets(chardev_t *chardev, char *buf, size_t buflen);
 extern void putchar(char c);
Index: kernel/generic/src/console/console.c
===================================================================
--- kernel/generic/src/console/console.c	(revision e06da7efc998285c1aa3d8a9ceb29e2a5aea6fdb)
+++ kernel/generic/src/console/console.c	(revision 1515522110c67f91ca381c60a6723f751634a16b)
@@ -107,7 +107,27 @@
 }
 
+static void stdin_suspend(chardev_t *d)
+{
+}
+
+static void stdin_resume(chardev_t *d)
+{
+}
+
+static chardev_operations_t stdin_ops = {
+	.suspend = stdin_suspend,
+	.resume = stdin_resume,
+};
+
 /** Standard input character device */
+static chardev_t _stdin;
 chardev_t *stdin = NULL;
 chardev_t *stdout = &null_stdout;
+
+void console_init(void)
+{
+	chardev_initialize("stdin", &_stdin, &stdin_ops);
+	stdin = &_stdin;
+}
 
 /** Initialize kernel logging facility
Index: kernel/generic/src/main/main.c
===================================================================
--- kernel/generic/src/main/main.c	(revision e06da7efc998285c1aa3d8a9ceb29e2a5aea6fdb)
+++ kernel/generic/src/main/main.c	(revision 1515522110c67f91ca381c60a6723f751634a16b)
@@ -257,4 +257,5 @@
 	LOG_EXEC(ipc_init());
 	LOG_EXEC(klog_init());
+	LOG_EXEC(console_init());
 	
 #ifdef CONFIG_KCONSOLE
