On Fri, 17 Dec 2010, Alessio Sangalli wrote: > On 12/17/2010 07:42 AM, Alan Stern wrote: > > > Anyway, you can force individual root-hub ports to be dedicated to the > > companion controller by using sysfs. For example, let's say you wanted > > port 4 on bus 1 always to run at full or low speed. You would do it > > by: > > > > # echo 4>/sys/bus/usb/devices/usb1/../companion > > Ok the problem is that in earlier versions of the kernel this was > something like: > > /sys/class/usb_host/usb_hostXXX/companion Yes, the USB class interface was changed. > > There is no equivalent operation for ports on a USB hub. The best you > > can do is force the entire hub to run at full speed. > > Is this a "limitation" of the USB stack implementation in Linux or > something "inherent" in the USB protocol? It's not really _inherent_ in the protocol (it could have been added if the designers had decided to do so) but it's not a part of the protocol. > This basically prevents "forcing" a device to full-speed in case I am > using an external hub. Correct. Unless you force the entire hub. > > You can also force the entire high-speed bus over to the companion, by > > Thank you for all the interesting information :) You're welcome. 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