On Tue, 25 Feb 2014, Sarah Sharp wrote: > On Tue, Feb 25, 2014 at 11:22:57PM +0100, Richard Sch�ote: > > Hi everybody! > > > > I am experiencing a problem with my USB card reader and xHCI. Simply > > using dd to write an image to a SD card results in USB resets after > > a few seconds. Reading with dd or using cp after creating a > > filesystem on the card also triggers the issue but usually not as > > quick as writing to it with dd. All in all it is unusable. Sometimes > > these resets also happen immediately after connecting the reader. > > With EHCI everything just works fine. > > Did it ever work under xHCI? If so, which kernel version did it work > on? > > I'm Ccing the usb-storage developers, in case the usbmon trace provides > some insight. It doesn't. > > usb 1-2: reset high-speed USB device number 19 using xhci_hcd > > xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled > > ep ffff8801b6837600 > > xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled > > ep ffff8801b6837640 > > sd 22:0:0:0: [sdb] Media Changed > > sd 22:0:0:0: [sdb] > > Result: hostbyte=0x00 driverbyte=0x08 > > sd 22:0:0:0: [sdb] > > Sense Key : 0x6 [current] > > Info fld=0x0 > > sd 22:0:0:0: [sdb] > > ASC=0x28 ASCQ=0x0 > > sd 22:0:0:0: [sdb] CDB: > > cdb[0]=0x28: 28 00 00 00 1d 20 00 00 08 00 > > end_request: I/O error, dev sdb, sector 7456 > > sd 22:0:0:0: [sdb] No Caching mode page found > > sd 22:0:0:0: [sdb] Assuming drive cache: write through > > sd 22:0:0:0: [sdb] No Caching mode page found > > sd 22:0:0:0: [sdb] Assuming drive cache: write through > > sdb: unknown partition table > > It might help you to turn on CONFIG_USB_STORAGE_DEBUG, to see which SCSI > command is failing. CONFIG_USB_STORAGE_DEBUG is a lot less helpful for examining SCSI commands than a usbmon trace, because it includes lots of extraneous information. It's meant more for debugging the usb-storage driver itself than for debugging device problems. The command was an ordinary READ, same as a bunch of others that worked fine. And the failure occurred in the command phase, not the data phase: The host doesn't receive an ACK response to the CBW packet. > Can you blacklist the usb-storage driver, and get the lsusb output when > the device is plugged into a USB 3.0 port? I'd like to see the > SuperSpeed Endpoint Companion Descriptor, to see what the Link PM U1/U2 > timeout values are. Being a card reader, it is almost certainly a USB-2 device. This is backed up by the fact that it ran at high speed, not SuperSpeed, when connected to an xHCI controller. Therefore it doesn't have U1/U2 timeouts. 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