Index: uspace/lib/drv/generic/remote_usb.c
===================================================================
--- uspace/lib/drv/generic/remote_usb.c	(revision 1c73603779f74d8796f0af67886948b0e680d71d)
+++ uspace/lib/drv/generic/remote_usb.c	(revision 94fbf78519c6a5d5b6009321e986dfa44de82d37)
@@ -42,11 +42,20 @@
 #include "ddf/driver.h"
 
-usb_dev_session_t *usb_dev_connect(ddf_dev_t *parent)
+
+usb_dev_session_t *usb_dev_connect(devman_handle_t handle)
 {
 	// TODO All usb requests are atomic so this is safe,
-	// it will need to change once USING EXCHNAGE PARALLEL is safe with
+	// it will need to change once USING EXCHANGE PARALLEL is safe with
+	// devman_device_connect
+	return devman_device_connect(EXCHANGE_ATOMIC, handle, IPC_FLAG_BLOCKING);
+}
+
+usb_dev_session_t *usb_dev_connect_to_self(ddf_dev_t *dev)
+{
+	// TODO All usb requests are atomic so this is safe,
+	// it will need to change once USING EXCHANGE PARALLEL is safe with
 	// devman_parent_device_connect
 	return devman_parent_device_connect(EXCHANGE_ATOMIC,
-	    ddf_dev_get_handle(parent), IPC_FLAG_BLOCKING);
+	    ddf_dev_get_handle(dev), IPC_FLAG_BLOCKING);
 }
 
Index: uspace/lib/drv/include/usb_iface.h
===================================================================
--- uspace/lib/drv/include/usb_iface.h	(revision 1c73603779f74d8796f0af67886948b0e680d71d)
+++ uspace/lib/drv/include/usb_iface.h	(revision 94fbf78519c6a5d5b6009321e986dfa44de82d37)
@@ -48,5 +48,6 @@
 typedef async_sess_t usb_dev_session_t;
 
-usb_dev_session_t *usb_dev_connect(ddf_dev_t *dev);
+usb_dev_session_t *usb_dev_connect(devman_handle_t);
+usb_dev_session_t *usb_dev_connect_to_self(ddf_dev_t *);
 void usb_dev_session_close(usb_dev_session_t *);
 
Index: uspace/lib/usbdev/src/devdrv.c
===================================================================
--- uspace/lib/usbdev/src/devdrv.c	(revision 1c73603779f74d8796f0af67886948b0e680d71d)
+++ uspace/lib/usbdev/src/devdrv.c	(revision 94fbf78519c6a5d5b6009321e986dfa44de82d37)
@@ -411,5 +411,5 @@
 	usb_dev->pipes = NULL;
 
-	usb_dev->bus_session = usb_dev_connect(ddf_dev);
+	usb_dev->bus_session = usb_dev_connect_to_self(ddf_dev);
 	if (!usb_dev->bus_session) {
 		*errstr_ptr = "device bus session create";
