PGET_DMA_ADAPTER_INFO callback function (wdm.h)
The GetDmaAdapterInfo routine retrieves information about the hardware capabilities of a system DMA channel.
Syntax
PGET_DMA_ADAPTER_INFO PgetDmaAdapterInfo;
NTSTATUS PgetDmaAdapterInfo(
[in] PDMA_ADAPTER DmaAdapter,
[in, out] PDMA_ADAPTER_INFO AdapterInfo
)
{...}
Parameters
[in] DmaAdapter
A pointer to a DMA_ADAPTER structure. This structure is the adapter object that represents the driver's system DMA channel. The caller obtained this pointer from a previous call to the IoGetDmaAdapter routine.
[in, out] AdapterInfo
A pointer to a caller-allocated DMA_ADAPTER_INFO structure. The routine writes information about the system DMA controller into this structure. The caller must set the Version member of this structure to DMA_ADAPTER_INFO_VERSION1 before calling GetDmaAdapterInfo.
Return value
GetDmaAdapterInfo returns STATUS_SUCCESS if the call is successful. Possible error return values include the following status code.
Return code | Description |
---|---|
|
The routine does not support the specified version of the DMA_ADAPTER_INFO_XXX structure. |
Remarks
GetDmaAdapterInfo is not a system routine that can be called directly by name. This routine can be called only by pointer from the address returned in a DMA_OPERATIONS structure. Drivers obtain the address of this routine by calling IoGetDmaAdapter with the Version member of the DeviceDescription parameter set to DEVICE_DESCRIPTION_VERSION3. If IoGetDmaAdapter returns NULL, the routine is not available on your platform.
GetDmaAdapterInfo retrieves the following information:
- The maximum number of elements in a scatter/gather list that the DMA controller can process in a single scatter/gather DMA operation.
- The width, in bits, of a DMA address.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available starting with Windows 8. |
Target Platform | Desktop |
Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | <= DISPATCH_LEVEL |