[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH V6 3/7] libxl: add pvusb API



On 09/11/2015 04:09 PM, Ian Campbell wrote:
On Fri, 2015-09-11 at 15:55 +0200, Juergen Gross wrote:
On 09/11/2015 03:26 PM, Ian Campbell wrote:
On Thu, 2015-09-10 at 23:42 -0600, Chun Yan Liu wrote:

Do these fields have any particular size requirements arising from
e.g. the
USB spec or from possible dom0 implementations?

If they have a well defined fixed size from a USB spec then maybe
we
could
use the appropriate fixed size types?

Di> dn't see the size limitation. In Linux kernel code, busnum and
devnum (here
'hostbus, hostaddr') are both 'int' type.

Is that a Linux-specific implementation detail or a fundamental
property of
USB? We should be designing the interface around Linux implementation
details. It seems like something in the USB spec ought to define
precisely
the number of bits in both a bus number and a device address within
that
bus.

The USB spec is only about _the_ bus. How many buses a host can
operate and how they are numbered is outside the USB spec.

Devices are addressed via their ports in the USB protocol. devnum
is a unique index for a device on the bus, the USB protocol equivalent
is a list of ports of:
- 1 member in case of direct attached devices
- multiple members in case of hubs between bus and device

Thanks for the info. So an "address" in the USB protocol is actually a
"path" and "hostbus" is an implementation dependent shorthand for all but
the last link in that path.

I'm not sure in which direction you are looking. "address" is a path.
A path is normally a list of ports starting at the host and walking
through all hubs until you reach the device. The "bus" is the root
of that path. So the number of buses the host knows of is the number
of USB host adapters without any hub.

What is the size of each element in the chain, that would seem to be the
correct size of "hostaddr".

One bus can have up to 31 ports. In theory I think up to 7 cascaded
hubs are possible, but I don't think the resulting theoretical maximum
of about 1 trillion devices on a bus is to be considered. :-)


Juergen

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.