Index: uspace/srv/hid/output/port/chardev.c
===================================================================
--- uspace/srv/hid/output/port/chardev.c	(revision 33b57d4aae513dc60ae16b778aac0ec908988808)
+++ uspace/srv/hid/output/port/chardev.c	(revision 9185e42e0b0eb9a56ffcdfa54c2fc6bbff2ac303)
@@ -39,5 +39,5 @@
 #include <errno.h>
 #include <str.h>
-#include <sysinfo.h>
+#include <config.h>
 #include "../ctl/serial.h"
 #include "../output.h"
@@ -134,36 +134,13 @@
 int chardev_init(void)
 {
-	char *boot_args;
-	size_t size;
-	int rc;
-
-	boot_args = sysinfo_get_data("boot_args", &size);
-	if (!boot_args || !size) {
+	console = config_get_value("console");
+	if (!console) {
 		/*
-		 * Ok, there is nothing in the boot arguments. That means that
-		 * the user did not specify a serial console device.
+		 * The system is not configured to use serial console.
 		 */
 		return EOK;
 	}
 
-	char *args = boot_args;
-	char *arg;
-#define ARG_CONSOLE	"console="
-	while ((arg = str_tok(args, " ", &args)) != NULL) {
-		if (!str_lcmp(arg, ARG_CONSOLE, str_length(ARG_CONSOLE))) {
-			console = arg + str_length(ARG_CONSOLE);
-			break;
-		}
-	}
-
-	if (!console) {
-		/*
-		 * The user specified some boot arguments, but the serial
-		 * console service was not among them.
-		 */
-		return EOK;
-	}
-
-	rc = loc_category_get_id("serial", &serial_cat_id, IPC_FLAG_BLOCKING);
+	int rc = loc_category_get_id("serial", &serial_cat_id, IPC_FLAG_BLOCKING);
 	if (rc != EOK) {
 		printf("%s: Failed to get \"serial\" category ID.\n", NAME);
