次の方法で共有


WdfDmaTransactionSetChannelConfigurationCallback 関数 (wdfdmatransaction.h)

[KMDF にのみ適用]

WdfDmaTransactionSetChannelConfigurationCallback メソッドは、システム モード DMA トランザクションのチャネル構成イベント コールバック関数を登録します。

構文

void WdfDmaTransactionSetChannelConfigurationCallback(
  [in]           WDFDMATRANSACTION                             DmaTransaction,
  [in, optional] PFN_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL ConfigureRoutine,
  [in, optional] PVOID                                         ConfigureContext
);

パラメーター

[in] DmaTransaction

チャネル構成コールバックを設定またはクリアする、初期化された DMA トランザクション オブジェクトへのハンドル。

[in, optional] ConfigureRoutine

ドライバーの EvtDmaTransactionConfigureDmaChannel イベント コールバック関数へのポインター。クリアするには NULL。

[in, optional] ConfigureContext

ドライバーの EvtDmaTransactionConfigureDmaChannel イベント コールバック関数 (NULL) に提供されるコンテキストを含むバッファーへのポインター。

戻り値

なし

解説

このメソッドを使用すると、システム DMA コントローラーをプログラミングする前に、ドライバーでアダプター構成をカスタマイズできます。

通常、 I/O キュー イベント コールバック関数内から、ドライバーは次の手順をこの順序で実行します。

  1. WdfDmaTransactionInitializeUsingRequestWdfDmaTransactionInitialize、または WdfDmaTransactionInitializeUsingOffset を呼び出して、トランザクション オブジェクトを初期化します。
  2. トランザクション オブジェクトで WdfDmaTransactionSetChannelConfigurationCallback を呼 び出します。
  3. WdfDmaTransactionExecute を呼び出します。
ドライバーが WdfDmaTransactionSetChannelConfigurationCallback を呼び出して EvtDmaTransactionConfigureDmaChannel イベント コールバック関数を指定し、その後、ドライバーが WdfDmaTransactionRelease を呼び出した場合、コールバックはクリアされます。

WdfDmaTransactionSetChannelConfigurationCallback は、システム モード DMA プロファイルを指定する DMA イネーブラーと共に使用する必要があります。

ドライバーがWindows 8より前のオペレーティング システムでこのメソッドを呼び出すと、フレームワークの検証ツールによってエラーが報告されます。

要件

要件
サポートされている最小のクライアント Windows 8
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.11
Header wdfdmatransaction.h (Wdf.h を含む)
Library Wdf01000.sys (「Framework ライブラリのバージョン管理」を参照)。
IRQL <=DISPATCH_LEVEL
DDI コンプライアンス規則 DriverCreate(kmdf)

こちらもご覧ください

EvtDmaTransactionConfigureDmaChannel

WdfDmaTransactionRelease