Sarah:
Thanks for the prompt response. It unfortunately confirmed what I expected our
situation to be.
I am intrigued by one aspect of your response -- that regarding the nature of
early xHCI driver operation with xHCI 1.0 integrated hosts such as those
produced by Intel. I am wondering in particular if you had any experience with
using the Texas Instruments 73x0 host controllers with your driver, and if
there are any specific issues you can recall using that host device? My
understanding, in fact, was that at least some of the Intel devices actually
supported a USB 2.0-compliant operating mode that allowed them to be used as
USB 2.0 hosts in environments where USB 3.0 support was not (yet) available in
the OS. I currently have an inquiry with TI tech support regarding whether
such an option exists on the 7320 device.
Ultimately, I believe you highlighted the substantive issues with producing a
driver by back-porting from 3.x to 2.6.29. Back-porting even the 2.6.32 driver
to 2.6.29 required not merely additions to the usb/host area (i.e., the new
xhci* files), but modifications to existing usb/core files as well -- and the
ultimate result is spotty operation of USB 2.0 devices on the USB 3.0 ports
(i.e., sometimes they work, sometimes they crash Linux). Meanwhile,
back-porting a 3.x driver to 2.6.29 confronts significant re-factoring changes
in the entire USB source code tree.
Nevertheless, we may well be facing no viable alternative than to attempt just
such a back-port while limiting the changes made outside the drivers/usb/host
scope to the minimum necessary to support the new xHCI host operation. If you
are interested, I'll let you know if such a port proves successful.
Thanks again for taking the time to respond to my inquiry.
Gary Cordelli
Embedded Computer Engineer
Mentor Computer Consulting LLC
the embedded computer company
-Original Message-
From: Sarah Sharp [mailto:sarah.a.sh...@linux.intel.com]
Sent: Friday, September 05, 2014 6:18 PM
To: Gary Cordelli
Cc: linux-usb@vger.kernel.org
Subject: Re: Linux xHCI compartmentalization
On Wed, Sep 03, 2014 at 09:20:28PM +, Gary Cordelli wrote:
Sarah:
Thank you for all the great work you put into providing the xHCI driver for
USB 3.0 host hardware support in Linux.
Alas, I am stuck with an installed base of platforms that run a 2.6.29.6
kernel that has just absorbed a whole mess of hardware using a different SBC
that has a combination of USB 3.0 and USB 2.0 interfaces (where the installed
base has all USB 2.0 interfaces). Ach! After several tweaks to support the
different chipset (GPIO driver, SATA driver, HDA audio driver, and
USB2.0-to-serial), I discovered that we could not do without using at least
one of the USB 3.0 interfaces. In looking at the xHCI driver, however, it
appears that its tentacles may reach deep into the bowels of Linux - at least
looking at recent kernels.
Do you know if there is a kernel release close to the 2.6.29.6 architecture
that you would also consider to include a reasonably stable xHCI
implementation? I have looked at 2.6.32.5 briefly, but was given information
that this experimental xHCI support is not recommended for use. Frankly,
it does not have to be a full-featured implementation (since we are only
trying to reproduce/replace a USB 2.0 capability), but it would hopefully be
a stable implementation (no unexpected crashes). Can you advise?
The xHCI driver wasn't really stable for xHCI 1.0 host controllers (integrated
hosts like Intel) until the 3.0 kernel. I would recommend installing one of
the supported long-term stable kernels like 3.2.
But I really can't help you or support you through backporting those drivers
from the stable kernel to your ancient 2.6.29.6 kernel. There are far too many
changes in the USB core to just do a straight backport of the xHCI driver --
and many of those changes are necessary for full xHCI driver support.
If you're on a vanilla stable kernel, the kernel community will happily help
you debug it. If not, you're on your own.
Gary Cordelli
Embedded Computer Engineer
Mentor Computer Consulting LLC
the embedded computer company
Sarah Sharp
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html