From 5b869ea72465992c963df8f19062b985fede80f4 Mon Sep 17 00:00:00 2001 From: ache Date: Wed, 21 Dec 1994 15:17:59 +0000 Subject: Remove get status from probe, confuse LU002 Add check stbytes[1] != stbytes[2] for presence real Mitsumi controller --- sys/i386/isa/mcd.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'sys/i386/isa/mcd.c') diff --git a/sys/i386/isa/mcd.c b/sys/i386/isa/mcd.c index 0c1705d..b7d5aeb 100644 --- a/sys/i386/isa/mcd.c +++ b/sys/i386/isa/mcd.c @@ -40,7 +40,7 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: mcd.c,v 1.32 1994/11/14 19:32:11 ache Exp $ + * $Id: mcd.c,v 1.33 1994/12/21 15:12:41 ache Exp $ */ static char COPYRIGHT[] = "mcd-driver (C)1993 by H.Veit & B.Moore"; @@ -668,10 +668,6 @@ mcd_probe(struct isa_device *dev) outb(port+MCD_DATA, MCD_CMDGETSTAT); if (!twiddle_thumbs(port, unit, 1000000, "getting status")) return 0; /* Timeout */ - status = inb(port+MCD_DATA); - if (status != MCDCDABSENT && status != MCDCDPRESENT && - status != MCDSOPEN && status != MCDSCLOSED) - return 0; /* Not actually a Mitsumi drive here */ /* Get version information */ outb(port+MCD_DATA, MCD_CMDCONTINFO); for (j = 0; j < 3; j++) { @@ -679,6 +675,8 @@ mcd_probe(struct isa_device *dev) return 0; stbytes[j] = (inb(port+MCD_DATA) & 0xFF); } + if (stbytes[1] == stbytes[2]) + return 0; printf("mcd%d: version information is %c %x\n", unit, stbytes[1], stbytes[2]); if (stbytes[2] >= 4) { -- cgit v1.1