On Sun, 30 Jul 2006 12:07:06 +0200, Erwin Rol <mailinglists(a)erwinrol.com> wrote:
On Sat, 2006-07-29 at 17:55 -0700, Pete Zaitcev wrote:
[...] apparently has some configuration options that
make it possible to make highspeed transactions out of full/low speed
transactions.
It is called "Transaction Translator" and is a feature of all hubs
now on the market, although strictly speaking it's optional.
My comment referred to translation of Isochronous transactions
specifically. We know that Interrupt, Control, and Bulk are
translated because the mouse works (I suppose your "apparently"
referred to that).
so when a downstream port is full speed the upstream port
will use highspeed transactions, that way all 4 downstream ports can
have a full 12Mbit/s bandwidth.
The performance advantage is a nice side effect, but more importanly
you cannot connect Low- and Full- speed devices to High-speed bus
without a hub translating transactions for you.
A second configuration is that the
upstream transaction also will be full speed and than the 4 ports have
to share the 12Mbit/s upstream. To be honest i don't know what setting
the hub is in, but maybe trying the other setting would fix the
problem.
It's not a "setting", and you know what the upstream port speed is
from reading /proc/bus/usb/devices.
Does Linux have any infrastructure to changes settings of HUB's
like
this ?
There are no "settings". In theory it may be possible to tell ehci-hcd
to unbind from a certain port, and then bind its companion there, thus
forcing the Full-speed operation. But to the best of my knowledge,
we do not have any /sys files or other interface to effect such change.
-- Pete