Re: IDE-flash device and hard disk on same controller

From: Eric W. Biederman (
Date: Fri Aug 23 2002 - 08:09:03 EST

Jeff Garzik <> writes:

> Eric W. Biederman wrote:
> > The problem is that immediately after bootup ATA devices do not respond until
> > their media has spun up. Which is both required by the spec, and observed in
> > practice. Which is likely a problem if this code is run a few seconds after
> > bootup. Which makes it quite possible the drive will ignore the EXECUTE
> > DIAGNOSTICS and your error code won't be valid when the bsy flag
> > clears. I don't know how serious that would be.
> Well, this only applies if you are slack and letting the kernel init your ATA
> from scratch, instead of doing proper ATA initialization in firmware ;-)

That would be nice. I do admit it is hard to trigger if you don't do
it deliberately.

The x86 BIOS specifications say only the boot devices must be
initialized, before the BIOS gives up control. A more likely
reproducer is a plug-in ata controller that the BIOS does not
recognize, and the kernel does.
> Seriously, if you are a handed an ATA device that is actually in operation when
> the kernel boots, you are already out of spec. I would prefer to barf if the
> BSY or DRDY bits are set, because taking over the ATA bus while a device is in
> the middle of a command shouldn't be happening at Linux kernel boot, ever.

Throwing an error and giving up would certainly be a safe response,
though it is a strange way to handle in spec hardware and firmware
behavior. On the other hand it is a rare enough case deliberately not
coping with it is probably fine.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Fri Aug 23 2002 - 22:00:27 EST