USB slow when two devices connected

Aldo Foot lunixer at gmail.com
Tue Sep 2 22:02:11 UTC 2008


On Tue, Sep 2, 2008 at 1:18 PM, Chris Tyler <chris at tylers.info> wrote:
>
> On Tue, 2008-09-02 at 13:26 -0600, Phil Meyer wrote:
>> All that, to say this:  a single slow USB device on a controller will
>> cause the controller to drop to slow (USB 1.1) mode.   Not just a single
>> port drops, the whole controller drops.
>
> Slightly expanded:
>
> (a) USB 1.1 vs. USB 2.0 isn't directly related to speed -- USB 1.1
> supports low (1.5 Mbps) and full (12 Mbps) speeds; USB 2.0 adds support
> for high (480 Mbps) speed. USB 2.0 devices don't *have* to operate at
> full speed, though -- e.g., a true USB 2.0-certified keyboard is still
> going to send your scancodes to the host at low speed.
>
> (b) Using a low- or full-speed device doesn't force that controller
> (actually pair of controllers - EHCI+UHCI) into a low- or full-speed
> mode -- low-/full- and high-speed connections can be interleaved.
> However, USB is a shared bus, and use of the bus is scheduled in time
> slices, so as an example transferring 8 Mbps at full speed (plus control
> overhead) will use the bus just over 2/3rd of the time, reducing the
> time available for full speed transfers to less than 1/3 (<160 Mbps),
> yielding a total throughput of under 168 Mbps. This can be alleviated by
> using a hub with a transaction translator, which will buffer low- or
> full-speed transfers and send them in bursts to the host at high speed
> (and vice versa for data coming from the host) to mitigate the impact of
> the low- and full-speed devices on the high-speed ones.
>
>
>> This problem used to be very problematic when most USB mice and
>> keyboards were USB 1.1
>>
>> Now days, all USB devices should say 2.0 on them somewhere.
>
> Even a Certified USB 2.0 mouse will operate at low speed (I haven't seen
> any 480 Mbps mice!). For example, from /proc/bus/usb/devices on my
> desktop:
>
>        T:  Bus=01 Lev=02 Prnt=03 Port=02 Cnt=03 Dev#=  9 Spd=1.5 MxCh= 0
>        D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
>        P:  Vendor=046d ProdID=c00e Rev=11.10
>        S:  Manufacturer=Logitech
>        S:  Product=USB-PS/2 Optical Mouse
>        C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA
>        I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=02 Driver=usbhid
>        E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=10ms
>
> Note the "Ver= 2.00" in the D: line (USB version 2.0), but "Spd=1.5" in
> the T: line (low speed, 1.5 Mbps).
>
> -Chris

Checking on the speed was interesting. The /proc/bus/usb/devices shows
that both devices rut at 480Mbps.
It appear the the usb stick is having a problem from too many read/writes.
It's been a while since I've been using.

FROM DVDRW
T:  Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 10 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=054c ProdID=02d1 Rev= 0.00
S:  Manufacturer=Sony
S:  Product=DRX-830U

FROM MEMORY STICK
T:  Bus=01 Lev=01 Prnt=01 Port=05 Cnt=02 Dev#= 11 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0457 ProdID=0151 Rev= 1.00
S:  Product=USB Mass Storage Device


thanks for the enlightenment
~af




More information about the fedora-list mailing list