Index: uspace/srv/hid/kbd/port/pl050.c
===================================================================
--- uspace/srv/hid/kbd/port/pl050.c	(revision b3d513f48cc2b3f32c92f6f1f5e0fd3f4aee39c8)
+++ uspace/srv/hid/kbd/port/pl050.c	(revision 9d6bfa54cd19173b48ae3d05ffc70bf7e60e75ab)
@@ -83,12 +83,17 @@
 int kbd_port_init(void)
 {
-
-	pl050_kbd.cmds[0].addr = (void *) sysinfo_value("kbd.address.status");
-	pl050_kbd.cmds[3].addr = (void *) sysinfo_value("kbd.address.data");
-
+	if (sysinfo_get_value("kbd.address.status", &pl050_kbd.cmds[0].addr) != EOK)
+		return -1;
+	
+	if (sysinfo_get_value("kbd.address.data", &pl050_kbd.cmds[3].addr) != EOK)
+		return -1;
+	
+	sysarg_t inr;
+	if (sysinfo_get_value("kbd.inr", &inr) != EOK)
+		return -1;
+	
 	async_set_interrupt_received(pl050_irq_handler);
-
-	ipc_register_irq(sysinfo_value("kbd.inr"), device_assign_devno(), 0, &pl050_kbd);
-
+	ipc_register_irq(inr, device_assign_devno(), 0, &pl050_kbd);
+	
 	return 0;
 }
