次の方法で共有


DMA_RESET_HANDLER コールバック関数 (netdma.h)

NetDMA インターフェイスはサポートされていません

Windows 8 以降で使用できます。

 
ProviderResetChannel 関数は、DMA チャネルが割り当てられた後に存在していた初期状態に DMA チャネルをリセットします。

構文

DMA_RESET_HANDLER DmaResetHandler;

NTSTATUS DmaResetHandler(
  [in] PVOID ProviderChannelContext
)
{...}

パラメーター

[in] ProviderChannelContext

DMA チャネルのコンテキスト領域を識別するポインター。 DMA プロバイダーは、このハンドルを NetDMA の pProviderChannelContext パラメーターで指定された場所に返しました。ProviderAllocateDmaChannel 関数を します。

戻り値

ProviderResetChannel は、次のいずれかの状態値を返します。

リターン コード 形容
STATUS_SUCCESS
操作が正常に完了しました。
STATUS_UNSUCCESSFUL
指定されていない理由で操作が失敗しました。

備考

ProviderResetChannel 関数は、NetDMA プロバイダーの省略可能な関数です。 NetDMA インターフェイスは、DMA プロバイダー ドライバーの ProviderResetChannel 関数 (存在する場合) を呼び出して、DMA チャネルをリセットします。

ProviderResetChannelでは、NetDMA プロバイダーは、現在の DMA 記述子に関連付けられているデータの転送を完了せずに、アクティブな転送を直ちに終了する必要があります。 完了状態レポートが有効になっている場合、DMA エンジンは、CompletionVirtualAddress および CompletionPhysicalAddress メンバーで指定されたアドレスに、NetDmaTransferStatusHalted 状態を書き込みます。 NET_DMA_CHANNEL_PARAMETERS 構造体。

リセット操作が完了した後、DMA チャネルは、チャネルが割り当てられた後に存在していた初期状態である必要があります。 NetDMA インターフェイスが ProviderResetChannel 呼び出した後、DMA プロバイダーは、以前に送信された DMA 記述子にアクセスできません。 ProviderStartDma 関数を呼び出すには、NetDMA インターフェイスの DMA チャネルの準備が整っている必要があります。

NetDMA は、IRQL = DISPATCH_LEVEL で ProviderResetChannel < 呼び出します。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista の NetDMA 1.0 ドライバーでサポートされています。
ターゲット プラットフォーム ウィンドウズ
ヘッダー netdma.h (Netdma.h を含む)
IRQL <= DISPATCH_LEVEL

関連項目

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

ProviderStartDma