Index: uspace/srv/hid/input/ctl/kbdev.c
===================================================================
--- uspace/srv/hid/input/ctl/kbdev.c	(revision 2133e02ec289265efe06a41731344d5cd40b6a6e)
+++ uspace/srv/hid/input/ctl/kbdev.c	(revision bae1e1f6864fcff51386ca7dda92f703816ffeef)
@@ -94,6 +94,6 @@
 static int kbdev_ctl_init(kbd_dev_t *kdev)
 {
-	async_sess_t *sess = loc_service_connect(EXCHANGE_SERIALIZE,
-	    kdev->svc_id, 0);
+	async_sess_t *sess = loc_service_connect(kdev->svc_id,
+	    INTERFACE_DDF, 0);
 	if (sess == NULL) {
 		printf("%s: Failed starting session with '%s.'\n", NAME,
@@ -120,5 +120,8 @@
 	}
 	
-	int rc = async_connect_to_me(exch, 0, 0, 0, kbdev_callback_conn, kbdev);
+	port_id_t port;
+	int rc = async_create_callback_port(exch, INTERFACE_KBD_CB, 0, 0,
+	    kbdev_callback_conn, kbdev, &port);
+	
 	if (rc != EOK) {
 		printf("%s: Failed creating callback connection from '%s'.\n",
Index: uspace/srv/hid/input/input.c
===================================================================
--- uspace/srv/hid/input/input.c	(revision 2133e02ec289265efe06a41731344d5cd40b6a6e)
+++ uspace/srv/hid/input/input.c	(revision bae1e1f6864fcff51386ca7dda92f703816ffeef)
@@ -745,6 +745,6 @@
 	if (irc_service) {
 		while (irc_sess == NULL)
-			irc_sess = service_connect_blocking(EXCHANGE_SERIALIZE,
-			    SERVICE_IRC, 0);
+			irc_sess = service_connect_blocking(SERVICE_IRC,
+			    INTERFACE_IRC, 0);
 	}
 	
Index: uspace/srv/hid/input/port/adb.c
===================================================================
--- uspace/srv/hid/input/port/adb.c	(revision 2133e02ec289265efe06a41731344d5cd40b6a6e)
+++ uspace/srv/hid/input/port/adb.c	(revision bae1e1f6864fcff51386ca7dda92f703816ffeef)
@@ -69,5 +69,5 @@
 		return rc;
 	
-	dev_sess = loc_service_connect(EXCHANGE_ATOMIC, service_id, 0);
+	dev_sess = loc_service_connect(service_id, INTERFACE_DDF, 0);
 	if (dev_sess == NULL) {
 		printf("%s: Failed to connect to device\n", NAME);
@@ -82,5 +82,8 @@
 	}
 	
-	rc = async_connect_to_me(exch, 0, 0, 0, kbd_port_events, NULL);
+	port_id_t port;
+	rc = async_create_callback_port(exch, INTERFACE_ADB_CB, 0, 0,
+	    kbd_port_events, NULL, &port);
+	
 	async_exchange_end(exch);
 	if (rc != EOK) {
Index: uspace/srv/hid/input/port/adb_mouse.c
===================================================================
--- uspace/srv/hid/input/port/adb_mouse.c	(revision 2133e02ec289265efe06a41731344d5cd40b6a6e)
+++ uspace/srv/hid/input/port/adb_mouse.c	(revision bae1e1f6864fcff51386ca7dda92f703816ffeef)
@@ -84,5 +84,5 @@
 		return rc;
 	
-	dev_sess = loc_service_connect(EXCHANGE_ATOMIC, service_id, 0);
+	dev_sess = loc_service_connect(service_id, INTERFACE_DDF, 0);
 	if (dev_sess == NULL) {
 		printf("%s: Failed to connect to device\n", NAME);
@@ -98,5 +98,8 @@
 	
 	/* NB: The callback connection is slotted for removal */
-	rc = async_connect_to_me(exch, 0, 0, 0, mouse_port_events, NULL);
+	port_id_t port;
+	rc = async_create_callback_port(exch, INTERFACE_ADB_CB, 0, 0,
+	    mouse_port_events, NULL, &port);
+	
 	async_exchange_end(exch);
 	if (rc != EOK) {
Index: uspace/srv/hid/input/port/chardev.c
===================================================================
--- uspace/srv/hid/input/port/chardev.c	(revision 2133e02ec289265efe06a41731344d5cd40b6a6e)
+++ uspace/srv/hid/input/port/chardev.c	(revision bae1e1f6864fcff51386ca7dda92f703816ffeef)
@@ -84,5 +84,5 @@
 	}
 	
-	dev_sess = loc_service_connect(EXCHANGE_ATOMIC, service_id,
+	dev_sess = loc_service_connect(service_id, INTERFACE_DDF,
 	    IPC_FLAG_BLOCKING);
 	if (dev_sess == NULL) {
@@ -98,6 +98,8 @@
 	}
 	
-	/* NB: The callback connection is slotted for removal */
-	rc = async_connect_to_me(exch, 0, 0, 0, kbd_port_events, NULL);
+	port_id_t port;
+	rc = async_create_callback_port(exch, INTERFACE_CHAR_CB, 0, 0,
+	    kbd_port_events, NULL, &port);
+	
 	async_exchange_end(exch);
 	
Index: uspace/srv/hid/input/proto/mousedev.c
===================================================================
--- uspace/srv/hid/input/proto/mousedev.c	(revision 2133e02ec289265efe06a41731344d5cd40b6a6e)
+++ uspace/srv/hid/input/proto/mousedev.c	(revision bae1e1f6864fcff51386ca7dda92f703816ffeef)
@@ -118,6 +118,5 @@
 static int mousedev_proto_init(mouse_dev_t *mdev)
 {
-	async_sess_t *sess = loc_service_connect(EXCHANGE_SERIALIZE,
-	    mdev->svc_id, 0);
+	async_sess_t *sess = loc_service_connect(mdev->svc_id, INTERFACE_DDF, 0);
 	if (sess == NULL) {
 		printf("%s: Failed starting session with '%s'\n", NAME,
@@ -143,5 +142,8 @@
 	}
 	
-	int rc = async_connect_to_me(exch, 0, 0, 0, mousedev_callback_conn, mousedev);
+	port_id_t port;
+	int rc = async_create_callback_port(exch, INTERFACE_MOUSE_CB, 0, 0,
+	    mousedev_callback_conn, mousedev, &port);
+	
 	async_exchange_end(exch);
 	async_hangup(sess);
