Index: uspace/drv/bus/usb/xhci/hc.c
===================================================================
--- uspace/drv/bus/usb/xhci/hc.c	(revision 56257bacb801bcdf1177e596773f80cf4e253e5d)
+++ uspace/drv/bus/usb/xhci/hc.c	(revision 63431db22d38ba4867125d47d6fc3180e8026b8b)
@@ -215,5 +215,5 @@
 		goto err_cmd;
 
-	if ((err = xhci_rh_init(&hc->rh, hc, device)))
+	if ((err = xhci_rh_init(&hc->rh, hc)))
 		goto err_bus;
 
Index: uspace/drv/bus/usb/xhci/rh.c
===================================================================
--- uspace/drv/bus/usb/xhci/rh.c	(revision 56257bacb801bcdf1177e596773f80cf4e253e5d)
+++ uspace/drv/bus/usb/xhci/rh.c	(revision 63431db22d38ba4867125d47d6fc3180e8026b8b)
@@ -61,5 +61,5 @@
 	XHCI_REG_MASK(XHCI_PORT_CEC);
 
-int xhci_rh_init(xhci_rh_t *rh, xhci_hc_t *hc, ddf_dev_t *device)
+int xhci_rh_init(xhci_rh_t *rh, xhci_hc_t *hc)
 {
 	assert(rh);
@@ -69,5 +69,4 @@
 	rh->max_ports = XHCI_REG_RD(hc->cap_regs, XHCI_CAP_MAX_PORTS);
 	rh->devices_by_port = (xhci_device_t **) calloc(rh->max_ports, sizeof(xhci_device_t *));
-	rh->hc_device = device;
 
 	const int err = bus_device_init(&rh->device.base, &rh->hc->bus.base);
@@ -88,5 +87,4 @@
 	int err;
 	assert(rh);
-	assert(rh->hc_device);
 
 	assert(rh->devices_by_port[port_id - 1] == NULL);
@@ -353,9 +351,6 @@
 int xhci_rh_fini(xhci_rh_t *rh)
 {
-	/* TODO: Implement me! */
-	usb_log_debug2("Called xhci_rh_fini().");
-
+	assert(rh);
 	free(rh->devices_by_port);
-
 	return EOK;
 }
Index: uspace/drv/bus/usb/xhci/rh.h
===================================================================
--- uspace/drv/bus/usb/xhci/rh.h	(revision 56257bacb801bcdf1177e596773f80cf4e253e5d)
+++ uspace/drv/bus/usb/xhci/rh.h	(revision 63431db22d38ba4867125d47d6fc3180e8026b8b)
@@ -67,7 +67,4 @@
 	xhci_device_t device;
 
-	/* We need this to attach children to */
-	ddf_dev_t *hc_device;
-
 	/** Interrupt transfer waiting for an actual interrupt to occur */
 	usb_transfer_batch_t *unfinished_interrupt_transfer;
@@ -80,5 +77,5 @@
 } xhci_rh_t;
 
-int xhci_rh_init(xhci_rh_t *, xhci_hc_t *, ddf_dev_t *);
+int xhci_rh_init(xhci_rh_t *, xhci_hc_t *);
 int xhci_rh_fini(xhci_rh_t *);
 const xhci_port_speed_t *xhci_rh_get_port_speed(xhci_rh_t *, uint8_t);
