Index: uspace/drv/uhci-hcd/iface.c
===================================================================
--- uspace/drv/uhci-hcd/iface.c	(revision 1998bcd74c2564129f5663487195a7f45d99a7bb)
+++ uspace/drv/uhci-hcd/iface.c	(revision 0ede0c3c7e0db4c1f1ab6c696f7effc16dbfcce6)
@@ -63,4 +63,7 @@
 	}
 
+	usb_log_debug("%s %d:%d %zu(%zu).\n",
+	    name, target.address, target.endpoint, size, ep->max_packet_size);
+
 	const size_t bw = bandwidth_count_usb11(
 	    ep->speed, ep->transfer_type, size, ep->max_packet_size);
@@ -68,73 +71,12 @@
 		usb_log_error("Endpoint(%d:%d) %s needs %zu bw "
 		    "but only %zu is reserved.\n",
-		    name, target.address, target.endpoint, bw, res_bw);
+		    target.address, target.endpoint, name, bw, res_bw);
 		return ENOSPC;
 	}
-	usb_log_debug("%s %d:%d %zu(%zu).\n",
-	    name, target.address, target.endpoint, size, ep->max_packet_size);
-
-//	assert(ep->speed ==
-//	    usb_device_keeper_get_speed(&(*hc)->manager, target.address));
-//	assert(ep->max_packet_size == max_packet_size);
-//	assert(ep->transfer_type == USB_TRANSFER_CONTROL);
-
-	*batch =
-	    batch_get(fun, ep, data, size, setup_data, setup_size,
-		in, out, arg);
-	if (!batch)
+
+	*batch = batch_get(
+	        fun, ep, data, size, setup_data, setup_size, in, out, arg);
+	if (!*batch)
 		return ENOMEM;
-	return EOK;
-}
-
-
-/** Reserve default address interface function
- *
- * @param[in] fun DDF function that was called.
- * @param[in] speed Speed to associate with the new default address.
- * @return Error code.
- */
-static int reserve_default_address(ddf_fun_t *fun, usb_speed_t speed)
-{
-	assert(fun);
-	hc_t *hc = fun_to_hc(fun);
-	assert(hc);
-	usb_log_debug("Default address request with speed %d.\n", speed);
-	usb_device_keeper_reserve_default_address(&hc->manager, speed);
-	return EOK;
-#if 0
-	endpoint_t *ep = malloc(sizeof(endpoint_t));
-	if (ep == NULL)
-		return ENOMEM;
-	const size_t max_packet_size = speed == USB_SPEED_LOW ? 8 : 64;
-	endpoint_init(ep, USB_TRANSFER_CONTROL, speed, max_packet_size);
-	int ret;
-try_retgister:
-	ret = usb_endpoint_manager_register_ep(&hc->ep_manager,
-	    USB_ADDRESS_DEFAULT, 0, USB_DIRECTION_BOTH, ep, endpoint_destroy, 0);
-	if (ret == EEXISTS) {
-		async_usleep(1000);
-		goto try_retgister;
-	}
-	if (ret != EOK) {
-		endpoint_destroy(ep);
-	}
-	return ret;
-#endif
-}
-/*----------------------------------------------------------------------------*/
-/** Release default address interface function
- *
- * @param[in] fun DDF function that was called.
- * @return Error code.
- */
-static int release_default_address(ddf_fun_t *fun)
-{
-	assert(fun);
-	hc_t *hc = fun_to_hc(fun);
-	assert(hc);
-	usb_log_debug("Default address release.\n");
-//	return usb_endpoint_manager_unregister_ep(&hc->ep_manager,
-//	    USB_ADDRESS_DEFAULT, 0, USB_DIRECTION_BOTH);
-	usb_device_keeper_release_default_address(&hc->manager);
 	return EOK;
 }
@@ -205,13 +147,14 @@
 	hc_t *hc = fun_to_hc(fun);
 	assert(hc);
+	const size_t size = max_packet_size;
+	int ret;
 	usb_speed_t speed = usb_device_keeper_get_speed(&hc->manager, address);
 	if (speed >= USB_SPEED_MAX) {
 		speed = ep_speed;
 	}
-	const size_t size =
-	    (transfer_type == USB_TRANSFER_INTERRUPT
-	    || transfer_type == USB_TRANSFER_ISOCHRONOUS) ?
-	    max_packet_size : 0;
-	int ret;
+	usb_log_debug("Register endpoint %d:%d %s %s(%d) %zu(%zu) %u.\n",
+	    address, endpoint, usb_str_transfer_type(transfer_type),
+	    usb_str_speed(speed), direction, size, max_packet_size, interval);
+
 
 	endpoint_t *ep = malloc(sizeof(endpoint_t));
@@ -225,13 +168,7 @@
 	}
 
-	usb_log_debug("Register endpoint %d:%d %s %s(%d) %zu(%zu) %u.\n",
-	    address, endpoint, usb_str_transfer_type(transfer_type),
-	    usb_str_speed(speed), direction, size, max_packet_size, interval);
-
 	ret = usb_endpoint_manager_register_ep(&hc->ep_manager, ep, size);
 	if (ret != EOK) {
 		endpoint_destroy(ep);
-	} else {
-		usb_device_keeper_add_ep(&hc->manager, address, ep);
 	}
 	return ret;
@@ -246,9 +183,4 @@
 	usb_log_debug("Unregister endpoint %d:%d %d.\n",
 	    address, endpoint, direction);
-	endpoint_t *ep = usb_endpoint_manager_get_ep(&hc->ep_manager,
-	    address, endpoint, direction, NULL);
-	if (ep != NULL) {
-		usb_device_keeper_del_ep(&hc->manager, address, ep);
-	}
 	return usb_endpoint_manager_unregister_ep(&hc->ep_manager, address,
 	    endpoint, direction);
@@ -391,5 +323,5 @@
 	if (ret != EOK)
 		return ret;
-	usb_device_keeper_reset_if_need(&hc->manager, target, setup_data);
+	usb_endpoint_manager_reset_if_need(&hc->ep_manager, target, setup_data);
 	batch_control_write(batch);
 	ret = hc_schedule(hc, batch);
@@ -433,6 +365,4 @@
 /*----------------------------------------------------------------------------*/
 usbhc_iface_t hc_iface = {
-	.reserve_default_address = reserve_default_address,
-	.release_default_address = release_default_address,
 	.request_address = request_address,
 	.bind_address = bind_address,
