9
0
Fork 0

usb: use ep-specific pwrgood delay

In usb_hub_configure the hub is asked for its descriptor and among other things
its bPwrOn2PwrGood time. In the actual hub_power_on function this information
was not used and a hardcoded value was used instead. For some hubs this delay
is to short. So, use the delay the hub wants.

Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Steffen Trumtrar 2012-08-30 14:30:50 +02:00 committed by Sascha Hauer
parent 738c57eeaa
commit 7212fa7d42
1 changed files with 2 additions and 1 deletions

View File

@ -948,7 +948,8 @@ static void usb_hub_power_on(struct usb_hub_device *hub)
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