Commit Graph

22 Commits

Author SHA1 Message Date
mycroft 9c39f1d6a5 Exorcise UMASS_QUIRK_FORCE_SHORT_INQUIRY. 2003-09-10 05:25:44 +00:00
mycroft b8fd3dab7d cc -pipe -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Fix several problems with CCI handling, and enable it:
* We were never calling the callback function when we got a UFI CCI(!).
* We were passing a bogus residual count on non-UFI CCIs.
* After a REQUEST SENSE, the UFI CCI may include the ASC/ASCQ from the sense
  information -- don't consider this a failure.
In addition, remove a horrible hack that was causing us to drop sense
information on the floor and return empty INQUIRY responses, often in the case
where there is a UNIT ATTENTION pending during the INQUIRY.  (Some drives send
the data and then fail, some don't.)

This eliminates the need for quirks for the Y-E DATA FlashBuster.

These changes work on:

umass0: SAMSUNG SFD-321U [FW 0C], rev 1.10/2.10, addr 2
umass0: using UFI over CBI with CCI
sd0 at atapibus1 drive 0: <SMSC, USB FDC, 2.10> disk removable

umass0: TEAC TEAC FD-05PUB, rev 1.10/0.00, addr 2
umass0: using UFI over CBI with CCI
sd0 at atapibus0 drive 0: <TEAC, FD-05PUB, 1026> disk removable

umass0: Y-E DATA FlashBuster-U, rev 1.00/3.04, addr 2
umass0: using UFI over CBI with CCI
sd0 at atapibus0 drive 0: <Y-E DATA, USB-FDU, 3.04> disk removable
2003-09-10 02:49:18 +00:00
mycroft de88b69b7b Remove UMASS_QUIRK_NO_START_STOP and UMASS_QUIRK_NO_MAX_LUN. 2003-09-08 19:30:59 +00:00
tsutsui fa7988ee3e Remove unused MS_TO_TICKS(). 2003-02-22 05:18:50 +00:00
augustss 50e312d584 Add a reference count to avoid detaching while the attach is still
waiting.
2003-02-16 23:14:06 +00:00
erh 6278998229 kern/12837: Provide a way to get working devices that violate the usb spec by
returning a non-matching CSW tag.
Defined a quirk for this and set it for Scanlogic SL11R, which gets my
NEO Jukebox working.
2002-12-06 03:57:51 +00:00
augustss 86650920c9 Get rid of trailing white space. 2002-07-11 21:14:24 +00:00
augustss 53a6c27b2e Add quirk for devices without Get Max Lun. 2002-02-07 13:52:54 +00:00
augustss 276b009425 Introduce a field, busquirks, in the umass quirk table that is passed
directly to the quirk field for the bus.
2001-12-29 13:46:23 +00:00
augustss c33e730dd9 Get rid of the transfer_speed nonsense to calculate the timeout.
We get passed a timeout from the upper layer which is what matters.
2001-12-24 19:24:33 +00:00
augustss ab7b323efa Add a preliminary version of a driver for In-System Designs non-standard
ATA-over-BulkOnly protocol.  The ISD chip can be found, e.g., in the
Archos MP3 player.
The driver still lacks real error handling.
2001-12-24 13:43:24 +00:00
augustss 56b5867371 Make the separation between wire protocol (umass.c) and command protocol
(umass_scsipi.c) more distinct.
It is now possible to add new command protocols with a minimum of change.
The umassbus.[ch] files have been renamed umass_scsipi.[ch] since this
reflects their purpose better.
2001-12-24 13:25:52 +00:00
gehenna e1839209b8 Add new quirk: NO_REQUEST_SENSE
Submit by: Dave Sainty
2001-12-22 13:21:59 +00:00
gehenna 7cd101a6ca Introduce the new umass quirk table.
Discussed with augustss.
2001-12-17 12:16:14 +00:00
gehenna f144837e0e Stylistic changes 2001-12-14 08:58:49 +00:00
gehenna 2d27ad7c73 Define a new structure to store wire specific control methods.
The basic BBB/CBI functions are stored as members of constant structure.
When attached device, softc holds one of that constant structures.
2001-12-14 08:46:19 +00:00
gehenna 53f34def69 Change style to store endpoint addresses and pipes. 2001-12-14 05:58:13 +00:00
augustss a6ba091eef Add a quirk for Olympus C-1. From FreeBSD (by iedowse) 2001-11-25 19:15:46 +00:00
augustss 596224e54f Pay attention to the timeout value passed down by the scsipi layer. 2001-11-25 19:05:22 +00:00
augustss 264c404593 Clean up formatting a little.
Split protocol variable into wire and command protocols.
2001-04-17 00:50:13 +00:00
augustss b5c707b2b6 Make it link with debug flag. 2001-04-13 12:51:43 +00:00
augustss bcdfccea3c Split the umass driver into the part that handles the X-over-USB protocol
(umass.c) and the part that handles scsibus/atapibus (umassbus.c).
This way the must port specific stuff can be removed from umass.c.
2001-04-13 12:24:10 +00:00