AtaPortGetDeviceBase function (irb.h)
The AtaPortGetDeviceBase routine returns a mapped logical base address that is used to communicate with an HBA.
Syntax
PVOID AtaPortGetDeviceBase(
[in] PVOID ChannelExtension,
[in] IDE_PHYSICAL_ADDRESS IoAddress,
[in] ULONG NumberOfBytes
);
Parameters
[in] ChannelExtension
A pointer to the channel extension.
[in] IoAddress
Specifies the base address to map.
[in] NumberOfBytes
Specifies the size, in bytes, of the range that the mappings should cover. The value for this parameter can be obtained from the IdeAccessRange member of the IDE_MINIPORT_RESOURCES structure.
Return value
AtaPortGetDeviceBase returns a mapped logical base address if the operation succeeds. Otherwise, it returns NULL.
Remarks
Miniport drivers must use logical addresses that have been mapped into system space by AtaPortGetDeviceBase instead of bus-relative addresses to communicate with its HBA. Calls to the AtaPort...Port/RegisterXxx routines require mapped logical addresses.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | irb.h (include Ata.h, Irb.h) |
Library | Ataport.lib; Pciidex.lib |