Index: uspace/drv/bus/usb/ohci/ohci.c
===================================================================
--- uspace/drv/bus/usb/ohci/ohci.c	(revision 8f68913ffa52d241510b0d7f1fd056b1b456661b)
+++ uspace/drv/bus/usb/ohci/ohci.c	(revision d09791e6fbbcdf536c2a874f7a0fafc853bd0468)
@@ -117,5 +117,4 @@
 	    "Failed to register irq handler: %s.\n", str_error(ret));
 
-
 	/* Try to enable interrupts */
 	bool interrupts = false;
@@ -131,5 +130,6 @@
 	}
 
-	ret = hcd_setup_device(device);
+	/* Initialize generic HCD driver */
+	ret = hcd_setup_device(device, NULL);
 	if (ret != EOK) {
 		unregister_interrupt_handler(device, irq);
@@ -138,5 +138,5 @@
 
 
-// TODO: Undo device_setup_hcd
+// TODO: Undo hcd_setup_device
 #define CHECK_RET_CLEAN_RETURN(ret, message...) \
 if (ret != EOK) { \
@@ -147,11 +147,15 @@
 	hc_t *hc_impl = malloc(sizeof(hc_t));
 	ret = hc_impl ? EOK : ENOMEM;
-	CHECK_RET_CLEAN_RETURN(ret, "Failed to aloocate driver structure.\n");
+	CHECK_RET_CLEAN_RETURN(ret, "Failed to allocate driver structure.\n");
 
+	/* Initialize OHCI HC */
 	ret = hc_init(hc_impl, reg_base, reg_size, interrupts);
 	CHECK_RET_CLEAN_RETURN(ret, "Failed to init hc: %s.\n", str_error(ret));
 
+	/* Connect OHCI to generic HCD */
 	hcd_set_implementation(dev_to_hcd(device), hc_impl,
 	    hc_schedule, ohci_endpoint_init, ohci_endpoint_fini);
+
+	/* HC should be running OK. We can add root hub */
 	ret = hcd_setup_hub(dev_to_hcd(device), &hc_impl->rh.address, device);
 	CHECK_RET_CLEAN_RETURN(ret,
