diff options
author | Philipp Tomsich <philipp.tomsich@theobroma-systems.com> | 2017-11-22 19:15:17 +0300 |
---|---|---|
committer | Marek Vasut <marek.vasut+renesas@gmail.com> | 2017-11-26 04:22:36 +0300 |
commit | 883946e8e7c5dacb5e12f18703e20d49a4886f0e (patch) | |
tree | dc763ce48174685b87c9001fff21ff85149f3ba8 /board/ti | |
parent | b3cbcd902db7019410dfe3729a660abcb1f03ffb (diff) | |
download | u-boot-883946e8e7c5dacb5e12f18703e20d49a4886f0e.tar.xz |
usb: hub: identify the hub-device to usb_hub_reset_devices
When usb_hub_reset_devices is called, it should be passed both an
indicator which hub it should operate on and what port number (local
to that hub) should be reset.
Previously, the usb_hub.c code did not include such context and
always started resets from port number 1, performing multiple
reset-requests for the same devices:
/*
* Reset any devices that may be in a bad state when applying
* the power. This is a __weak function. Resetting of the devices
* should occur in the board file of the device.
*/
for (i = 0; i < dev->maxchild; i++)
usb_hub_reset_devices(i + 1);
This adds an additional 'hub' parameter to usb_hub_reset_devices
that provides the context to fully qualify the port-number in.
Existing implementations are changed to accept and ignore the new
parameter.
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Jakob Unterwurzacher <jakob.unterwurzacher@theobroma-systems.com>
Diffstat (limited to 'board/ti')
-rw-r--r-- | board/ti/omap5_uevm/evm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/board/ti/omap5_uevm/evm.c b/board/ti/omap5_uevm/evm.c index 4b25cc2d7c..67242f5cc8 100644 --- a/board/ti/omap5_uevm/evm.c +++ b/board/ti/omap5_uevm/evm.c @@ -249,7 +249,7 @@ int ehci_hcd_stop(void) return omap_ehci_hcd_stop(); } -void usb_hub_reset_devices(int port) +void usb_hub_reset_devices(struct usb_hub_device *hub, int port) { /* The LAN9730 needs to be reset after the port power has been set. */ if (port == 3) { |