PFREE_ADAPTER_CHANNEL コールバック関数 (wdm.h)
FreeAdapterChannel ルーチンは、ドライバーが現在の IRP を満たすために必要なすべての DMA 操作を完了したときに、システム DMA コントローラーを解放します。
構文
PFREE_ADAPTER_CHANNEL PfreeAdapterChannel;
void PfreeAdapterChannel(
[in] PDMA_ADAPTER DmaAdapter
)
{...}
パラメーター
[in] DmaAdapter
バス マスター アダプターまたは DMA コントローラー 表す IoGetDmaAdapter によって返される DMA_ADAPTER 構造体へのポインター。
戻り値
何一つ
備考
FreeAdapterChannel は、名前で直接呼び出すことができるシステム ルーチンではありません。 このルーチンは、DMA_OPERATIONS 構造体で返されたアドレスからのポインターによってのみ呼び出されます。 ドライバーは、IoGetDmaAdapterを呼び出すことによって、このルーチンのアドレスを取得します。
ドライバーは、すべてのデータを転送し、FlushAdapterBuffersを呼び出した後、FreeAdapterChannel を呼び出して、AllocateAdapterChannel の呼び出しで以前に割り当てられたシステム DMA コントローラー解放します。
FreeAdapterChannel は、AllocateAdapterChannel への以前の呼び出しによって割り当てられたマップ レジスタ解放します。 ドライバーは、AdapterControl ルーチンが KeepObject 返す場合にのみ、このルーチンを呼び出します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 以降で使用できます。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
IRQL | DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | IrqlDispatch(storport)、IrqlDispatch(storport)、IrqlDispatch(wdm) |
関連項目
AllocateAdapterChannel の
IoGetDmaAdapter の