diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2012-12-18 14:25:46 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-12 00:16:01 (GMT) |
commit | 8d8479db3dde3ef7a9bc803e565842764fa21a53 (patch) | |
tree | 6c4e2b049c675b62be0fd3d65ae606f367dfb56c /drivers/usb/core/hub.c | |
parent | ece1d77ed73b335319725f1d5ffa72ca3fa9b05c (diff) | |
download | linux-8d8479db3dde3ef7a9bc803e565842764fa21a53.tar.xz |
usb/core: consider link speed while looking at bMaxPower
The USB 2.0 specification says that bMaxPower is the maximum power
consumption expressed in 2 mA units and the USB 3.0 specification says
that it is expressed in 8 mA units.
This patch adds a helper function usb_get_max_power() which computes the
value based on config & usb_device's speed value. The the device descriptor
dump computes the value on its own.
Cc: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/core/hub.c')
-rw-r--r-- | drivers/usb/core/hub.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index ae10862..1291330 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c @@ -4211,7 +4211,7 @@ hub_power_remaining (struct usb_hub *hub) /* Unconfigured devices may not use more than 100mA, * or 8mA for OTG ports */ if (udev->actconfig) - delta = udev->actconfig->desc.bMaxPower * 2; + delta = usb_get_max_power(udev, udev->actconfig); else if (port1 != udev->bus->otg_port || hdev->parent) delta = 100; else |