Subject: CVS commit: src/sys/dev/usb
To: None <source-changes@NetBSD.org>
From: Charles M. Hannum <mycroft@netbsd.org>
List: source-changes
Date: 09/10/2003 02:49:20
Module Name:	src
Committed By:	mycroft
Date:		Wed Sep 10 02:49:20 UTC 2003

Modified Files:
	src/sys/dev/usb: umass.c umass_quirks.c umass_scsipi.c umassvar.h

Log Message:
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


To generate a diff of this commit:
cvs rdiff -r1.99 -r1.100 src/sys/dev/usb/umass.c
cvs rdiff -r1.51 -r1.52 src/sys/dev/usb/umass_quirks.c
cvs rdiff -r1.10 -r1.11 src/sys/dev/usb/umass_scsipi.c
cvs rdiff -r1.20 -r1.21 src/sys/dev/usb/umassvar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.