diff options
author | joerg <joerg@FreeBSD.org> | 1996-12-20 20:43:45 +0000 |
---|---|---|
committer | joerg <joerg@FreeBSD.org> | 1996-12-20 20:43:45 +0000 |
commit | 023ebf22da4bb02e6df46ee4b256805c967ff066 (patch) | |
tree | 257ffd92b33351c77d6ab2883454783b98bc557c /sys/scsi/scsiconf.c | |
parent | 9f9cef3ee41f2fad8e27be97ed97cc2ccb80a9e0 (diff) | |
download | FreeBSD-src-023ebf22da4bb02e6df46ee4b256805c967ff066.zip FreeBSD-src-023ebf22da4bb02e6df46ee4b256805c967ff066.tar.gz |
Reorder the wildcard entries to the end of the quirks list, so they
will be probed last. It's otherwise impossible in some cases to get
SCSI type override working.
Supposed fix for PR # kern/2225.
Diffstat (limited to 'sys/scsi/scsiconf.c')
-rw-r--r-- | sys/scsi/scsiconf.c | 62 |
1 files changed, 39 insertions, 23 deletions
diff --git a/sys/scsi/scsiconf.c b/sys/scsi/scsiconf.c index 86008c5..c7eb2b6 100644 --- a/sys/scsi/scsiconf.c +++ b/sys/scsi/scsiconf.c @@ -16,7 +16,7 @@ * * New configuration setup: dufault@hda.com * - * $Id: scsiconf.c,v 1.71 1996/12/13 00:00:51 joerg Exp $ + * $Id: scsiconf.c,v 1.72 1996/12/14 09:57:04 joerg Exp $ */ #include "opt_scsi.h" @@ -265,20 +265,12 @@ static struct scsidevs knowndevs[] = T_DIRECT, T_OPTICAL, T_REMOV, "RICOH", "RO-*", "*", "od", SC_ONE_LU }, - { - T_OPTICAL, T_OPTICAL, T_REMOV, "*", "*", "*", - "od", SC_ONE_LU - }, #endif /* NOD */ #if NSD > 0 { T_DIRECT, T_DIRECT, T_FIXED, "EMULEX", "MD21*" , "*", "sd", SC_MORE_LUS }, - { - T_DIRECT, T_DIRECT, T_FIXED, "*", "*", "*", - "sd", SC_ONE_LU - }, #endif /* NSD */ #if NST > 0 { @@ -313,17 +305,7 @@ static struct scsidevs knowndevs[] = T_SEQUENTIAL, T_SEQUENTIAL, T_REMOV, "Quantum", "DLT*", "*", "st", SC_MORE_LUS, 0 }, - { - T_SEQUENTIAL, T_SEQUENTIAL, T_REMOV, "*", "*", "*", - "st", SC_ONE_LU, 0, mode_unktape - }, #endif /* NST */ -#if NCH > 0 - { - T_CHANGER, T_CHANGER, T_REMOV, "*", "*", "*", - "ch", SC_ONE_LU - }, -#endif /* NCH */ #if NCD > 0 #ifndef UKTEST /* make cdroms unrecognised to test the uk driver */ /* @@ -371,10 +353,6 @@ static struct scsidevs knowndevs[] = * Doobe-doo-be doooo * -Mary */ - { - T_READONLY, T_READONLY, T_REMOV, "*", "*", "*", - "cd", SC_ONE_LU - }, #endif /* !UKTEST */ #endif /* NCD */ #if NWORM > 0 @@ -399,6 +377,44 @@ static struct scsidevs knowndevs[] = T_READONLY, T_WORM, T_REMOV, "PLASMON", "RF41*", "*", "worm", SC_ONE_LU }, +#endif /* NWORM */ + + /* + * Wildcard entries. Keep them down here below all device + * specific entries, so the above ones can override the type + * driver if necessary. + */ +#if NOD > 0 + { + T_OPTICAL, T_OPTICAL, T_REMOV, "*", "*", "*", + "od", SC_ONE_LU + }, +#endif /* NOD */ +#if NSD > 0 + { + T_DIRECT, T_DIRECT, T_FIXED, "*", "*", "*", + "sd", SC_ONE_LU + }, +#endif /* NSD */ +#if NST > 0 + { + T_SEQUENTIAL, T_SEQUENTIAL, T_REMOV, "*", "*", "*", + "st", SC_ONE_LU, 0, mode_unktape + }, +#endif /* NST */ +#if NCH > 0 + { + T_CHANGER, T_CHANGER, T_REMOV, "*", "*", "*", + "ch", SC_ONE_LU + }, +#endif /* NCH */ +#if NCD > 0 && !defined(UKTEST) + { + T_READONLY, T_READONLY, T_REMOV, "*", "*", "*", + "cd", SC_ONE_LU + }, +#endif /* NCD */ +#if NWORM > 0 { T_WORM, T_WORM, T_REMOV, "*", "*", "*", "worm", SC_ONE_LU |