diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c index 78609d3026256..1e3e21139d830 100644 --- a/drivers/usb/core/config.c +++ b/drivers/usb/core/config.c @@ -722,6 +722,10 @@ int usb_get_configuration(struct usb_device *dev) result = -ENOMEM; goto err; } + + if (dev->quirks & USB_QUIRK_DELAY_INIT) + msleep(100); + result = usb_get_descriptor(dev, USB_DT_CONFIG, cfgno, bigbuffer, length); if (result < 0) {