On Mon, Apr 13, 2015 at 04:24:50PM -0400, Alan Stern wrote:
> On Mon, 13 Apr 2015, Mathias Nyman wrote:
> 
> > Another difference between EHCI and xHCI iss that xHCI needs to reset (the 
> > host side)
> > of a control endpoint if it stalled.  
> > 
> > From xHCI 1.0 4.8.3:
> > 
> > "A STALL detected on any stage (Setup, Data, or Status) of a Default 
> > Control Endpoint request
> > shall transition the Endpoint Context to the Halted state. A Default 
> > Control Endpoint STALL
> > condition is cleared by a Reset Endpoint Command which transitions the 
> > endpoint from the Halted
> > to the Stopped state. The Default Control Endpoint shall return to the 
> > Running state when the
> > Doorbell is rung for the next Setup Stage TD sent to the endpoint.
> > ection 8.5.3.4 of the USB2 spec and section 8.12.2.3 of the USB3 spec state 
> > of Control pipes,
> > ?Unlike the case of a functional stall, protocol stall does not indicate an 
> > error with the device.? The
> > xHC treats a functional stall and protocol stall identically, by Halting 
> > the endpoint and requiring
> > software to clear the condition by issuing a Reset Endpoint Command."
> 
> That sounds like something the xhci-hcd driver needs to do
> automatically.  Higher-level drivers all assume that a protocol stall
> does not need to be cleared.


Hi Mathias and Alan,

As Mathias requested, I've included the usbmon output with the patch
applied.

It didn't make any difference to the end result, the mouse still fails
to initialise correctly (no real surprise, I think), but is getting the
same string that Alan reported earlier ("Laser 0").  I've also included
the relevant lines from syslog below. (I also have a pcap file
captured with tshark if anyone is interested).

As always, thanks for your help,
Alistair

usbmon output:

ffff8800bc095180 590743316 C Ii:1:001:1 0:2048 2 = 0400
ffff8800bc095180 590743354 S Ii:1:001:1 -115:2048 4 <
ffff880024c51b40 590743380 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590743399 C Ci:1:001:0 0 4 = 01030100
ffff880024c51b40 590743408 S Co:1:001:0 s 23 01 0010 0002 0000 0
ffff880024c51b40 590743417 C Co:1:001:0 0 0
ffff880024c51b40 590743423 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590743431 C Ci:1:001:0 0 4 = 01030000
ffff880024c51b40 590773073 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590773106 C Ci:1:001:0 0 4 = 01030000
ffff880024c51b40 590805052 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590805089 C Ci:1:001:0 0 4 = 01030000
ffff880024c51b40 590837037 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590837077 C Ci:1:001:0 0 4 = 01030000
ffff880024c51b40 590869051 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590869079 C Ci:1:001:0 0 4 = 01030000
ffff880024c51b40 590869151 S Co:1:001:0 s 23 03 0004 0002 0000 0
ffff880024c51b40 590869176 C Co:1:001:0 0 0
ffff880024c51b40 590925077 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 590925113 C Ci:1:001:0 0 4 = 03031000
ffff880024c51b40 590981102 S Co:1:001:0 s 23 01 0014 0002 0000 0
ffff880024c51b40 590981134 C Co:1:001:0 0 0
ffff880024c51b40 590981217 S Ci:1:000:0 s 80 06 0100 0000 0040 64 <
ffff880024c51b40 590981978 C Ci:1:000:0 0 18 = 12011001 00000008 58043a00 
00000102 0001
ffff880024c51b40 590982014 S Co:1:001:0 s 23 03 0004 0002 0000 0
ffff880024c51b40 590982031 C Co:1:001:0 0 0
ffff880024c51b40 591037084 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 591037110 C Ci:1:001:0 0 4 = 11030000
ffff880024c51b40 591093083 S Ci:1:001:0 s a3 00 0000 0002 0004 4 <
ffff880024c51b40 591093108 C Ci:1:001:0 0 4 = 03031000
ffff880024c51b40 591149105 S Co:1:001:0 s 23 01 0014 0002 0000 0
ffff880024c51b40 591149128 C Co:1:001:0 0 0
ffff880024c51b40 591165056 S Ci:1:006:0 s 80 06 0100 0000 0012 18 <
ffff880024c51b40 591165918 C Ci:1:006:0 0 18 = 12011001 00000008 58043a00 
00000102 0001
ffff880024c51b40 591165954 S Ci:1:006:0 s 80 06 0200 0000 0009 9 <
ffff880024c51b40 591166545 C Ci:1:006:0 0 9 = 09022200 010100a0 32
ffff880024c51b40 591166579 S Ci:1:006:0 s 80 06 0200 0000 0022 34 <
ffff880024c51b40 591167857 C Ci:1:006:0 0 34 = 09022200 010100a0 32090400 
00010301 02000921 10010001 22340007 05810304
ffff880024c51b40 591167895 S Ci:1:006:0 s 80 06 0300 0000 00ff 255 <
ffff880024c51b40 591168392 C Ci:1:006:0 0 4 = 04030904
ffff880024c51b40 591168422 S Ci:1:006:0 s 80 06 0302 0409 00ff 255 <
ffff880024c51b40 591169070 C Ci:1:006:0 -32 15 = 18034c00 61007300 65007200 
200030
ffff880024c51b40 591169098 S Ci:1:006:0 s 80 06 0302 0409 00ff 255 <
ffff880024c51b40 591169854 C Ci:1:006:0 -32 15 = 18034c00 61007300 65007200 
200030
ffff880024c51b40 591169884 S Ci:1:006:0 s 80 06 0302 0409 00ff 255 <
ffff880024c51b40 591170684 C Ci:1:006:0 -32 15 = 18034c00 61007300 65007200 
200030
ffff880024c51b40 591170702 S Ci:1:006:0 s 80 06 0302 0409 0002 2 <
ffff880024c51b40 591171025 C Ci:1:006:0 0 2 = 1803
ffff880024c51b40 591171037 S Ci:1:006:0 s 80 06 0302 0409 0018 24 <
ffff880024c51b40 591171668 C Ci:1:006:0 -32 15 = 18034c00 61007300 65007200 
200030
ffff880024c51b40 591171679 S Ci:1:006:0 s 80 06 0302 0409 0018 24 <
ffff880024c51b40 591172455 C Ci:1:006:0 -32 15 = 18034c00 61007300 65007200 
200030
ffff880024c51b40 591172466 S Ci:1:006:0 s 80 06 0302 0409 0018 24 <
ffff880024c51b40 596169148 C Ci:1:006:0 -2 0
ffff880024c51b40 596169186 S Ci:1:006:0 s 80 06 0301 0409 00ff 255 <
ffff880024c51b40 601169206 C Ci:1:006:0 -2 0
ffff880024c51b40 601169251 S Ci:1:006:0 s 80 06 0301 0409 0002 2 <
ffff880024c51b40 606169209 C Ci:1:006:0 -2 0
ffff880024c51a80 606169719 S Co:1:006:0 s 00 09 0001 0000 0000 0
ffff880024c51a80 611169190 C Co:1:006:0 -2 0



syslog:

Apr 14 09:31:26 alistair-XPS13 kernel: [ 6725.026413] usb 1-2: new low-speed 
USB device number 6 using xhci_hcd
Apr 14 09:31:42 alistair-XPS13 kernel: [ 6740.205918] usb 1-2: New USB device 
found, idVendor=0458, idProduct=003a
Apr 14 09:31:42 alistair-XPS13 kernel: [ 6740.205928] usb 1-2: New USB device 
strings: Mfr=1, Product=2, SerialNumber=0
Apr 14 09:31:42 alistair-XPS13 kernel: [ 6740.206177] usb 1-2: ep 0x81 - 
rounding interval to 64 microframes, ep desc says 80 microframes
Apr 14 09:31:47 alistair-XPS13 kernel: [ 6745.203269] usb 1-2: can't set config 
#1, error -110
Apr 14 09:31:47 alistair-XPS13 mtp-probe: checking bus 1, device 6: 
"/sys/devices/pci0000:00/0000:00:14.0/usb1/1-2"
Apr 14 09:31:47 alistair-XPS13 mtp-probe: bus: 1, device: 6 was not an MTP 
device
--
--
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

Reply via email to