Index: uspace/drv/bus/usb/ohci/root_hub.c
===================================================================
--- uspace/drv/bus/usb/ohci/root_hub.c	(revision b7c2757f661253d37765c0eb7c0d3f2ca2dea106)
+++ uspace/drv/bus/usb/ohci/root_hub.c	(revision 2a0b1ddebf53e25b76cd79d66aa9304e9f4c4789)
@@ -420,5 +420,5 @@
 /*----------------------------------------------------------------------------*/
 /**
- * Create answer to port status_request.
+ * Create answer to hub status_request.
  *
  * This copies flags in hub status register into the buffer. The format of the
@@ -436,10 +436,8 @@
 	assert(request);
 
-	/* bits, 0,1,16,17 -- TODO: What do they mean?? Why not 0x0303 */
-	const uint32_t mask = 1 | (1 << 1) | (1 << 16) | (1 << 17);
-	const uint32_t data = mask & instance->registers->rh_status;
+	const uint32_t data = instance->registers->rh_status &
+	    (RHS_LPS_FLAG | RHS_LPSC_FLAG | RHS_OCI_FLAG | RHS_OCIC_FLAG);
 	memcpy(request->data_buffer, &data, 4);
 	request->transfered_size = 4;
-
 	return EOK;
 }
