This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] USB virt 2.6 port status

Progress this week:

The 2.6 front end loads, discovers the 2.4 back-end, installs a USB hcd
device, Linux turns on power to the virtual port, resets it and
discovers the attached device.

Linux sends the first URB.  The behaviour of the Linux USB hub driver
has changed since 2.4.  Where previously it would send a set address
request first it now starts with a get descriptor request.

This get descriptor request currently fails against my USB disgo key,
the hub driver tries to reset the port which isn't supported by the 2.4
back end and no further progress is made.

Some debugging showed that the existing Xen usbif inter-domain protocol
was passing the URB transfer-flags as defined in the usb.h header file
and the definition of the bits in these flags has changed between 2.4
and 2.6 such that the values passed by the 2.6 kernel are incorrect when
interpreted by the 2.4 kernel.

I need to fix the xen usbif protocol so the parameters passed are
expressed independent of the linux kernel headers.

I put in a quick hack for this and re-ran the test but the initial urb
still failed.

I'm not sure whether there are still 2.4/2.6 incompatibilities to fix in
the inter-domain protocol or if the disgo key simply can't cope with the
get descriptor request in which case explicitly handling the get
descritor request in the back-end or implementing resets in the back-end
to allow the front-end to pursue its retry strategy might be the next

More debugging is required.

I'm on vacation for a week now and will resume working on this when I

SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>