On 12/05/2012 09:48 PM, Alan Stern wrote:
On Wed, 5 Dec 2012, Sebastian Andrzej Siewior wrote:
Sarah pointed out that the USB3.0 spec also updates the amount of power
that may be consumed by the device and quoted 9.2.5.1:
|"The amount of current draw for SuperSpeed devices are increased to 150
|mA for low-power devices and 900 mA for high-power"
This patch tries to update all users to use the larger values for
SuperSpeed devices and use the "old" ones for everything else.
While here, two other changes suggested by Alan:
- the comment referering to 7.2.1.1 has been updated to 7.2.1 which is
the correct source of the action.
- the check for hubs with zero ports has been removed.
@@ -4145,16 +4154,21 @@ hub_power_remaining (struct usb_hub *hub)
for (port1 = 1; port1<= hdev->maxchild; ++port1) {
struct usb_device *udev = hub->ports[port1 - 1]->child;
int delta;
+ unsigned unit_load;
if (!udev)
continue;
+ if (hub_is_superspeed(udev))
+ unit_load = 150;
+ else
+ unit_load = 100;
/* Unconfigured devices may not use more than 100mA,
* or 8mA for OTG ports */
This comment should be updated too (one unit load instead of 100mA).
Updated.
BTW, does OTG support SuperSpeed?
There is a document called "On-The-Go and Embedded Host Supplement to
the USB Revision 3.0 Specification Revision 1.1". It says in chapter 3.0:
|3 Electrical characteristics
|All SuperSpeed capable EH and OTG products shall comply with both
|[OTG&EH2.0] and [USB3.0] electrical requirements.
So I think the 8mA apply here as well.
Alan Stern
Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html