This message is from the T13 list server.

On 16 Feb 2004 13:00:21 -0700, Pat LaVarre wrote:
>This message is from the T13 list server.
>Anybody already know what is the most popular o x3F6 DeviceControl
>value?

Well the possible values are:

80H - HOB bit (ATA devices)
04H - SRST bit
02H - nIEN bit

There values may be OR'ed together.

NOTE: Bit 0 shall always be written by a host as zero.

Ignore the LBA48 HOB bit and the SRST bit, most software will set the
nIEN bit depending on if the host wants to use interrupts. Remember
that some hosts don't even make a physical connection to the INTRQ
signal - they don't care about the setting of nIEN. Other hosts may
want to do some commands in polling mode and may set nIEN=1 when
executing those commands.

>x00 and x02?  The difference there is x02 nIEN.

I would assume 00H would be most common - I don't see why a
multitasking OS would not use interrupts or would ever want to
disable interrupts from an ATA device (interrupt disable would be
done at a much higher level - either in the processor or the system
interrupt controller).

Note that on x86 systems using PCI bus ATA host controllers and
executing DMA data transfer commands the nIEN bit MUST BE ZERO. The
INTRQ signal from the device is needed by the host controller so that
it can know when a DMA data transfer command as ended, especially for
read commands that do not transfer all the data described by the DMA
PRD list.

>Do Win XP/ 2K get along here, or does that design tradition conflict
>with Win ME/ 9X here?

Why do you ask? Do you see differences in these OS?

Hale



*** Hale Landis *** www.ata-atapi.com ***



Reply via email to