AtaPortDeviceBusy function (irb.h)

The AtaPortDeviceBusy routine informs the port driver that the indicated device is busy.

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

void AtaPortDeviceBusy(
  [in] PVOID ChannelExtension,
  [in] UCHAR TargetId,
  [in] UCHAR Lun,
  [in] ULONG BusyTimeout
);

Parameters

[in] ChannelExtension

A pointer to the channel extension.

[in] TargetId

Specifies the target identifier of the device.

[in] Lun

Specifies the logical unit number (LUN) of the device.

[in] BusyTimeout

Specifies the time, in seconds, for which the device is presumed to be busy.

Return value

None

Remarks

When the port driver receives this call, it pauses the request queue for the indicated device for the time that is indicated by BusyTimeout. The caller can pause the channel request queue instead of the request queue for an individual device by assigning the wildcard value of IDE_UNTAGGED to parameters TargetId and Lun.

The port driver automatically resumes paused queues after the time-out interval expires.

The miniport driver must not call AtaPortDeviceBusy from its IdeHwInterrupt routine.

Requirements

Requirement Value
Target Platform Desktop
Header irb.h (include Ata.h, Irb.h)

See also

AtaPortDeviceReady

IdeHwInterrupt