GetDmaAdapterInfo ルーチンは、システム DMA チャネルのハードウェア機能に関する情報を取得します。
構文
PGET_DMA_ADAPTER_INFO PgetDmaAdapterInfo;
NTSTATUS PgetDmaAdapterInfo(
[in] PDMA_ADAPTER DmaAdapter,
[in, out] PDMA_ADAPTER_INFO AdapterInfo
)
{...}
パラメーター
[in] DmaAdapter
DMA_ADAPTER 構造体へのポインター。 この構造体は、ドライバーのシステム DMA チャネルを表すアダプター オブジェクトです。 呼び出し元は、IoGetDmaAdapter ルーチンへの以前の呼び出しからこのポインターを取得しました。
[in, out] AdapterInfo
呼び出し元によって割り当てられた DMA_ADAPTER_INFO 構造体へのポインター。 このルーチンは、システム DMA コントローラーに関する情報をこの構造体に書き込みます。 呼び出し元は、GetDmaAdapterInfo を呼び出す前に、この構造体の Version メンバーDMA_ADAPTER_INFO_VERSION1に設定する必要があります。
戻り値
GetDmaAdapterInfo は、呼び出しが成功した場合にSTATUS_SUCCESSを返します。 考えられるエラー戻り値には、次の状態コードが含まれます。
リターン コード | 形容 |
---|---|
|
ルーチンは、指定されたバージョンの DMA_ADAPTER_INFO_XXX 構造体をサポートしていません。 |
備考
GetDmaAdapterInfo は、名前で直接呼び出すことができるシステム ルーチンではありません。このルーチンは、DMA_OPERATIONS 構造体で返されたアドレスからのポインターによってのみ呼び出すことができます。ドライバーは、DeviceDescription パラメーターの Version メンバーをDEVICE_DESCRIPTION_VERSION3に設定して、IoGetDmaAdapter を呼び出すことによって、このルーチンのアドレスを取得します。 IoGetDmaAdapter が NULL 返す場合、このルーチンはプラットフォームでは使用できません。
GetDmaAdapterInfo は、次の情報を取得します。
- DMA コントローラーが 1 つの散布図/収集 DMA 操作で処理できる、散布図/収集リスト内の要素の最大数。
- DMA アドレスの幅 (ビット単位)。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 以降で使用できます。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
IRQL | <= DISPATCH_LEVEL |
関連項目
IoGetDmaAdapter の