NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA 函数 (netadapter.h)

NET_ADAPTER_RX_CAPABILITIES_INIT_SYSTEM_MANAGED_DMA 函数为要指定操作系统管理的接收缓冲区分配和附件以及内存映射的 DMA 的 net 适配器初始化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 功能结构分配给 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