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 |
Header | netadapter.h (netadaptercx.h を含む) |
IRQL | PASSIVE_LEVEL |