Index: uspace/drv/bus/usb/usbhub/usbhub.c
===================================================================
--- uspace/drv/bus/usb/usbhub/usbhub.c	(revision bb70637e6f264ca63d4815cb32855324cc5fa275)
+++ uspace/drv/bus/usb/usbhub/usbhub.c	(revision 8b68bdfef6c3f6dfcee87b4f33a9f87f225f827d)
@@ -359,5 +359,5 @@
 	/* Get number of possible configurations from device descriptor */
 	const size_t configuration_count =
-	    usb_device->descriptors.device.configuration_count;
+	    usb_device_get_device_descriptor(usb_device)->configuration_count;
 	usb_log_debug("Hub has %zu configurations.\n", configuration_count);
 
@@ -367,6 +367,10 @@
 	}
 
-	if (usb_device->descriptors.configuration_size
-	    < sizeof(usb_standard_configuration_descriptor_t)) {
+	// TODO: Make sure that the cast is correct
+	size_t config_size = 0;
+	const usb_standard_configuration_descriptor_t *config_descriptor =
+	    usb_device_get_configuration_descriptor(usb_device, &config_size);
+
+	if (config_size < sizeof(usb_standard_configuration_descriptor_t)) {
 	    usb_log_error("Configuration descriptor is not big enough"
 	        " to fit standard configuration descriptor.\n");
@@ -374,8 +378,4 @@
 	}
 
-	// TODO: Make sure that the cast is correct
-	const usb_standard_configuration_descriptor_t *config_descriptor
-	    = (usb_standard_configuration_descriptor_t *)
-	    usb_device->descriptors.configuration;
 
 	/* Set configuration. Use the configuration that was in
