diff --git a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c index 81ae9f1..48bc121 100644 --- a/drivers/usb/core/usb.c +++ b/drivers/usb/core/usb.c @@ -948,7 +948,8 @@ usb_set_port_feature(dev, i + 1, USB_PORT_FEAT_POWER); USB_HUB_PRINTF("port %d returns %lX\n", i + 1, dev->status); } - mdelay(20); + /* power on is encoded in 2ms increments -> times 2 for the actual delay */ + mdelay(hub->desc.bPwrOn2PwrGood*2); } #define MAX_TRIES 5