On Tue, 31 Jul 2012, Alan Stern wrote: > "PortIsConnectable" means it's possible for a device to be > connected (either temporarily or permanently). > > "UserVisible" means the user can freely plug and unplug > devices. > > In addition to these ACPI definitions, the USB spec defines > a "DeviceRemovable" flag. The spec doesn't appear to take into account > the possibility of a port which can never have a device plugged in, so > it defines this flag simply to mean that the port doesn't have a > permanently-attached device. > > If we wanted to be thorough, our root-hub hub descriptors would set the > DeviceRemovable flag for those ports where PortIsConnectable is set > and UserVisible is clear. (But of course this only works on ACPI-based > systems.) Typo: I meant to say our descriptors could _clear_ DeviceRemovable for those ports. I suppose we could also clear it when PortIsConnectable is clear. > And your first rule now says that the kernel should turn off power to > any port for which PortIsConnectable and UserVisible are both clear. In fact, it's enough for PortIsConnectable to be clear. The Microsoft document does not allow for the possibility of PortIsConnectable clear and UserVisible set -- that combination would be meaningless. Alan Stern -- 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