Date: Fri, 18 Oct 2013 08:24:09 +0200 From: Hans Petter Selasky <hps@bitfrost.no> To: Doug White <dwhite@gumbysoft.com> Cc: sarah.a.sharp@linux.intel.com, freebsd-usb@freebsd.org Subject: Re: xhci on Intel Lynx Point still broke Message-ID: <5260D409.5070906@bitfrost.no> In-Reply-To: <F5752726-258A-4744-A6C2-CF998EA7EBDD@gumbysoft.com> References: <7CFE54E6-7FD5-40C5-B1FC-BBF46134A6AE@gumbysoft.com> <525F7B60.6030102@bitfrost.no> <F5752726-258A-4744-A6C2-CF998EA7EBDD@gumbysoft.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/18/13 03:23, Doug White wrote: > > On Oct 16, 2013, at 10:53 PM, Hans Petter Selasky wrote: > >> Is the problem fixed if you set: >> >> hw.usb.xhci.xhci_port_route=-1 >> >> in /boot/loader.conf > > No, no change in (lack of) functionality. > > I uploaded these bootverbose-enabled dmesg outputs: > > With XHCI Mode = Disabled in BIOS (reverts ports to EHCI control): > > http://people.freebsd.org/~dwhite/dmesg.xhci_off_in_bios.20131017 > > With XHCI Mode = Enabled in BIOS and with tunable hw.usb.xhci.xhci_port_route=-1 set: > > http://people.freebsd.org/~dwhite/dmesg.xhci_on.with_routing.20131017 > >> XHCI is a more high-level controller, and I suspect that the makers have added some propritary glue to switch ports back and forth between XHCI and EHCI which is not documented anywhere. > > On the first board (X10SLM-F), XHCI Mode is a BIOS setting and affects all USB ports. I haven't experimented with settings on the Atom yet. The Atom uses a Renesas chip for its USB ports, though, and no USB from the SoC itself, that I can tell. > Hi Doug, It looks like the XHCI controller is not getting any port events, like it should. Basically the XHCI controller you've got does not behave like I would expect, according to the XHCI specification from INTEL. I've CC'ed Sarah Sharp @ Intel which is working on the Linux XHCI driver. --HPS Hi Sarah! We FreeBSD guys have seen several oddities regarding the Lynx Point Intel based controllers, and would like to know if some additional datasheets exist regarding how ports switch actually works. The last issue on the block was that the Lynx Point's returned a invalid parameter error on the set address command which configures the device context (no set address sent), if a USB device was plugged into the XHCI controller, and the port routing was enabled. If the command was issued when no USB device was plugged in by faking a port connection status change, then it would succeed. > http://svnweb.freebsd.org/base/head/sys/dev/usb/controller/xhci.c?r1=255356&r2=255768 I'm sorry to say I fear this extra magic about the port routing for Lynx Points is not working like expected. Sarah, do you have any more clues for us FreeBSD USB guys? Thank you! --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5260D409.5070906>