Index: uspace/lib/drv/generic/driver.c
===================================================================
--- uspace/lib/drv/generic/driver.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/driver.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -118,5 +118,5 @@
 }
 
-static void driver_dev_add(ipc_callid_t iid, ipc_call_t *icall)
+static void driver_dev_add(cap_call_handle_t iid, ipc_call_t *icall)
 {
 	devman_handle_t dev_handle = IPC_GET_ARG1(*icall);
@@ -174,5 +174,5 @@
 }
 
-static void driver_dev_remove(ipc_callid_t iid, ipc_call_t *icall)
+static void driver_dev_remove(cap_call_handle_t iid, ipc_call_t *icall)
 {
 	devman_handle_t devh = IPC_GET_ARG1(*icall);
@@ -207,5 +207,5 @@
 }
 
-static void driver_dev_gone(ipc_callid_t iid, ipc_call_t *icall)
+static void driver_dev_gone(cap_call_handle_t iid, ipc_call_t *icall)
 {
 	devman_handle_t devh = IPC_GET_ARG1(*icall);
@@ -240,5 +240,5 @@
 }
 
-static void driver_fun_online(ipc_callid_t iid, ipc_call_t *icall)
+static void driver_fun_online(cap_call_handle_t iid, ipc_call_t *icall)
 {
 	devman_handle_t funh = IPC_GET_ARG1(*icall);
@@ -275,5 +275,5 @@
 }
 
-static void driver_fun_offline(ipc_callid_t iid, ipc_call_t *icall)
+static void driver_fun_offline(cap_call_handle_t iid, ipc_call_t *icall)
 {
 	devman_handle_t funh = IPC_GET_ARG1(*icall);
@@ -308,5 +308,5 @@
 }
 
-static void driver_stop(ipc_callid_t iid, ipc_call_t *icall)
+static void driver_stop(cap_call_handle_t iid, ipc_call_t *icall)
 {
 	/* Prevent new devices from being added */
@@ -337,5 +337,5 @@
 }
 
-static void driver_connection_devman(ipc_callid_t iid, ipc_call_t *icall,
+static void driver_connection_devman(cap_call_handle_t iid, ipc_call_t *icall,
     void *arg)
 {
@@ -345,5 +345,5 @@
 	while (true) {
 		ipc_call_t call;
-		ipc_callid_t callid = async_get_call(&call);
+		cap_call_handle_t callid = async_get_call(&call);
 
 		if (!IPC_GET_IMETHOD(call))
@@ -381,5 +381,5 @@
  *
  */
-static void driver_connection_gen(ipc_callid_t iid, ipc_call_t *icall, bool drv)
+static void driver_connection_gen(cap_call_handle_t iid, ipc_call_t *icall, bool drv)
 {
 	/*
@@ -426,5 +426,5 @@
 
 	while (true) {
-		ipc_callid_t callid;
+		cap_call_handle_t callid;
 		ipc_call_t call;
 		callid = async_get_call(&call);
@@ -504,5 +504,5 @@
 }
 
-static void driver_connection_driver(ipc_callid_t iid, ipc_call_t *icall,
+static void driver_connection_driver(cap_call_handle_t iid, ipc_call_t *icall,
     void *arg)
 {
@@ -510,5 +510,5 @@
 }
 
-static void driver_connection_client(ipc_callid_t iid, ipc_call_t *icall,
+static void driver_connection_client(cap_call_handle_t iid, ipc_call_t *icall,
     void *arg)
 {
Index: uspace/lib/drv/generic/remote_ahci.c
===================================================================
--- uspace/lib/drv/generic/remote_ahci.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_ahci.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -182,13 +182,13 @@
 }
 
-static void remote_ahci_get_sata_device_name(ddf_fun_t *, void *, ipc_callid_t,
-    ipc_call_t *);
-static void remote_ahci_get_num_blocks(ddf_fun_t *, void *, ipc_callid_t,
-    ipc_call_t *);
-static void remote_ahci_get_block_size(ddf_fun_t *, void *, ipc_callid_t,
-    ipc_call_t *);
-static void remote_ahci_read_blocks(ddf_fun_t *, void *, ipc_callid_t,
-    ipc_call_t *);
-static void remote_ahci_write_blocks(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_ahci_get_sata_device_name(ddf_fun_t *, void *, cap_call_handle_t,
+    ipc_call_t *);
+static void remote_ahci_get_num_blocks(ddf_fun_t *, void *, cap_call_handle_t,
+    ipc_call_t *);
+static void remote_ahci_get_block_size(ddf_fun_t *, void *, cap_call_handle_t,
+    ipc_call_t *);
+static void remote_ahci_read_blocks(ddf_fun_t *, void *, cap_call_handle_t,
+    ipc_call_t *);
+static void remote_ahci_write_blocks(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
 
@@ -210,5 +210,5 @@
 
 void remote_ahci_get_sata_device_name(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const ahci_iface_t *ahci_iface = (ahci_iface_t *) iface;
@@ -232,5 +232,5 @@
 
 	size_t real_size;
-	ipc_callid_t cid;
+	cap_call_handle_t cid;
 	if ((async_data_read_receive(&cid, &real_size)) &&
 	    (real_size == sata_dev_name_length))
@@ -242,5 +242,5 @@
 
 static void remote_ahci_get_num_blocks(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const ahci_iface_t *ahci_iface = (ahci_iface_t *) iface;
@@ -261,5 +261,5 @@
 
 static void remote_ahci_get_block_size(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const ahci_iface_t *ahci_iface = (ahci_iface_t *) iface;
@@ -280,5 +280,5 @@
 
 void remote_ahci_read_blocks(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const ahci_iface_t *ahci_iface = (ahci_iface_t *) iface;
@@ -292,5 +292,5 @@
 	unsigned int flags;
 
-	ipc_callid_t cid;
+	cap_call_handle_t cid;
 	async_share_out_receive(&cid, &maxblock_size, &flags);
 
@@ -308,5 +308,5 @@
 }
 
-void remote_ahci_write_blocks(ddf_fun_t *fun, void *iface, ipc_callid_t callid,
+void remote_ahci_write_blocks(ddf_fun_t *fun, void *iface, cap_call_handle_t callid,
     ipc_call_t *call)
 {
@@ -321,5 +321,5 @@
 	unsigned int flags;
 
-	ipc_callid_t cid;
+	cap_call_handle_t cid;
 	async_share_out_receive(&cid, &maxblock_size, &flags);
 
Index: uspace/lib/drv/generic/remote_audio_mixer.c
===================================================================
--- uspace/lib/drv/generic/remote_audio_mixer.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_audio_mixer.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -199,8 +199,8 @@
  * SERVER SIDE
  */
-static void remote_audio_mixer_get_info(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_mixer_get_item_info(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_mixer_get_item_level(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_mixer_set_item_level(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
+static void remote_audio_mixer_get_info(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_mixer_get_item_info(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_mixer_get_item_level(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_mixer_set_item_level(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
 
 /** Remote audio mixer interface operations. */
@@ -219,5 +219,5 @@
 
 void remote_audio_mixer_get_info(
-    ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+    ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	audio_mixer_iface_t *mixer_iface = iface;
@@ -235,5 +235,5 @@
 	if (ret == EOK && name_size > 0) {
 		size_t size;
-		ipc_callid_t name_id;
+		cap_call_handle_t name_id;
 		if (!async_data_read_receive(&name_id, &size)) {
 			async_answer_0(name_id, EPARTY);
@@ -249,5 +249,5 @@
 
 void remote_audio_mixer_get_item_info(
-    ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+    ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	audio_mixer_iface_t *mixer_iface = iface;
@@ -267,5 +267,5 @@
 	if (ret == EOK && name_size > 0) {
 		size_t size;
-		ipc_callid_t name_id;
+		cap_call_handle_t name_id;
 		if (!async_data_read_receive(&name_id, &size)) {
 			async_answer_0(name_id, EPARTY);
@@ -281,5 +281,5 @@
 
 void remote_audio_mixer_set_item_level(
-    ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+    ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	audio_mixer_iface_t *mixer_iface = iface;
@@ -296,5 +296,5 @@
 
 void remote_audio_mixer_get_item_level(
-    ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+    ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	audio_mixer_iface_t *mixer_iface = iface;
Index: uspace/lib/drv/generic/remote_audio_pcm.c
===================================================================
--- uspace/lib/drv/generic/remote_audio_pcm.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_audio_pcm.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -596,16 +596,16 @@
  * SERVER SIDE
  */
-static void remote_audio_pcm_get_info_str(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_query_caps(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_events_register(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_events_unregister(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_get_buffer_pos(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_test_format(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_get_buffer(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_release_buffer(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_start_playback(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_stop_playback(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_start_capture(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_audio_pcm_stop_capture(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
+static void remote_audio_pcm_get_info_str(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_query_caps(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_events_register(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_events_unregister(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_get_buffer_pos(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_test_format(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_get_buffer(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_release_buffer(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_start_playback(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_stop_playback(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_start_capture(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_audio_pcm_stop_capture(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
 
 /** Remote audio pcm buffer interface operations. */
@@ -632,5 +632,5 @@
 
 void remote_audio_pcm_get_info_str(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -647,5 +647,5 @@
 	if (ret == EOK && name_size > 0) {
 		size_t size;
-		ipc_callid_t name_id;
+		cap_call_handle_t name_id;
 		if (!async_data_read_receive(&name_id, &size)) {
 			async_answer_0(name_id, EPARTY);
@@ -660,5 +660,5 @@
 }
 
-void remote_audio_pcm_query_caps(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_audio_pcm_query_caps(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -672,5 +672,5 @@
 }
 
-static void remote_audio_pcm_events_register(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+static void remote_audio_pcm_events_register(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -684,5 +684,5 @@
 
 	ipc_call_t callback_call;
-	ipc_callid_t callback_id = async_get_call(&callback_call);
+	cap_call_handle_t callback_id = async_get_call(&callback_call);
 	async_sess_t *sess =
 	    async_callback_receive_start(EXCHANGE_ATOMIC, &callback_call);
@@ -702,5 +702,5 @@
 }
 
-static void remote_audio_pcm_events_unregister(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+static void remote_audio_pcm_events_unregister(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -718,5 +718,5 @@
 }
 
-void remote_audio_pcm_get_buffer_pos(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_audio_pcm_get_buffer_pos(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -727,5 +727,5 @@
 }
 
-void remote_audio_pcm_test_format(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_audio_pcm_test_format(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -739,5 +739,5 @@
 
 void remote_audio_pcm_get_buffer(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -757,5 +757,5 @@
 	/* Share the buffer. */
 	size_t share_size = 0;
-	ipc_callid_t share_id = 0;
+	cap_call_handle_t share_id = 0;
 
 	ddf_msg(LVL_DEBUG2, "Receiving share request.");
@@ -788,5 +788,5 @@
 
 void remote_audio_pcm_release_buffer(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -798,5 +798,5 @@
 
 void remote_audio_pcm_start_playback(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -814,5 +814,5 @@
 
 void remote_audio_pcm_stop_playback(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -825,5 +825,5 @@
 
 void remote_audio_pcm_start_capture(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
@@ -841,5 +841,5 @@
 
 void remote_audio_pcm_stop_capture(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const audio_pcm_iface_t *pcm_iface = iface;
Index: uspace/lib/drv/generic/remote_battery_dev.c
===================================================================
--- uspace/lib/drv/generic/remote_battery_dev.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_battery_dev.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -90,7 +90,7 @@
 }
 
-static void remote_battery_status_get(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_battery_status_get(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_battery_charge_level_get(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_battery_charge_level_get(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
 
@@ -118,5 +118,5 @@
  */
 static void
-remote_battery_status_get(ddf_fun_t *fun, void *ops, ipc_callid_t callid,
+remote_battery_status_get(ddf_fun_t *fun, void *ops, cap_call_handle_t callid,
     ipc_call_t *call)
 {
@@ -144,5 +144,5 @@
  */
 static void
-remote_battery_charge_level_get(ddf_fun_t *fun, void *ops, ipc_callid_t callid,
+remote_battery_charge_level_get(ddf_fun_t *fun, void *ops, cap_call_handle_t callid,
     ipc_call_t *call)
 {
Index: uspace/lib/drv/generic/remote_clock_dev.c
===================================================================
--- uspace/lib/drv/generic/remote_clock_dev.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_clock_dev.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -42,7 +42,7 @@
 #include <ddf/driver.h>
 
-static void remote_clock_time_get(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_clock_time_get(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_clock_time_set(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_clock_time_set(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
 
@@ -69,9 +69,9 @@
  */
 static void
-remote_clock_time_get(ddf_fun_t *fun, void *ops, ipc_callid_t callid,
+remote_clock_time_get(ddf_fun_t *fun, void *ops, cap_call_handle_t callid,
     ipc_call_t *call)
 {
 	clock_dev_ops_t *clock_dev_ops = (clock_dev_ops_t *) ops;
-	ipc_callid_t cid;
+	cap_call_handle_t cid;
 	struct tm t;
 	errno_t rc;
@@ -111,10 +111,10 @@
  */
 static void remote_clock_time_set(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	clock_dev_ops_t *clock_dev_ops = (clock_dev_ops_t *) ops;
 	errno_t      rc;
 	struct tm    t;
-	ipc_callid_t cid;
+	cap_call_handle_t cid;
 	size_t       len;
 
Index: uspace/lib/drv/generic/remote_hw_res.c
===================================================================
--- uspace/lib/drv/generic/remote_hw_res.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_hw_res.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -41,15 +41,15 @@
 #include "ddf/driver.h"
 
-static void remote_hw_res_get_resource_list(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_hw_res_get_resource_list(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_hw_res_enable_interrupt(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_hw_res_enable_interrupt(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_hw_res_disable_interrupt(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_hw_res_disable_interrupt(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_hw_res_clear_interrupt(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_hw_res_clear_interrupt(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_hw_res_dma_channel_setup(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_hw_res_dma_channel_setup(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
-static void remote_hw_res_dma_channel_remain(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_hw_res_dma_channel_remain(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
 
@@ -69,5 +69,5 @@
 
 static void remote_hw_res_enable_interrupt(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	hw_res_ops_t *hw_res_ops = (hw_res_ops_t *) ops;
@@ -84,5 +84,5 @@
 
 static void remote_hw_res_disable_interrupt(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	hw_res_ops_t *hw_res_ops = (hw_res_ops_t *) ops;
@@ -99,5 +99,5 @@
 
 static void remote_hw_res_clear_interrupt(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	hw_res_ops_t *hw_res_ops = (hw_res_ops_t *) ops;
@@ -114,5 +114,5 @@
 
 static void remote_hw_res_get_resource_list(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	hw_res_ops_t *hw_res_ops = (hw_res_ops_t *) ops;
@@ -140,5 +140,5 @@
 
 static void remote_hw_res_dma_channel_setup(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	hw_res_ops_t *hw_res_ops = ops;
@@ -159,5 +159,5 @@
 
 static void remote_hw_res_dma_channel_remain(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	hw_res_ops_t *hw_res_ops = ops;
Index: uspace/lib/drv/generic/remote_ieee80211.c
===================================================================
--- uspace/lib/drv/generic/remote_ieee80211.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_ieee80211.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -268,5 +268,5 @@
 
 static void remote_ieee80211_get_scan_results(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	ieee80211_iface_t *ieee80211_iface = (ieee80211_iface_t *) iface;
@@ -280,5 +280,5 @@
 	errno_t rc = ieee80211_iface->get_scan_results(fun, &scan_results, now);
 	if (rc == EOK) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t max_len;
 		if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -302,5 +302,5 @@
 
 static void remote_ieee80211_connect(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	ieee80211_iface_t *ieee80211_iface = (ieee80211_iface_t *) iface;
@@ -310,5 +310,5 @@
 	char password[MAX_STRING_SIZE];
 
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t len;
 	if (!async_data_write_receive(&data_callid, &len)) {
@@ -356,5 +356,5 @@
 
 static void remote_ieee80211_disconnect(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	ieee80211_iface_t *ieee80211_iface = (ieee80211_iface_t *) iface;
Index: uspace/lib/drv/generic/remote_led_dev.c
===================================================================
--- uspace/lib/drv/generic/remote_led_dev.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_led_dev.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -41,5 +41,5 @@
 #include <ddf/driver.h>
 
-static void remote_led_color_set(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_led_color_set(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
 
@@ -66,5 +66,5 @@
  *
  */
-static void remote_led_color_set(ddf_fun_t *fun, void *ops, ipc_callid_t callid,
+static void remote_led_color_set(ddf_fun_t *fun, void *ops, cap_call_handle_t callid,
     ipc_call_t *call)
 {
Index: uspace/lib/drv/generic/remote_nic.c
===================================================================
--- uspace/lib/drv/generic/remote_nic.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_nic.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -1337,5 +1337,5 @@
 
 static void remote_nic_send_frame(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1358,5 +1358,5 @@
 
 static void remote_nic_callback_create(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1368,5 +1368,5 @@
 
 static void remote_nic_get_state(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1380,5 +1380,5 @@
 
 static void remote_nic_set_state(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1392,5 +1392,5 @@
 
 static void remote_nic_get_address(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1403,5 +1403,5 @@
 	if (rc == EOK) {
 		size_t max_len;
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 
 		/* All errors will be translated into EPARTY anyway */
@@ -1426,10 +1426,10 @@
 
 static void remote_nic_set_address(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
 
 	size_t length;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	if (!async_data_write_receive(&data_callid, &length)) {
 		async_answer_0(data_callid, EINVAL);
@@ -1458,5 +1458,5 @@
 
 static void remote_nic_get_stats(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1471,5 +1471,5 @@
 	errno_t rc = nic_iface->get_stats(dev, &stats);
 	if (rc == EOK) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t max_len;
 		if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -1493,5 +1493,5 @@
 
 static void remote_nic_get_device_info(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1506,5 +1506,5 @@
 	errno_t rc = nic_iface->get_device_info(dev, &info);
 	if (rc == EOK) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t max_len;
 		if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -1528,5 +1528,5 @@
 
 static void remote_nic_get_cable_state(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1543,5 +1543,5 @@
 
 static void remote_nic_get_operation_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1561,5 +1561,5 @@
 
 static void remote_nic_set_operation_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1578,5 +1578,5 @@
 
 static void remote_nic_autoneg_enable(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1593,5 +1593,5 @@
 
 static void remote_nic_autoneg_disable(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1606,5 +1606,5 @@
 
 static void remote_nic_autoneg_probe(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1626,5 +1626,5 @@
 
 static void remote_nic_autoneg_restart(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1639,5 +1639,5 @@
 
 static void remote_nic_get_pause(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1656,5 +1656,5 @@
 
 static void remote_nic_set_pause(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1674,5 +1674,5 @@
 
 static void remote_nic_unicast_get_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1706,5 +1706,5 @@
 	}
 
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t max_len;
 	if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -1729,5 +1729,5 @@
 
 static void remote_nic_unicast_set_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1739,5 +1739,5 @@
 
 	if (address_count) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		if (!async_data_write_receive(&data_callid, &length)) {
 			async_answer_0(data_callid, EINVAL);
@@ -1778,5 +1778,5 @@
 
 static void remote_nic_multicast_get_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1811,5 +1811,5 @@
 	}
 
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t max_len;
 	if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -1833,5 +1833,5 @@
 
 static void remote_nic_multicast_set_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1842,5 +1842,5 @@
 
 	if (address_count) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t length;
 		if (!async_data_write_receive(&data_callid, &length)) {
@@ -1882,5 +1882,5 @@
 
 static void remote_nic_broadcast_get_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1897,5 +1897,5 @@
 
 static void remote_nic_broadcast_set_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1912,5 +1912,5 @@
 
 static void remote_nic_defective_get_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1927,5 +1927,5 @@
 
 static void remote_nic_defective_set_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1942,5 +1942,5 @@
 
 static void remote_nic_blocked_sources_get(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -1973,5 +1973,5 @@
 	}
 
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t max_len;
 	if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -1996,5 +1996,5 @@
 
 static void remote_nic_blocked_sources_set(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2005,5 +2005,5 @@
 
 	if (address_count) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		if (!async_data_write_receive(&data_callid, &length)) {
 			async_answer_0(data_callid, EINVAL);
@@ -2044,5 +2044,5 @@
 
 static void remote_nic_vlan_get_mask(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2057,5 +2057,5 @@
 	errno_t rc = nic_iface->vlan_get_mask(dev, &vlan_mask);
 	if (rc == EOK) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t max_len;
 		if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -2078,5 +2078,5 @@
 
 static void remote_nic_vlan_set_mask(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2087,5 +2087,5 @@
 
 	if (vlan_mask_set) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t length;
 		if (!async_data_write_receive(&data_callid, &length)) {
@@ -2118,5 +2118,5 @@
 
 static void remote_nic_vlan_set_tag(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2136,10 +2136,10 @@
 
 static void remote_nic_wol_virtue_add(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
 
 	int send_data = (int) IPC_GET_ARG3(*call);
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 
 	if (nic_iface->wol_virtue_add == NULL) {
@@ -2186,5 +2186,5 @@
 
 static void remote_nic_wol_virtue_remove(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2202,5 +2202,5 @@
 
 static void remote_nic_wol_virtue_probe(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2215,5 +2215,5 @@
 	nic_wv_type_t type = NIC_WV_NONE;
 	size_t length = 0;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	void *data = NULL;
 
@@ -2254,5 +2254,5 @@
 
 static void remote_nic_wol_virtue_list(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2266,5 +2266,5 @@
 	size_t count = 0;
 	nic_wv_id_t *id_list = NULL;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 
 	if (max_count != 0) {
@@ -2304,5 +2304,5 @@
 
 static void remote_nic_wol_virtue_get_caps(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2320,5 +2320,5 @@
 
 static void remote_nic_wol_load_info(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2346,5 +2346,5 @@
 	    &frame_length);
 	if (rc == EOK) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		size_t req_length;
 		if (!async_data_read_receive(&data_callid, &req_length)) {
@@ -2365,5 +2365,5 @@
 
 static void remote_nic_offload_probe(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2381,5 +2381,5 @@
 
 static void remote_nic_offload_set(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2397,5 +2397,5 @@
 
 static void remote_nic_poll_get_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2415,5 +2415,5 @@
 	if ((rc == EOK) && (request_data)) {
 		size_t max_len;
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 
 		if (!async_data_read_receive(&data_callid, &max_len)) {
@@ -2437,5 +2437,5 @@
 
 static void remote_nic_poll_set_mode(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
@@ -2448,5 +2448,5 @@
 
 	if (has_period) {
-		ipc_callid_t data_callid;
+		cap_call_handle_t data_callid;
 		if (!async_data_write_receive(&data_callid, &length)) {
 			async_answer_0(data_callid, EINVAL);
@@ -2477,5 +2477,5 @@
 
 static void remote_nic_poll_now(ddf_fun_t *dev, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	nic_iface_t *nic_iface = (nic_iface_t *) iface;
Index: uspace/lib/drv/generic/remote_pci.c
===================================================================
--- uspace/lib/drv/generic/remote_pci.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_pci.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -124,11 +124,11 @@
 }
 
-static void remote_config_space_read_8(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_config_space_read_16(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_config_space_read_32(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-
-static void remote_config_space_write_8(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_config_space_write_16(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_config_space_write_32(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
+static void remote_config_space_read_8(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_config_space_read_16(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_config_space_read_32(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+
+static void remote_config_space_write_8(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_config_space_write_16(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_config_space_write_32(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
 
 /** Remote USB interface operations. */
@@ -150,5 +150,5 @@
 };
 
-void remote_config_space_read_8(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_config_space_read_8(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(iface);
@@ -168,5 +168,5 @@
 }
 
-void remote_config_space_read_16(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_config_space_read_16(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(iface);
@@ -185,5 +185,5 @@
 	}
 }
-void remote_config_space_read_32(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_config_space_read_32(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(iface);
@@ -203,5 +203,5 @@
 }
 
-void remote_config_space_write_8(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_config_space_write_8(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(iface);
@@ -221,5 +221,5 @@
 }
 
-void remote_config_space_write_16(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_config_space_write_16(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(iface);
@@ -239,5 +239,5 @@
 }
 
-void remote_config_space_write_32(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_config_space_write_32(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(iface);
Index: uspace/lib/drv/generic/remote_pio_window.c
===================================================================
--- uspace/lib/drv/generic/remote_pio_window.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_pio_window.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -40,5 +40,5 @@
 #include "ddf/driver.h"
 
-static void remote_pio_window_get(ddf_fun_t *, void *, ipc_callid_t,
+static void remote_pio_window_get(ddf_fun_t *, void *, cap_call_handle_t,
     ipc_call_t *);
 
@@ -53,5 +53,5 @@
 
 static void remote_pio_window_get(ddf_fun_t *fun, void *ops,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	pio_window_ops_t *pio_win_ops = (pio_window_ops_t *) ops;
Index: uspace/lib/drv/generic/remote_usb.c
===================================================================
--- uspace/lib/drv/generic/remote_usb.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_usb.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -92,5 +92,5 @@
 
 static void remote_usb_get_my_description(ddf_fun_t *, void *,
-    ipc_callid_t, ipc_call_t *);
+    cap_call_handle_t, ipc_call_t *);
 
 /** Remote USB interface operations. */
@@ -107,5 +107,5 @@
 
 void remote_usb_get_my_description(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const usb_iface_t *usb_iface = (usb_iface_t *) iface;
Index: uspace/lib/drv/generic/remote_usbdiag.c
===================================================================
--- uspace/lib/drv/generic/remote_usbdiag.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_usbdiag.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -127,7 +127,7 @@
 
 static void remote_usbdiag_test_in(ddf_fun_t *, void *,
-    ipc_callid_t, ipc_call_t *);
+    cap_call_handle_t, ipc_call_t *);
 static void remote_usbdiag_test_out(ddf_fun_t *, void *,
-    ipc_callid_t, ipc_call_t *);
+    cap_call_handle_t, ipc_call_t *);
 
 /** Remote USB diagnostic interface operations. */
@@ -144,10 +144,10 @@
 
 void remote_usbdiag_test_in(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const usbdiag_iface_t *diag_iface = (usbdiag_iface_t *) iface;
 
 	size_t size;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	if (!async_data_write_receive(&data_callid, &size)) {
 		async_answer_0(data_callid, EINVAL);
@@ -198,10 +198,10 @@
 
 void remote_usbdiag_test_out(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const usbdiag_iface_t *diag_iface = (usbdiag_iface_t *) iface;
 
 	size_t size;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	if (!async_data_write_receive(&data_callid, &size)) {
 		async_answer_0(data_callid, EINVAL);
Index: uspace/lib/drv/generic/remote_usbhc.c
===================================================================
--- uspace/lib/drv/generic/remote_usbhc.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_usbhc.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -227,10 +227,10 @@
 }
 
-static void remote_usbhc_default_address_reservation(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhc_device_enumerate(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhc_device_remove(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhc_register_endpoint(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhc_unregister_endpoint(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhc_transfer(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call);
+static void remote_usbhc_default_address_reservation(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhc_device_enumerate(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhc_device_remove(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhc_register_endpoint(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhc_unregister_endpoint(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhc_transfer(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call);
 
 /** Remote USB interface operations. */
@@ -252,10 +252,10 @@
 
 typedef struct {
-	ipc_callid_t caller;
+	cap_call_handle_t caller;
 	usbhc_iface_transfer_request_t request;
 } async_transaction_t;
 
 void remote_usbhc_default_address_reservation(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const usbhc_iface_t *usbhc_iface = (usbhc_iface_t *) iface;
@@ -273,5 +273,5 @@
 
 static void remote_usbhc_device_enumerate(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const usbhc_iface_t *usbhc_iface = (usbhc_iface_t *) iface;
@@ -289,5 +289,5 @@
 
 static void remote_usbhc_device_remove(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	const usbhc_iface_t *usbhc_iface = (usbhc_iface_t *) iface;
@@ -304,5 +304,5 @@
 
 static void remote_usbhc_register_endpoint(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(fun);
@@ -318,5 +318,5 @@
 
 	usb_endpoint_descriptors_t ep_desc;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t len;
 
@@ -341,5 +341,5 @@
 
 static void remote_usbhc_unregister_endpoint(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(fun);
@@ -355,5 +355,5 @@
 
 	usb_pipe_desc_t pipe_desc;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t len;
 
@@ -381,5 +381,5 @@
 }
 
-static async_transaction_t *async_transaction_create(ipc_callid_t caller)
+static async_transaction_t *async_transaction_create(cap_call_handle_t caller)
 {
 	async_transaction_t *trans = calloc(1, sizeof(async_transaction_t));
@@ -410,5 +410,5 @@
 
 	errno_t err;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t size;
 	unsigned flags;
@@ -445,5 +445,5 @@
 }
 
-void remote_usbhc_transfer(ddf_fun_t *fun, void *iface, ipc_callid_t callid, ipc_call_t *call)
+void remote_usbhc_transfer(ddf_fun_t *fun, void *iface, cap_call_handle_t callid, ipc_call_t *call)
 {
 	assert(fun);
@@ -466,5 +466,5 @@
 	errno_t err = EPARTY;
 
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	size_t len;
 	if (!async_data_write_receive(&data_callid, &len)
Index: uspace/lib/drv/generic/remote_usbhid.c
===================================================================
--- uspace/lib/drv/generic/remote_usbhid.c	(revision eadaeae8dacc68cf558028f23cc96b90a08b7361)
+++ uspace/lib/drv/generic/remote_usbhid.c	(revision 3be9d10120f7923a0b3d52282b8de0b670566c71)
@@ -283,9 +283,9 @@
 }
 
-static void remote_usbhid_get_event_length(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhid_get_event(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhid_get_report_descriptor_length(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-static void remote_usbhid_get_report_descriptor(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
-// static void remote_usbhid_(ddf_fun_t *, void *, ipc_callid_t, ipc_call_t *);
+static void remote_usbhid_get_event_length(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhid_get_event(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhid_get_report_descriptor_length(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+static void remote_usbhid_get_report_descriptor(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
+// static void remote_usbhid_(ddf_fun_t *, void *, cap_call_handle_t, ipc_call_t *);
 
 /** Remote USB HID interface operations. */
@@ -309,5 +309,5 @@
 
 void remote_usbhid_get_event_length(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	printf("remote_usbhid_get_event_length()\n");
@@ -335,5 +335,5 @@
 
 void remote_usbhid_get_event(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	usbhid_iface_t *hid_iface = (usbhid_iface_t *) iface;
@@ -347,5 +347,5 @@
 
 	size_t len;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	if (!async_data_read_receive(&data_callid, &len)) {
 		async_answer_0(callid, EPARTY);
@@ -394,5 +394,5 @@
 
 void remote_usbhid_get_report_descriptor_length(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	usbhid_iface_t *hid_iface = (usbhid_iface_t *) iface;
@@ -408,5 +408,5 @@
 
 void remote_usbhid_get_report_descriptor(ddf_fun_t *fun, void *iface,
-    ipc_callid_t callid, ipc_call_t *call)
+    cap_call_handle_t callid, ipc_call_t *call)
 {
 	usbhid_iface_t *hid_iface = (usbhid_iface_t *) iface;
@@ -418,5 +418,5 @@
 
 	size_t len;
-	ipc_callid_t data_callid;
+	cap_call_handle_t data_callid;
 	if (!async_data_read_receive(&data_callid, &len)) {
 		async_answer_0(callid, EINVAL);
