Date: Fri, 08 Aug 2003 08:12:39 -0700 From: "Kevin Oberman" <oberman@es.net> To: Nate Lawson <nate@root.org> Cc: current@freebsd.org Subject: Re: USB da(4) quirks deprecated Message-ID: <20030808151239.E9E745D08@ptavv.es.net> In-Reply-To: Message from Nate Lawson <nate@root.org> of "Thu, 07 Aug 2003 20:13:11 PDT." <20030807200629.G77081@root.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Nate, I have successfully tested and the MuVo needs both DA_Q_NO_SYNC_CACHE and DA_Q_NO_PREVENT (as per PR/53094) to work. One question which pops into my mind is why the inability of a device to do a cache sync should be fatal. I suspect that most flash devices don't really even have a cache and few do anything but return an error when asked to synchronize. Why not test this when the device is initialized (and maybe PREVENT, as well) and set the device to operate accordingly from that point on,probably with a message that the device does not honor cache sync requests. This would greatly enhance the odds of a device "just working", though I may not fully understand the implications of such a change on a more global basis. In any case, the MuVo does require something beyond the norm (disabling of the prevent stuff) to work and I may be patching my driver for a long time to come. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 > Date: Thu, 7 Aug 2003 20:13:11 -0700 (PDT) > From: Nate Lawson <nate@root.org> > > On Fri, 8 Aug 2003, Andrew Thompson wrote: > > Hi Nate, > > > > I have just purchased a usb pendrive/mp3 player and I am having a bit of > > trouble. > > > > I built a fresh kernel today as I saw you have been working with the da > > quirks. When I insert the drive I get: > > > > umass0: SigmaTel, Inc. USBMSC Audio Player, rev 1.10/0.01, addr 3 > > umass0: Get Max Lun not supported (IOERROR) > > da0 at umass-sim0 bus 0 target 0 lun 0 > > da0: <SigmaTel MSCN 0001> Removable Direct Access SCSI-4 device > > da0: 1.000MB/s transfers > > da0: 125MB (256001 512 byte sectors: 64H 32S/T 125C) > > umass0: BBB reset failed, IOERROR > > umass0: BBB bulk-in clear stall failed, IOERROR > > umass0: BBB bulk-out clear stall failed, IOERROR > > umass0: BBB reset failed, IOERROR > > umass0: BBB bulk-in clear stall failed, IOERROR > > umass0: BBB bulk-out clear stall failed, IOERROR > > .... and so on.... > > Looks pretty standard. Here is more info on the possible quirks: > http://www.root.org/~nate/freebsd/quirks.html > > If I were you, I'd look first into adding one for RS_NO_CLEAR_UA in > sys/dev/usb/umass.c. See other quirks like this to get an idea. It's > also possible that the problem is "NO_SYNC_CACHE" in > sys/cam/scsi/scsi_da.c. I'm adding Kevin Oberman. He's submitted some > quirks before. The idea is to try a few similar to the surrounding ones > until something works. > > > I recompiled with "options DA_OLD_QUIRKS" and now I get > > No difference. > > The reason is that there never was a quirk for your device. "OLD" implies > there was already one there. > > -Nate >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030808151239.E9E745D08>