NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED function (netadapter.h)
The NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED function initializes a NET_ADAPTER_RX_CAPABILITIES structure for a net adapter that would like to specify driver-managed receive buffer allocation and attachment.
Syntax
void NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED(
[_Out_] NET_ADAPTER_RX_CAPABILITIES *RxCapabilities,
[_In_] PFN_NET_ADAPTER_RETURN_RX_BUFFER EvtAdapterReturnRxBuffer,
[_In_] SIZE_T MaximumFrameSize,
[_In_] SIZE_T MaximumNumberOfQueues
);
Parameters
[_Out_] RxCapabilities
A pointer to a driver-allocated NET_ADAPTER_RX_CAPABILITIES structure.
[_In_] EvtAdapterReturnRxBuffer
A pointer to the client driver's EVT_NET_ADAPTER_RETURN_RX_BUFFER callback function. For more information, see the Remarks section.
[_In_] MaximumFrameSize
The maximum frame size, in bytes, that the adapter can receive.
[_In_] MaximumNumberOfQueues
The maximum number of receive queues that the adapter supports.
Return value
None
Remarks
This function is one of three possible functions to call in order to initialize a NET_ADAPTER_RX_CAPABILITIES structure. Which one the client driver should call depends on how it would like to allocate receive buffers and if it would like to use DMA.
The client driver must call NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED to initialize its NET_ADAPTER_RX_CAPABILITIES structure if it would like to perform manual receive buffer allocation and attachment. By calling this function, the Rx capabilities structure's AllocationMode member is set to NetRxFragmentBufferAllocationModeDriver and the AttachmentMode member is set to NetRxFragmentBufferAttachmentModeDriver. In this case, it must also provide a pointer to its EVT_NET_ADAPTER_RETURN_RX_BUFFER callback function in the structure for the operating system to invoke once the system has finished with the receive buffer.
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Minimum KMDF version | 1.25 |
Minimum UMDF version | 2.33 |
Header | netadapter.h (include netadaptercx.h) |
IRQL | PASSIVE_LEVEL |