diff options
author | ken <ken@FreeBSD.org> | 1998-09-22 20:41:12 +0000 |
---|---|---|
committer | ken <ken@FreeBSD.org> | 1998-09-22 20:41:12 +0000 |
commit | d1cbfc6a59e27fecf4f2ebbc0f7d35f40d55f029 (patch) | |
tree | dfc677d1ce9c79a45c8b2fad335f2278f0904ae2 /sys/cam | |
parent | a642c78f623ae853fa3a3ce1fc3b765aad2a91f7 (diff) | |
download | FreeBSD-src-d1cbfc6a59e27fecf4f2ebbc0f7d35f40d55f029.zip FreeBSD-src-d1cbfc6a59e27fecf4f2ebbc0f7d35f40d55f029.tar.gz |
Add several quirks:
Western Digital Enterprise drives have sorry performance (1.5MB/sec versus
8MB/sec) when doing tagged queueing. Disable tagged queueing for them.
Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
Some Sony CDROM drives don't like it when we probe more than one LUN.
Verified by: Jean-Marc Zucconi <jmz@FreeBSD.ORG>
Some Sony CD-R's don't like multi-LUN probing either.
Submitted by: Parag Patel <parag@cgt.com>
Diffstat (limited to 'sys/cam')
-rw-r--r-- | sys/cam/cam_xpt.c | 44 |
1 files changed, 43 insertions, 1 deletions
diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index 4da3d68..0400cca 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: cam_xpt.c,v 1.9 1998/09/20 07:14:36 gibbs Exp $ + * $Id: cam_xpt.c,v 1.10 1998/09/22 04:53:23 gibbs Exp $ */ #include <sys/param.h> #include <sys/systm.h> @@ -231,6 +231,8 @@ struct xpt_softc { }; static const char quantum[] = "QUANTUM"; +static const char sony[] = "SONY"; +static const char west_digital[] = "WDIGTL"; static struct xpt_quirk_entry xpt_quirk_table[] = { @@ -263,6 +265,24 @@ static struct xpt_quirk_entry xpt_quirk_table[] = /* Broken tagged queuing drive */ { T_DIRECT, SIP_MEDIA_REMOVABLE, "iomega", "jaz*", "*" }, /*quirks*/0, /*mintags*/0, /*maxtags*/0 + }, + { + /* + * Slow when tagged queueing is enabled. (1.5MB/sec versus + * 8MB/sec.) + * Submitted by: Andrew Gallatin <gallatin@cs.duke.edu> + */ + { T_DIRECT, SIP_MEDIA_FIXED, west_digital, "WDE*", "*" }, + /*quirks*/0, /*mintags*/0, /*maxtags*/0 + }, + { + /* + * Slow when tagged queueing is enabled. (1.5MB/sec versus + * 8MB/sec.) + * Submitted by: Andrew Gallatin <gallatin@cs.duke.edu> + */ + { T_DIRECT, SIP_MEDIA_FIXED, west_digital, "ENTERPRISE", "*" }, + /*quirks*/0, /*mintags*/0, /*maxtags*/0 }, { /* @@ -300,6 +320,28 @@ static struct xpt_quirk_entry xpt_quirk_table[] = CAM_QUIRK_NOLUNS, /*mintags*/0, /*maxtags*/0 }, { + /* + * This drive doesn't like multiple LUN probing. + * Verified by: Jean-Marc Zucconi <jmz@FreeBSD.ORG> + */ + { + T_CDROM, SIP_MEDIA_REMOVABLE, sony, + "CD-ROM CDU-80*", "*" + }, + CAM_QUIRK_NOLUNS, /*mintags*/0, /*maxtags*/0 + }, + { + /* + * This drive doesn't like multiple LUN probing. + * Submitted by: Parag Patel <parag@cgt.com> + */ + { + T_WORM, SIP_MEDIA_REMOVABLE, sony, + "CD-R CDU9*", "*" + }, + CAM_QUIRK_NOLUNS, /*mintags*/0, /*maxtags*/0 + }, + { /* Default tagged queuing parameters for all devices */ { T_ANY, SIP_MEDIA_REMOVABLE|SIP_MEDIA_FIXED, |