функция NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED (netadapter.h)
Функция NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED инициализирует структуру NET_ADAPTER_RX_CAPABILITIES для сетевого адаптера, который хотел бы указать выделение и вложение буфера приема, управляемый драйвером.
Синтаксис
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
);
Параметры
[_Out_] RxCapabilities
Указатель на структуру, выделенную драйвером NET_ADAPTER_RX_CAPABILITIES .
[_In_] EvtAdapterReturnRxBuffer
Указатель на функцию обратного вызова EVT_NET_ADAPTER_RETURN_RX_BUFFER драйвера клиента. Дополнительные сведения см. в разделе «Примечания».
[_In_] MaximumFrameSize
Максимальный размер кадра (в байтах), который может получить адаптер.
[_In_] MaximumNumberOfQueues
Максимальное количество очередей получения, поддерживаемых адаптером.
Возвращаемое значение
None
Remarks
Эта функция является одной из трех возможных функций для инициализации структуры NET_ADAPTER_RX_CAPABILITIES . Вызов драйвера клиента зависит от того, как он будет выделять буферы получения и использовать DMA.
Драйвер клиента должен вызвать NET_ADAPTER_RX_CAPABILITIES_INIT_DRIVER_MANAGED для инициализации структуры NET_ADAPTER_RX_CAPABILITIES , если он хочет выполнить выделение буфера приема и вложение вручную. При вызове этой функции для элемента AllocationMode структуры возможностей Rx устанавливается значение NetRxFragmentBufferAllocationModeDriver , а для элемента AttachmentMode — значение NetRxFragmentBufferAttachmentModeDriver. В этом случае он также должен предоставить указатель на свою EVT_NET_ADAPTER_RETURN_RX_BUFFER функцию обратного вызова в структуре, чтобы операционная система вызывала после завершения работы системы с буфером приема.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,25 |
Минимальная версия UMDF | 2.33 |
Верхняя часть | netadapter.h (включая netadaptercx.h) |
IRQL | PASSIVE_LEVEL |