次の方法で共有


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. WdfDmaTransactionInitializeUsingRequest WdfDmaTransactionInitialize、または WdfDmaTransactionInitializeUsingOffset を呼び出してトランザクション オブジェクトを初期化します。
  2. トランザクション オブジェクト WdfDmaTransactionSetChannelConfigurationCallback を呼び出します。
  3. WdfDmaTransactionExecute 呼び出します。
ドライバーが EvtDmaTransactionConfigureDmaChannel イベント コールバック関数 WdfDmaTransactionSetChannelConfigurationCallback を呼び出し、その後、ドライバーが WdfDmaTransactionRelease 呼び出した場合、コールバックはクリアされます。

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

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

必要条件

要件 価値
サポートされる最小クライアント Windows 8
ターゲット プラットフォーム 普遍
最小 KMDF バージョン 1.11
ヘッダー wdfdmatransaction.h (Wdf.h を含む)
図書館 Wdf01000.sys (フレームワーク ライブラリのバージョン管理を参照)。
IRQL <=DISPATCH_LEVEL
DDI コンプライアンス規則 する DriverCreate(kmdf)

こちらもご覧ください

EvtDmaTransactionConfigureDmaChannel

WdfDmaTransactionRelease