Index: uspace/drv/char/i8042/i8042.c
===================================================================
--- uspace/drv/char/i8042/i8042.c	(revision 18b6a8849d630cc3bca153fb21bd225eebb16f4c)
+++ uspace/drv/char/i8042/i8042.c	(revision a1aecb12e1acd6c228cecd2e91a411a9fb169a0c)
@@ -67,5 +67,5 @@
 #define i8042_KBD_TRANSLATE  0x40  /* Use this to switch to XT scancodes */
 
-static void i8042_char_conn(cap_call_handle_t, ipc_call_t *, void *);
+static void i8042_char_conn(ipc_call_t *, void *);
 static errno_t i8042_read(chardev_srv_t *, void *, size_t, size_t *);
 static errno_t i8042_write(chardev_srv_t *, const void *, size_t, size_t *);
@@ -415,13 +415,13 @@
 /** Handle data requests.
  *
- * @param id   chandle
  * @param call IPC request.
  * @param arg  ddf_fun_t function.
- */
-void i8042_char_conn(cap_call_handle_t icall_handle, ipc_call_t *icall, void *arg)
+ *
+ */
+void i8042_char_conn(ipc_call_t *icall, void *arg)
 {
 	i8042_port_t *port = ddf_fun_data_get((ddf_fun_t *)arg);
 
-	chardev_conn(icall_handle, icall, &port->cds);
+	chardev_conn(icall, &port->cds);
 }
 
Index: uspace/drv/char/msim-con/msim-con.c
===================================================================
--- uspace/drv/char/msim-con/msim-con.c	(revision 18b6a8849d630cc3bca153fb21bd225eebb16f4c)
+++ uspace/drv/char/msim-con/msim-con.c	(revision a1aecb12e1acd6c228cecd2e91a411a9fb169a0c)
@@ -41,5 +41,5 @@
 #include "msim-con.h"
 
-static void msim_con_connection(cap_call_handle_t, ipc_call_t *, void *);
+static void msim_con_connection(ipc_call_t *, void *);
 
 static errno_t msim_con_read(chardev_srv_t *, void *, size_t, size_t *);
@@ -217,11 +217,10 @@
 
 /** Character device connection handler. */
-static void msim_con_connection(cap_call_handle_t icall_handle, ipc_call_t *icall,
-    void *arg)
+static void msim_con_connection(ipc_call_t *icall, void *arg)
 {
 	msim_con_t *con = (msim_con_t *) ddf_dev_data_get(
 	    ddf_fun_get_dev((ddf_fun_t *) arg));
 
-	chardev_conn(icall_handle, icall, &con->cds);
+	chardev_conn(icall, &con->cds);
 }
 
Index: uspace/drv/char/ns8250/ns8250.c
===================================================================
--- uspace/drv/char/ns8250/ns8250.c	(revision 18b6a8849d630cc3bca153fb21bd225eebb16f4c)
+++ uspace/drv/char/ns8250/ns8250.c	(revision a1aecb12e1acd6c228cecd2e91a411a9fb169a0c)
@@ -311,5 +311,5 @@
 static errno_t ns8250_open(chardev_srvs_t *, chardev_srv_t *);
 static errno_t ns8250_close(chardev_srv_t *);
-static void ns8250_default_handler(chardev_srv_t *, cap_call_handle_t, ipc_call_t *);
+static void ns8250_default_handler(chardev_srv_t *, ipc_call_t *);
 
 /** The character interface's callbacks. */
@@ -322,5 +322,5 @@
 };
 
-static void ns8250_char_conn(cap_call_handle_t, ipc_call_t *, void *);
+static void ns8250_char_conn(ipc_call_t *, void *);
 
 static errno_t ns8250_dev_add(ddf_dev_t *dev);
@@ -1067,6 +1067,5 @@
  * Configure the parameters of the serial communication.
  */
-static void ns8250_default_handler(chardev_srv_t *srv, cap_call_handle_t chandle,
-    ipc_call_t *call)
+static void ns8250_default_handler(chardev_srv_t *srv, ipc_call_t *call)
 {
 	ns8250_t *ns8250 = srv_ns8250(srv);
@@ -1079,5 +1078,5 @@
 		ns8250_get_props(ns8250->dev, &baud_rate, &parity, &word_length,
 		    &stop_bits);
-		async_answer_4(chandle, EOK, baud_rate, parity, word_length,
+		async_answer_4(call, EOK, baud_rate, parity, word_length,
 		    stop_bits);
 		break;
@@ -1090,17 +1089,17 @@
 		ret = ns8250_set_props(ns8250->dev, baud_rate, parity, word_length,
 		    stop_bits);
-		async_answer_0(chandle, ret);
+		async_answer_0(call, ret);
 		break;
 
 	default:
-		async_answer_0(chandle, ENOTSUP);
-	}
-}
-
-void ns8250_char_conn(cap_call_handle_t icall_handle, ipc_call_t *icall, void *arg)
+		async_answer_0(call, ENOTSUP);
+	}
+}
+
+void ns8250_char_conn(ipc_call_t *icall, void *arg)
 {
 	ns8250_t *ns8250 = fun_ns8250((ddf_fun_t *)arg);
 
-	chardev_conn(icall_handle, icall, &ns8250->cds);
+	chardev_conn(icall, &ns8250->cds);
 }
 
Index: uspace/drv/char/pl050/pl050.c
===================================================================
--- uspace/drv/char/pl050/pl050.c	(revision 18b6a8849d630cc3bca153fb21bd225eebb16f4c)
+++ uspace/drv/char/pl050/pl050.c	(revision a1aecb12e1acd6c228cecd2e91a411a9fb169a0c)
@@ -54,5 +54,5 @@
 static errno_t pl050_fun_online(ddf_fun_t *);
 static errno_t pl050_fun_offline(ddf_fun_t *);
-static void pl050_char_conn(cap_call_handle_t, ipc_call_t *, void *);
+static void pl050_char_conn(ipc_call_t *, void *);
 static errno_t pl050_read(chardev_srv_t *, void *, size_t, size_t *);
 static errno_t pl050_write(chardev_srv_t *, const void *, size_t, size_t *);
@@ -286,9 +286,9 @@
 }
 
-void pl050_char_conn(cap_call_handle_t icall_handle, ipc_call_t *icall, void *arg)
+void pl050_char_conn(ipc_call_t *icall, void *arg)
 {
 	pl050_t *pl050 = pl050_from_fun((ddf_fun_t *)arg);
 
-	chardev_conn(icall_handle, icall, &pl050->cds);
+	chardev_conn(icall, &pl050->cds);
 }
 
Index: uspace/drv/char/ski-con/ski-con.c
===================================================================
--- uspace/drv/char/ski-con/ski-con.c	(revision 18b6a8849d630cc3bca153fb21bd225eebb16f4c)
+++ uspace/drv/char/ski-con/ski-con.c	(revision a1aecb12e1acd6c228cecd2e91a411a9fb169a0c)
@@ -50,5 +50,5 @@
 static errno_t ski_con_fibril(void *arg);
 static int32_t ski_con_getchar(void);
-static void ski_con_connection(cap_call_handle_t, ipc_call_t *, void *);
+static void ski_con_connection(ipc_call_t *, void *);
 
 static errno_t ski_con_read(chardev_srv_t *, void *, size_t, size_t *);
@@ -255,11 +255,10 @@
 
 /** Character device connection handler. */
-static void ski_con_connection(cap_call_handle_t icall_handle, ipc_call_t *icall,
-    void *arg)
+static void ski_con_connection(ipc_call_t *icall, void *arg)
 {
 	ski_con_t *con = (ski_con_t *) ddf_dev_data_get(
 	    ddf_fun_get_dev((ddf_fun_t *) arg));
 
-	chardev_conn(icall_handle, icall, &con->cds);
+	chardev_conn(icall, &con->cds);
 }
 
Index: uspace/drv/char/sun4v-con/sun4v-con.c
===================================================================
--- uspace/drv/char/sun4v-con/sun4v-con.c	(revision 18b6a8849d630cc3bca153fb21bd225eebb16f4c)
+++ uspace/drv/char/sun4v-con/sun4v-con.c	(revision a1aecb12e1acd6c228cecd2e91a411a9fb169a0c)
@@ -42,5 +42,5 @@
 #include "sun4v-con.h"
 
-static void sun4v_con_connection(cap_call_handle_t, ipc_call_t *, void *);
+static void sun4v_con_connection(ipc_call_t *, void *);
 
 #define POLL_INTERVAL  10000
@@ -181,11 +181,10 @@
 
 /** Character device connection handler. */
-static void sun4v_con_connection(cap_call_handle_t icall_handle, ipc_call_t *icall,
-    void *arg)
+static void sun4v_con_connection(ipc_call_t *icall, void *arg)
 {
 	sun4v_con_t *con = (sun4v_con_t *) ddf_dev_data_get(
 	    ddf_fun_get_dev((ddf_fun_t *) arg));
 
-	chardev_conn(icall_handle, icall, &con->cds);
+	chardev_conn(icall, &con->cds);
 }
 
