Subject: Re: CDROM detection (again)
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
List: current-users
Date: 11/13/1998 15:57:24
>I doubt. Jonathan's problem is that his drive doesn't respond to the
>IDENTIFY command.

Fair enough; just wanted to throw this possibility out.

>> Manuel, do you have any ideas?  I will agree that my CD-ROM drive is
>> cranky, and I'm willing to quirk this code ... but should it even be
>> there?  I think that other OS's IDE drivers don't do this.
>
>At last freebsd does this.
>For ISA controllers, when there's no drive a inb on one of the registers will
>return 0xff. If we strictly follow the specs, this means "disk busy,
>don't try to access any other register", and we have to wait 31s before
>deciding there's nothing here. For a i386 GENERIC or INSTALL kernel on a
>machine without IDE devices this will take 1mn for each boot.
>What will a new user think about this ? "Linux can boot on
>my machine in a few seconds, NetBSD takes more than a minute, NetBSD
>sucks" (linux ask the bios for the available drives).

I agree, the IDE boot delay is crummy, and I would like to shorten it
as well.  I'm just trying to find some middle ground here.

>Maybe this hack should only be used for ISA and ISAPnP controllers ?
>If someone puts a pcmcia controller, it's likely there will be a drive
>attached to it, so the 31s delay is not a problem here.

Well, I could make it conditional to a PCMCIA bus (would that violate
some abstraction, though), or perhaps just put it under the
NO_EXTRA_RESETS quirk, since this is the only device (so far) that
we've seen that does this.

--Ken