NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA函式 (netadapter.h)
NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA 函式會針對想要指定作系統管理的接收緩衝區配置和附件,以及記憶體對應的 DMA,初始化 net adapter 的 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 結構。 用戶端驅動程序應該呼叫哪一個,取決於其配置接收緩衝區的方式,以及是否要使用 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 功能結構接著會指派給 DmaCapabilitiesNET_ADAPTER_RX_CAPABILITIES 結構的成員。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
最低 KMDF 版本 | 1.25 |
標頭 | netadapter.h (包括 netadaptercx.h) |
IRQL | PASSIVE_LEVEL |