Re: Mouse works with eHCI, fails with xHCI - can't set config #1, error -110

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 10 Apr 2015, Alistair Grant wrote:

> Hi Alan,
> 
> Thanks very much for your assistance.
> 
> On Fri, Apr 10, 2015 at 5:29 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> > On Fri, 10 Apr 2015, Alistair Grant wrote:
> > ...
> >> i.e. the mouse works reliably in eHCI controllers, but not in xHCI
> >> controllers (I've tried two different Intel xHCI controllers).  The
> >
> > Have you tried testing a different mouse?
> 
> I've got two other mice that work(ed) with xHCI (the first has died,
> which led to buying the one with the problems, and a second one which
> was purchased to tide me over while I try and figure out the problem
> with the problem mouse).

It does sound as though the mouse is the major part of the problem.

> > Can you post the usbmon log for an EHCI controller?  Comparing the two
> > logs may be helpful.

Here's the relevant part of the xHCI trace:

> ffff88017912d600 1598886123 S Ci:1:014:0 s 80 06 0302 0409 0002 2 <
> ffff88017912d600 1598886469 C Ci:1:014:0 0 2 = 1803

When asked for the length of the Product string descriptor, the mouse
says it is 24 bytes.

> ffff88017912d600 1598886486 S Ci:1:014:0 s 80 06 0302 0409 0018 24 <
> ffff88017912d600 1598887112 C Ci:1:014:0 -32 0

When asked for the first 24 bytes of the string descriptor, there is no
data and the endpoint is halted.

> ffff88017912d600 1598887121 S Ci:1:014:0 s 80 06 0302 0409 0018 24 <
> ffff88017912d600 1603885049 C Ci:1:014:0 -2 0

When asked again, there is no reply at all and the transfer times out 
after 5 seconds.  At this point it appears that the mouse's firmware 
has crashed.

Here's the corresponding part of the EHCI trace:

> ffff88014a1bfd80 3642762459 S Ci:3:007:0 s 80 06 0302 0409 0002 2 <
> ffff88014a1bfd80 3642763176 C Ci:3:007:0 0 2 = 1803

When asked for the length of the Product string descriptor, the mouse
says it is 24 bytes.

> ffff88014a1bfd80 3642763195 S Ci:3:007:0 s 80 06 0302 0409 0018 24 <
> ffff88014a1bfd80 3642763916 C Ci:3:007:0 -32 15 = 18034c00 61007300
> 65007200 200030

When asked for the first 24 bytes of the string descriptor, the mouse
sends only 15 bytes of data and then halts the endpoint.  That is most
definitely a bug in the mouse.  The received data says "Laser 0", for
whatever that's worth.

> ffff88014a1bfd80 3642763934 S Ci:3:007:0 s 80 06 0302 0409 0018 24 <
> ffff88014a1bfd80 3642764917 C Ci:3:007:0 -32 15 = 18034c00 61007300
> 65007200 200030

When asked again, the mouse gives the same response.  At least the 
firmware didn't crash.

Comparing these two results suggests that the mouse did send 15 bytes
of data to the xHCI controller, but for some reason the xhci-hcd driver
did not report it.  Perhaps the controller then failed to complete the
transfer somehow.  That may have confused the mouse's firmware and
caused it to hang.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux