Index: uspace/drv/ohci/hc.c
===================================================================
--- uspace/drv/ohci/hc.c	(revision c8eddf499cb9503863c61d7fe561f7d086184c06)
+++ uspace/drv/ohci/hc.c	(revision f1d166636b968e034c8845b09fee5d34b4fb76f8)
@@ -49,5 +49,4 @@
 static int interrupt_emulator(hc_t *instance);
 static void hc_gain_control(hc_t *instance);
-static void hc_init_hw(hc_t *instance);
 static int hc_init_transfer_lists(hc_t *instance);
 static int hc_init_memory(hc_t *instance);
@@ -121,5 +120,5 @@
 	CHECK_RET_RETURN(ret, "Failed to create OHCI memory structures: %s.\n",
 	    str_error(ret));
-	hc_init_hw(instance);
+//	hc_init_hw(instance);
 	fibril_mutex_initialize(&instance->guard);
 
@@ -375,5 +374,5 @@
 }
 /*----------------------------------------------------------------------------*/
-void hc_init_hw(hc_t *instance)
+void hc_start_hw(hc_t *instance)
 {
 	/* OHCI guide page 42 */
Index: uspace/drv/ohci/hc.h
===================================================================
--- uspace/drv/ohci/hc.h	(revision c8eddf499cb9503863c61d7fe561f7d086184c06)
+++ uspace/drv/ohci/hc.h	(revision f1d166636b968e034c8845b09fee5d34b4fb76f8)
@@ -80,4 +80,6 @@
      uintptr_t regs, size_t reg_size, bool interrupts);
 
+void hc_start_hw(hc_t *instance);
+
 /** Safely dispose host controller internal structures
  *
Index: uspace/drv/ohci/main.c
===================================================================
--- uspace/drv/ohci/main.c	(revision c8eddf499cb9503863c61d7fe561f7d086184c06)
+++ uspace/drv/ohci/main.c	(revision f1d166636b968e034c8845b09fee5d34b4fb76f8)
@@ -93,5 +93,4 @@
 {
 	usb_log_enable(USB_LOG_LEVEL_DEFAULT, NAME);
-	sleep(5);
 	return ddf_driver_main(&ohci_driver);
 }
Index: uspace/drv/ohci/ohci.c
===================================================================
--- uspace/drv/ohci/ohci.c	(revision c8eddf499cb9503863c61d7fe561f7d086184c06)
+++ uspace/drv/ohci/ohci.c	(revision f1d166636b968e034c8845b09fee5d34b4fb76f8)
@@ -152,8 +152,4 @@
 	usb_log_debug("Memory mapped regs at %p (size %zu), IRQ %d.\n",
 	    (void *) mem_reg_base, mem_reg_size, irq);
-
-	ret = pci_disable_legacy(device);
-	CHECK_RET_DEST_FUN_RETURN(ret,
-	    "Failed(%d) to disable legacy USB: %s.\n", ret, str_error(ret));
 
 	bool interrupts = false;
@@ -220,4 +216,5 @@
 	    "Failed(%d) to register OHCI root hub.\n", ret);
 
+	hc_start_hw(&instance->hc);
 	return EOK;
 #undef CHECK_RET_FINI_RETURN
Index: uspace/drv/ohci/pci.c
===================================================================
--- uspace/drv/ohci/pci.c	(revision c8eddf499cb9503863c61d7fe561f7d086184c06)
+++ uspace/drv/ohci/pci.c	(revision f1d166636b968e034c8845b09fee5d34b4fb76f8)
@@ -136,16 +136,4 @@
 	return enabled ? EOK : EIO;
 }
-/*----------------------------------------------------------------------------*/
-/** Implements BIOS handoff routine as decribed in OHCI spec
- *
- * @param[in] device Device asking for interrupts
- * @return Error code.
- */
-int pci_disable_legacy(ddf_dev_t *device)
-{
-	/* TODO: implement */
-	return EOK;
-}
-/*----------------------------------------------------------------------------*/
 /**
  * @}
