HwIdeXTransferModeSelect routine

The HwIdeTransferModeSelect routine returns the best PIO mode and the best DMA mode for each device indicated in XferMode.

Syntax

PCIIDE_TRANSFER_MODE_SELECT_FUNC HwIdeXTransferModeSelect;

NTSTATUS HwIdeXTransferModeSelect(
  _In_    PVOID                        DeviceExtension ,
  _Inout_ PPCIIDE_TRANSFER_MODE_SELECT XferMode 
)
{ ... }

Parameters

  • DeviceExtension [in]
    Contains a pointer to the IDE controller minidriver's device extension.

  • XferMode [in, out]
    Contains a pointer to a PCIIDE_TRANSFER_MODE_SELECT structure supplied by the caller that is used to furnish the IDE controller minidriver with device information and to report which transfer modes the minidriver selects for each device.

Return value

HwIdeXChannelTransferMode returns STATUS_SUCCESS if the transfer mode data is successfully retrieved; otherwise, returns STATUS_UNSUCCESSFUL.

Remarks

HwIdeTransferModeSelect queries the IDE controller minidriver to determine what the best available PIO and DMA modes are for each device in a list of devices furnished in the XferMode structure. It determines this by considering both the characteristics of each device as specified in XferMode and the hardware characteristics of the IDE controller itself. The calling routine must provide the relevant device characteristics, such as the device's best PIO, best single-word DMA, best multiword DMA, and best ultra DMA cycle times, in XferMode.

For a detailed summary of the information required by HwIdeXTransferModeSelect, see PCIIDE_TRANSFER_MODE_SELECT.

When the controller driver calls minidriver's HwIdeXGetControllerProperties routine, it passes an IDE_CONTROLLER_PROPERTIES structure to the minidriver. The minidriver must store a pointer to HwIdeXTransferModeSelect in this structure.

Requirements

Target platform

Desktop

Header

Ide.h (include Ide.h)

See also

HwIdeXGetControllerProperties

IDE_CONTROLLER_PROPERTIES

PCIIDE_TRANSFER_MODE_SELECT

 

 

Send comments about this topic to Microsoft