PutDmaAdapter ルーチンは、以前に IoGetDmaAdapter によって割り当てられた DMA_ADAPTER 構造体解放します。
構文
PPUT_DMA_ADAPTER PputDmaAdapter;
void PputDmaAdapter(
[in] PDMA_ADAPTER DmaAdapter
)
{...}
パラメーター
[in] DmaAdapter
解放する DMA_ADAPTER 構造体へのポインター。
戻り値
何一つ
備考
PutDmaAdapter は、名前で直接呼び出すことができるシステム ルーチンではありません。 このルーチンは、DMA_OPERATIONS 構造体で返されたアドレスからのポインターによってのみ呼び出されます。 ドライバーは、IoGetDmaAdapterを呼び出すことによって、このルーチンのアドレスを取得します。
PutDmaAdapter は、以前に IoGetDmaAdapter によって割り当てられた DMA アダプター オブジェクト解放します。 ドライバーは、DMA 操作を完了し、このアダプター オブジェクト 割り当てられているマップ レジスタと共通バッファーを解放した後、PutDmaAdapter を呼び出す必要があります。 PutDmaAdapter 戻った後、ドライバーは DMA アダプター オブジェクトを使用できなくなります。
ドライバーは、PnP IRP_MN_STOP_DEVICE 要求 受信したときに PutDmaAdapter を呼び出す必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 以降で使用できます。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | IrqlDispatch(wdm) |
関連項目
IoGetDmaAdapter の