Alan, On Sat, 12 Feb 2005 11:30:46 -0500 (EST), Alan Stern <[EMAIL PROTECTED]> wrote: > > > > I have a problem with a USB2 PCCard Host... I've tried it on the > > 2.4.29, 2.6.10 and 2.6.11-rc3 kernel... > > > > Everything initialises fine.. the kernel finds everything and accepts > > the PCCard... but when I attach a USB2 external harddrive to it it > > locks up in [usb-storage-scan] mode.. I have no problems with the > > harddrive if I attach it to the internal USB1 interface... > > > > every command i give to either scsi or usb gets looked up and i need > > to completely remove the USB2 PCCard host to get my out of the loop... > > Is your external hard drive an IDE disk with a USB-IDE converter?
Yes, it is a AluDISC 200Gb USB2.0... (http://www.one-tech.com/graphics/user_graphics/Datasheet_AluDISC.pdf) > > > ...the storage device seems to be identified correctly... at least in > > USB1 mode... using the uhci driver... > > > > ...I've enabled usb-storage-debug in the kernel... > > > > dmesg gives me: > > > usb-storage: Command READ_10 (10 bytes) > > usb-storage: 28 00 00 00 00 00 00 00 08 00 > > usb-storage: Bulk Command S 0x43425355 T 0x6 L 4096 F 128 Trg 0 LUN 0 CL 10 > > usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes > > usb-storage: Status code 0; transferred 31/31 > > usb-storage: -- transfer complete > > usb-storage: Bulk command transfer result=0 > > usb-storage: usb_stor_bulk_transfer_sglist: xfer 4096 bytes, 1 entries > > usb-storage: command_abort called > > usb-storage: usb_stor_stop_transport called > > usb-storage: -- cancelling sg request > > Did the log stop there? I'd expect to see a lot more error messages, as > the READ command was retried and failed over and over again. Yes... the log stopped there until I removed the PCCard from the running machine... this is the log after the PCCard was removed... uhci_hcd 0000:06:00.0: host system error, PCI problems? uhci_hcd 0000:06:00.0: host controller process error, something bad happened! uhci_hcd 0000:06:00.1: host system error, PCI problems? uhci_hcd 0000:06:00.1: host controller process error, something bad happened! ehci_hcd 0000:06:00.2: HC died; cleaning up hub 4-0:1.0: hub_port_status failed (err = -19) ehci_hcd 0000:06:00.2: dev 2 ep1in scatterlist error -108/-104 usb-storage: Status code -104; transferred 2048/4096 usb-storage: -- transfer cancelled usb-storage: Bulk data transfer result 0x4 usb-storage: -- command was aborted usb-storage: usb_stor_Bulk_reset called usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0 usb-storage: Soft reset failed: -19 usb-storage: scsi command aborted usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Command TEST_UNIT_READY (6 bytes) usb-storage: 00 00 00 00 00 00 usb-storage: Bulk Command S 0x43425355 T 0x6 L 0 F 0 Trg 0 LUN 0 CL 6 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code -19; transferred 0/31 usb-storage: -- unknown error usb-storage: Bulk command transfer result=4 usb-storage: -- transport indicates error, resetting usb-storage: usb_stor_Bulk_reset called usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0 usb-storage: Soft reset failed: -19 usb-storage: scsi cmd done, result=0x70000 usb-storage: *** thread sleeping. usb-storage: device_reset called usb-storage: usb_stor_Bulk_reset called usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0 usb-storage: Soft reset failed: -19 usb-storage: bus_reset called usb-storage: unable to lock device for reset: -19 scsi: Device offlined - not ready after error recovery: host 0 channel 0 id 0 lun 0 SCSI error : <0 0 0 0> return code = 0x70000 end_request: I/O error, dev sda, sector 0 Buffer I/O error on device sda, logical block 0 scsi0 (0:0): rejecting I/O to offline device Buffer I/O error on device sda, logical block 0 unable to read partition table Attached scsi disk sda at scsi0, channel 0, id 0, lun 0 uhci_hcd 0000:06:00.0: host system error, PCI problems? uhci_hcd 0000:06:00.0: host controller process error, something bad happened! uhci_hcd 0000:06:00.1: host system error, PCI problems? uhci_hcd 0000:06:00.1: host controller process error, something bad happened! uhci_hcd 0000:06:00.0: host system error, PCI problems? uhci_hcd 0000:06:00.0: host controller process error, something bad happened! uhci_hcd 0000:06:00.1: host system error, PCI problems? uhci_hcd 0000:06:00.1: host controller process error, something bad happened! Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0 usb-storage: queuecommand called uhci_hcd 0000:06:00.0: remove, state 1 usb usb2: USB disconnect, address 1 usb-storage: *** thread awakened. usb-storage: Bad target number (1:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Bad target number (2:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Bad target number (3:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Bad target number (4:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Bad target number (5:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Bad target number (6:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Bad target number (7:0) usb-storage: scsi cmd done, result=0x40000 usb-storage: *** thread sleeping. usb-storage: device scan complete hub 3-0:1.0: over-current change on port 1 uhci_hcd 0000:06:00.0: USB bus 2 deregistered uhci_hcd 0000:06:00.1: remove, state 1 hub 3-0:1.0: hub_port_status failed (err = -19) hub 3-0:1.0: connect-debounce failed, port 1 disabled hub 3-0:1.0: cannot disable port 1 (err = -19) hub 3-0:1.0: hub_port_status failed (err = -19) usb usb3: USB disconnect, address 1 uhci_hcd 0000:06:00.1: USB bus 3 deregistered ehci_hcd 0000:06:00.2: remove, state 0 usb usb4: USB disconnect, address 1 usb 4-2: USB disconnect, address 2 usb-storage: storage_disconnect() called usb-storage: usb_stor_stop_transport called usb-storage: -- usb_stor_release_resources usb-storage: -- sending exit command to thread usb-storage: *** thread awakened. usb-storage: -- exit command received usb-storage: -- dissociate_dev ehci_hcd 0000:06:00.2: USB bus 4 deregistered > > This is an important question. If the log stopped there, it indicates > something is wrong with the PC card or its driver. If the log continues, > it indicates something is wrong with the hard disk. The log stopped there.... and the [usb-stor-scan] process seems to hang when it tries to get the correct device for the harddrive... > > > If I compare this log to the log I have when I attach it to the > > internal USB1 interface the usb-storage: Bulk Commands seem to be > > different... > > They should all be the same except for the "T" (Tag) entries. You're correct... it was only the "T" entries that were different... It's in the Command READ_10 that the log changes.... USB2 PCCard log: usb-storage: Command READ_10 (10 bytes) usb-storage: 28 00 00 00 00 00 00 00 08 00 usb-storage: Bulk Command S 0x43425355 T 0x6 L 4096 F 128 Trg 0 LUN 0 CL 10 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_sglist: xfer 4096 bytes, 1 entries usb-storage: command_abort called usb-storage: usb_stor_stop_transport called usb-storage: -- cancelling sg request USB1 internal interface log: usb-storage: Command READ_10 (10 bytes) usb-storage: 28 00 00 00 00 00 00 00 08 00 usb-storage: Bulk Command S 0x43425355 T 0x13 L 4096 F 128 Trg 0 LUN 0 CL 10 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_sglist: xfer 4096 bytes, 1 entries usb-storage: Status code 0; transferred 4096/4096 usb-storage: -- transfer complete usb-storage: Bulk data transfer result 0x0 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: Status code 0; transferred 13/13 usb-storage: -- transfer complete usb-storage: Bulk status result = 0 usb-storage: Bulk Status S 0x53425355 T 0x13 R 0 Stat 0x0 usb-storage: scsi cmd done, result=0x0 usb-storage: *** thread sleeping. sda1 Attached scsi disk sda at scsi1, channel 0, id 0, lun 0 Attached scsi generic sg0 at scsi1, channel 0, id 0, lun 0, type 0 > Here's one thing you can try. In the source code directory for the > usb-storage driver (drivers/usb/storage in your kernel source), edit the > transport.c file. You'll see one place that mentions "udelay"; it looks > like this in 2.6.11-rc3: > > if (le16_to_cpu(us->pusb_dev->descriptor.idVendor) == > USB_VENDOR_ID_GENESYS) > udelay(110); > > (Yours will be slightly different depending on which kernel version you > work on.) You can try commenting out or removing entirely the "if" > line, leaving just the "udelay" part. Maybe your device needs that delay, > even though it's not made by Genesys. I am currently using 2.6.11-rc3 and tried commenting out the"if (le16_to_cpu(us->pusb_dev->descriptor.idVendor) == USB_VENDOR_ID_GENESYS)" line, but that did unfortunately not change anything.... fW ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users
