Index: uspace/drv/bus/usb/xhci/bus.c
===================================================================
--- uspace/drv/bus/usb/xhci/bus.c	(revision a8435eb5396055dede1ad0911171387c80fbf0bf)
+++ uspace/drv/bus/usb/xhci/bus.c	(revision 0e3e1f68c4339d097fbeffd8e231cb0a8ed91d6e)
@@ -51,5 +51,5 @@
 
 	/** Endpoint */
-	endpoint_t *endpoint;
+	xhci_endpoint_t *endpoint;
 } hashed_endpoint_t;
 
@@ -105,5 +105,5 @@
 		return ENOMEM;
 
-	hashed_ep->endpoint = ep;
+	hashed_ep->endpoint = (xhci_endpoint_t *) ep;
 	hash_table_insert(&bus->endpoints, &hashed_ep->link);
 
@@ -137,5 +137,5 @@
 		return NULL;
 
-	return hashed_ep->endpoint;
+	return (endpoint_t *) hashed_ep->endpoint;
 }
 
@@ -204,5 +204,5 @@
 {
 	hashed_endpoint_t *ep = hash_table_get_inst(item, hashed_endpoint_t, link);
-	return (size_t) ep->endpoint->target.packed;
+	return (size_t) hash_mix32(ep->endpoint->base.target.packed);
 }
 
@@ -215,5 +215,5 @@
 {
 	hashed_endpoint_t *ep = hash_table_get_inst(item, hashed_endpoint_t, link);
-	return ep->endpoint->target.packed == *(uint32_t *) key;
+	return ep->endpoint->base.target.packed == *(uint32_t *) key;
 }
 
