On 15.07.2015 14:54, Jean-Francois SIMON wrote:
Hi,
We have designed a h/w system with the Renesas USB 3.0 upd7202 controller.
We are seeing that sometimes xhci initialization fails with a can't
setup error message.
As a result lsusb doesn't report the USB3.0 ports.
Adding traces to the kernel we could see that this is happening in
xhci_reset() -- xhci_handshake() sequence, where xhci_handshake exits
in time out. (I tried to increase the time out value by 10 times..it
didn't help)
Does changing the delay time in the busyloop make a difference?
Just thinking that as you have some complicated pci setup and try to
read a pci register in a busyloop every microsecond it could cause issues.
something like:
@@ -71,8 +71,8 @@ int xhci_handshake(void __iomem *ptr, u32 mask, u32 done, int
usec)
result = mask;
if (result == done)
return 0;
- udelay(1);
- usec--;
+ udelay(10);
+ usec -= 10;
I also see that there are some bus auto-suspend messages, do you have the patch
that
prevents suspend while xhci is in between loading usb2 and usb3 buses:
commit bcffae7708eb8352f44dc510b326541fe43a02a4
xhci: Prevent runtime pm from autosuspending during initialization
-Mathias
--
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