Date: Tue, 22 Oct 2013 12:22:04 -0700 From: Doug White <dwhite@gumbysoft.com> To: Hans Petter Selasky <hps@bitfrost.no> Cc: sarah.a.sharp@linux.intel.com, freebsd-usb@freebsd.org Subject: Re: xhci on Intel Lynx Point still broke Message-ID: <88AA7F2E-5C4F-416F-8737-35A51FDC7715@gumbysoft.com> In-Reply-To: <5260D409.5070906@bitfrost.no> References: <7CFE54E6-7FD5-40C5-B1FC-BBF46134A6AE@gumbysoft.com> <525F7B60.6030102@bitfrost.no> <F5752726-258A-4744-A6C2-CF998EA7EBDD@gumbysoft.com> <5260D409.5070906@bitfrost.no>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello, I did a build this morning from HEAD with the XHCI change committed the = other day and no change in status. The machine doesn't react at all to = plug/unplug events. I read through the XHCI spec and noticed that it allows MSI-X = configuration but the current driver is MSI-only -- maybe this is = related? vmstat -i might help give an idea: interrupt total rate cpu0:timer 26368 22 irq264: xhci0 1 0 On Oct 17, 2013, at 11:24 PM, Hans Petter Selasky wrote: > On 10/18/13 03:23, Doug White wrote: >>=20 >> On Oct 16, 2013, at 10:53 PM, Hans Petter Selasky wrote: >>=20 >>> Is the problem fixed if you set: >>>=20 >>> hw.usb.xhci.xhci_port_route=3D-1 >>>=20 >>> in /boot/loader.conf >>=20 >> No, no change in (lack of) functionality. >>=20 >> I uploaded these bootverbose-enabled dmesg outputs: >>=20 >> With XHCI Mode =3D Disabled in BIOS (reverts ports to EHCI control): >>=20 >> http://people.freebsd.org/~dwhite/dmesg.xhci_off_in_bios.20131017 >>=20 >> With XHCI Mode =3D Enabled in BIOS and with tunable = hw.usb.xhci.xhci_port_route=3D-1 set: >>=20 >> http://people.freebsd.org/~dwhite/dmesg.xhci_on.with_routing.20131017 >>=20 >>> 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. >>=20 >> 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. >>=20 >=20 > Hi Doug, >=20 > 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. >=20 > I've CC'ed Sarah Sharp @ Intel which is working on the Linux XHCI = driver. >=20 > --HPS >=20 > Hi Sarah! >=20 > 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. >=20 > 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. >=20 >> = http://svnweb.freebsd.org/base/head/sys/dev/usb/controller/xhci.c?r1=3D255= 356&r2=3D255768 >=20 > 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? >=20 > Thank you! >=20 > --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?88AA7F2E-5C4F-416F-8737-35A51FDC7715>