次の方法で共有


PPUT_DMA_ADAPTER コールバック関数 (wdm.h)

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 以降で使用できます。
対象プラットフォーム デスクトップ
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 IrqlDispatch(wdm)

こちらもご覧ください

DMA_ADAPTER

DMA_OPERATIONS

IoGetDmaAdapter