次の方法で共有


NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA関数 (netadapter.h)

NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA 関数は、オペレーティング システムで管理される受信バッファーの割り当てと添付ファイル、およびメモリ マッピング用の DMA を指定するネット アダプターの NET_ADAPTER_RX_CAPABILITIES 構造体を初期化します。

構文

void NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA(
  [_Out_] NET_ADAPTER_RX_CAPABILITIES  *RxCapabilities,
  [_In_]  NET_ADAPTER_DMA_CAPABILITIES *DmaCapabilities,
  [_In_]  SIZE_T                       MaximumFrameSize,
  [_In_]  SIZE_T                       MaximumNumberOfQueues
);

パラメーター

[_Out_] RxCapabilities

ドライバーによって割り当てられた NET_ADAPTER_RX_CAPABILITIES 構造体へのポインター。

[_In_] DmaCapabilities

ドライバーによって割り当てられ、初期化された NET_ADAPTER_DMA_CAPABILITIES 構造体へのポインター。

[_In_] MaximumFrameSize

アダプターが受信できる最大フレーム サイズ (バイト単位)。

[_In_] MaximumNumberOfQueues

アダプターがサポートする受信キューの最大数。

戻り値

何一つ

備考

この関数は、NET_ADAPTER_RX_CAPABILITIES 構造体を初期化するために呼び出す 3 つの関数のうちの 1 つです。 クライアント ドライバーが呼び出す必要がある方法は、受信バッファーを割り当てる方法と、DMA を使用するかどうかによって異なります。

クライアント ドライバーは、オペレーティング システムが受信バッファーの割り当てと添付ファイルを実行する場合、および受信データ パスでも DMA を使用する場合は、NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA を呼び出して、NET_ADAPTER_RX_CAPABILITIES 構造体を初期化する必要があります。 この関数を呼び出すことによって、Rx 機能構造体の AllocationMode メンバーは NetRxFragmentBufferAllocationModeSystem に設定され、AttachmentMode メンバーは NetRxFragmentBufferAttachmentModeSystem に設定されます。

NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMAを呼び出す前に、ドライバーは NET_ADAPTER_DMA_CAPABILITIES 構造体を割り当て、NET_ADAPTER_DMA_CAPABILITIES_INITで初期化する必要があります。 この DMA 機能構造体は、NET_ADAPTER_RX_CAPABILITIES 構造体のメンバー DmaCapabilities に割り当てられます。

必要条件

要件 価値
ターゲット プラットフォーム 万国
最小 KMDF バージョン 1.25
ヘッダー netadapter.h (netadaptercx.h を含む)
IRQL PASSIVE_LEVEL

関連項目

NET_ADAPTER_RX_CAPABILITIES

NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED

NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED