IDE_CHANNEL_INTERFACE structure (irb.h)

The IDE_CHANNEL_INTERFACE structure contains interface information for the indicated channel.

Note

The ATA port driver and ATA miniport driver models may be altered or unavailable in the future. Instead, we recommend using the Storport driver and Storport miniport driver models.

Syntax

typedef struct _IDE_CHANNEL_INTERFACE {
  USHORT            Version;
  UCHAR             ChannelNumber;
  UCHAR             Reserved;
  ULONG             ReservedUlong;
  IDE_HW_INITIALIZE IdeHwInitialize;
  IDE_HW_BUILDIO    IdeHwBuildIo;
  IDE_HW_STARTIO    IdeHwStartIo;
  IDE_HW_INTERRUPT  IdeHwInterrupt;
  IDE_HW_RESET      IdeHwReset;
  IDE_HW_CONTROL    IdeHwControl;
} IDE_CHANNEL_INTERFACE, *PIDE_CHANNEL_INTERFACE;

Members

Version

The port driver sets this member to sizeof(IDE_CHANNEL_INTERFACE). The miniport driver should verify that the version is greater than or equal to the one it is using.

ChannelNumber

The port driver sets this field to the number assigned for this channel. For non-native mode controllers, the primary channel will always be assigned 0 and the secondary channel will always be assigned 1.

Reserved

Reserved. The miniport driver must not use this field.

ReservedUlong

Reserved. The miniport driver must not use this field.

IdeHwInitialize

The miniport's IdeHwInitialize routine.

IdeHwBuildIo

The miniport's IdeHwBuildIo routine.

IdeHwStartIo

The miniport's IdeHwStartIo routine.

IdeHwInterrupt

The miniport's IdeHwInterrupt routine.

IdeHwReset

The miniport's IdeHwReset routine.

IdeHwControl

The miniport's IdeHwControl routine.

Requirements

Requirement Value
Header irb.h (include Irb.h)

See also

IdeHwBuildIo

IdeHwControl

IdeHwInitialize

IdeHwInterrupt

IdeHwReset

IdeHwStartIo