-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi all,

I've recently bought a USB Compact Flash card reader from Belkin on the
recommendation of a friend who had no problem getting his working under Linux.
Of course, Belkin seem to have changed something and I'm having trouble
getting going.

Initially I just couldn't get any sensible response from the reader. A single
read operation worked ok (I could dd if=/dev/scsi/... of=temp and get an image
of the whole disk) but any subsequent ops would fail, and attempts to read the
partition table also fail since this apparently takes two reads.

After some poking around I discovered that the failure was coming from a flag
byte in a DMA buffer (bcs->Status or the 13th byte of urb->transfer_buffer
depending on scope). I deduced the OS is sending commands which confuse the
reader and making it flag an error.

Comparing my model with my friend's, I discovered his was reporting
04e6:000a for manufacturer:model and mine is 55aa:b000. Also
/proc/scsi/scsi reports mine as Vendor OCI-USB and his eUSB. There are
other differences which I will post if you think they might be helpful but
this is going to be long as it is...

04e6:000a appears in the list of unusual devices for the usb-storage
module, where the unusualness is US_SC_8020 and US_PR_CB. Copying these
settings over for 55aa:b000 didn't help in the slightest, but a bit of
experimentation has got me further using US_SC_SCSI, US_PR_BULK (the
defaults) and US_FL_START_STOP. Now I can sometimes mount a disk, read
stuff, write stuff and generally have fun until it all grinds to a halt. This
is what the end of my logs look like (at this point I was trying to umount but
this is what it looks like in general):

usb-storage: usb_stor_transfer_partial(): xfer 4096 bytes
usb-storage: usb_stor_bulk_msg() returned 0 xferred 4096/4096
usb-storage: usb_stor_transfer_partial(): transfer complete

(repeated ad nauseam)

usb-storage: usb_stor_transfer_partial(): xfer 4096 bytes
usb-storage: usb_stor_bulk_msg() returned 0 xferred 4096/4096
usb-storage: usb_stor_transfer_partial(): transfer complete
usb-storage: usb_stor_transfer_partial(): xfer 1536 bytes
usb-storage: command_abort() called
usb-storage: usb_stor_bulk_msg() returned -104 xferred 64/1536
usb-storage: usb_stor_transfer_partial(): unknown error
usb-storage: Bulk data transfer result 0x2
usb-storage: Attempting to get CSW...
uhci.c: uhci_submit_urb: urb not available to submit (status = -104)
usb-storage: Bulk status result = -22
usb-storage: -- transport indicates error, resetting
usb-storage: Bulk reset requested
usb_control/bulk_msg: timeout
usb-storage: Bulk soft reset failed -110
usb-storage: scsi cmd done, result=0x70000
usb-storage: *** thread sleeping.

That's it. The umount process hangs so deeply I cannot kill it and I'm stuck
until (horror!) I reboot.

The problem is more severe using a 1Gb Microdrive (which has longer seek times)
but I haven't managed to umount my 32Mb CF card after writing a file to it
either. I wonder if something is timing out and failing to recover? I'm
way out of my depth at this point and could do with some help.

TIA,

Dave


- -- 
Dave Turner
[EMAIL PROTECTED]
-----BEGIN PGP SIGNATURE-----

iD8DBQE+d6nceFNVJYkmfV8RAkH8AJ93bn20syf1OR8/xyelLdCqXWWUcgCeL4MO
tZflbixHNkReYxvgJh+TRVU=
=c2TA
-----END PGP SIGNATURE-----



-------------------------------------------------------
This SF.net email is sponsored by: Does your code think in ink? 
You could win a Tablet PC. Get a free Tablet PC hat just for playing. 
What are you waiting for?
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr5043en
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to