TRANSLATE_BUS_ADDRESS callback function (wdm.h)
The TranslateBusAddress routine translates addresses on the parent bus to logical addresses.
Syntax
TRANSLATE_BUS_ADDRESS TranslateBusAddress;
BOOLEAN TranslateBusAddress(
[in] PVOID Context,
[in] PHYSICAL_ADDRESS BusAddress,
[in] ULONG Length,
[in, out] PULONG AddressSpace,
[out] PPHYSICAL_ADDRESS TranslatedAddress
)
{...}
Parameters
[in] Context
A pointer to interface-specific context information. The caller passes the value that is passed as the Context member of the BUS_INTERFACE_STANDARD structure for the interface.
[in] BusAddress
The bus-relative address to be translated.
[in] Length
The length, in bytes, of the input memory that BusAddress points to.
[in, out] AddressSpace
On input, the address space in which the device's hardware address resides. A value of 0x0 signifies memory space, and a value of 0x1 signifies port I/O space. On output, AddressSpace indicates the address space in which the TranslatedAddress resides.
[out] TranslatedAddress
The translated (logical) address that corresponds to the bus-relative address that the caller provides in BusAddress.
Return value
The TranslateBusAddress routine returns TRUE if the translation operation succeeded and FALSE otherwise.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | wdm.h (include Ntddk.h) |
IRQL | PASSIVE_LEVEL |