Index: uspace/lib/usbdev/include/usb/dev/driver.h
===================================================================
--- uspace/lib/usbdev/include/usb/dev/driver.h	(revision 9e79a2f925c4a421cd998d57f96bba562c9d640d)
+++ uspace/lib/usbdev/include/usb/dev/driver.h	(revision 6785b538d1d589cbbed2c1fbe3c6dc068f7c0a05)
@@ -171,4 +171,5 @@
 
 const char* usb_device_get_name(usb_device_t *);
+ddf_fun_t *usb_device_ddf_fun_create(usb_device_t *, fun_type_t, const char *);
 
 async_exch_t * usb_device_bus_exchange_begin(usb_device_t *);
Index: uspace/lib/usbdev/include/usb/dev/recognise.h
===================================================================
--- uspace/lib/usbdev/include/usb/dev/recognise.h	(revision 9e79a2f925c4a421cd998d57f96bba562c9d640d)
+++ uspace/lib/usbdev/include/usb/dev/recognise.h	(revision 6785b538d1d589cbbed2c1fbe3c6dc068f7c0a05)
@@ -37,8 +37,6 @@
 #define LIBUSBDEV_RECOGNISE_H_
 
-#include <sys/types.h>
 #include <usb/usb.h>
 #include <usb/dev/pipes.h>
-#include <ipc/devman.h>
 
 extern int usb_device_create_match_ids_from_device_descriptor(
@@ -50,8 +48,4 @@
 
 extern int usb_device_create_match_ids(usb_pipe_t *, match_id_list_t *);
-
-extern int usb_device_register_child_in_devman(usb_pipe_t *ctrl_pipe,
-    ddf_dev_t *, ddf_fun_t **);
-
 #endif
 
Index: uspace/lib/usbdev/include/usb/dev/request.h
===================================================================
--- uspace/lib/usbdev/include/usb/dev/request.h	(revision 9e79a2f925c4a421cd998d57f96bba562c9d640d)
+++ uspace/lib/usbdev/include/usb/dev/request.h	(revision 6785b538d1d589cbbed2c1fbe3c6dc068f7c0a05)
@@ -75,4 +75,5 @@
 int usb_request_get_configuration(usb_pipe_t *, uint8_t *);
 int usb_request_set_configuration(usb_pipe_t *, uint8_t);
+
 int usb_request_get_interface(usb_pipe_t *, uint8_t, uint8_t *);
 int usb_request_set_interface(usb_pipe_t *, uint8_t, uint8_t);
Index: uspace/lib/usbdev/src/devdrv.c
===================================================================
--- uspace/lib/usbdev/src/devdrv.c	(revision 9e79a2f925c4a421cd998d57f96bba562c9d640d)
+++ uspace/lib/usbdev/src/devdrv.c	(revision 6785b538d1d589cbbed2c1fbe3c6dc068f7c0a05)
@@ -543,4 +543,13 @@
 }
 
+ddf_fun_t *usb_device_ddf_fun_create(usb_device_t *usb_dev, fun_type_t ftype,
+    const char* name)
+{
+	assert(usb_dev);
+	if (usb_dev->ddf_dev)
+		return ddf_fun_create(usb_dev->ddf_dev, ftype, name);
+	return NULL;
+}
+
 async_exch_t * usb_device_bus_exchange_begin(usb_device_t *usb_dev)
 {
