Alan Stern wrote: >On Sat, 4 Feb 2006 [EMAIL PROTECTED] wrote: >> I have a (cheap and nasty) EM732X MP3 player made by Yifang Digital: >> http://www.yifangdigital.com/Portals/118056c2de4d/40f5a5ace647/c7d06f0150.html >> >> which doesn't work out of the box on Linux: there are I/O errors on >> read and write.
>Yes, and as far as we can tell from the log, the transfer really did work >(that is, the data was transferred successfully) even though the residue >value is wrong. > >> Anyway, there's already special casing for some other device with >> a similar problem in slave_configure() in drivers/usb/storage/scsiglue.c, >> and I was just going to write a patch to add this device, but: >You're right that scsiglue.c should not be changed. > >You have two options. One is just always to set the max_sectors value >whenever the drive is attached (could be automated by writing a hotplug >script). Well, this works as a workaround for me. But unusual_devs.h implies that we do like to support even broken devices 'out of the box'... For example, we could have an extra unusual_devs flag (US_FL_SMALL_XFERS?) (which would allow you to move the Genesys special casing into unusual_devs as well). Would imply picking a value of 'small' small enough to satisfy all devices broken like this, though. > The other is to create an unusual_devs.h entry with the >IGNORE_RESIDUE flag. This has the minor disadvantage that the residue >will be ignored even for transfers less than 32 KB, when it might >conceivably be of some value. This was what I tried first. It works for reading, but not for writing (because IGNORE_RESIDUE doesn't ignore residues on writing). If you do hack the source to make it ignore residues on writes then it seems to work OK but the resulting mp3s skip occasionally, presumably because we weren't detecting genuinely failed writes any more. -- PMM ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users
