On Wednesday 19 December 2007, Alan Stern wrote:
> I don't know how the Freescale controller is supposed to work.  
> Apparently it doesn't use a companion controller for full-speed 
> connections.  Maybe it has a Transaction Translator in its root hub 
> instead.

Yes.  ARC originally sold that IP design, then it went to TDI,
and now another company sells the licences.  It doesn't actually
need a TT in the root hub, but that's how it looks to the driver.

What it does is send out full speed (or low speed) signaling
directly from root hub ports, rather than high speed signaling
with special split transaction support.


> If that's the case, then the TT isn't working right.  It could be a 
> problem with the controller hardware or a problem with the driver; I 
> have no idea which.

Near as I can tell it's a combination of things.  The TT scheduler
probably doesn't handle that situation correctly.

But there seems to be a second problem related to correct-but-suboptimal
handling for bandwidth allocation.  Basically, quantization:  scheduling
is split into eight microframes, and a pair of transactions that could
fit into seven of them is treated as if they can't because one takes
just short of six (counted as six) and the other takes just over one
(counted as two) ... which adds up to more than seven, meaning only one
of the transactions gets allowed.

- Dave
 
-
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to