Index: uspace/lib/usbhost/src/iface.c
===================================================================
--- uspace/lib/usbhost/src/iface.c	(revision 1a025171dce783accd2bf90e64bd6ee89ca65990)
+++ uspace/lib/usbhost/src/iface.c	(revision 23b0fe8e5a14774779ca68b936cc950407e553b8)
@@ -78,15 +78,8 @@
 	}
 
-	/* No private data and no private data_dtor, these should be set by
-	 * batch_init_hook*/
+	/* No private data and no private data dtor, these will be set later */
 	usb_transfer_batch_init(batch, ep, data, NULL, size, setup_data,
 	    setup_size, in, out, arg, fun, NULL, NULL);
-	if (hcd->batch_init_hook) {
-		ret = hcd->batch_init_hook(batch);
-		if (ret != EOK)
-			goto out;
-	} else {
-		usb_log_warning("Missing batch_private_data constructor!\n");
-	}
+
 	if (hcd->schedule) {
 		ret = hcd->schedule(hcd, batch);
@@ -204,6 +197,7 @@
 		return ENOMEM;
 	int ret = EOK;
+
 	if (hcd->ep_add_hook) {
-		ret = hcd->ep_add_hook(ep);
+		ret = hcd->ep_add_hook(hcd, ep);
 	}
 	if (ret != EOK) {
