Поделиться через


макрос NDIS_MAKE_RID (ndis.h)

Макрос NDIS_MAKE_RID создает значение NDIS_VF_RID из сегмента PCI Express (PCIe), шины, устройства и номера функций. Минипорт-драйвер использует это значение в качестве идентификатора запроса PCIe (RID) для виртуальной функции PCIe сетевого адаптера (VF).

Синтаксис

void NDIS_MAKE_RID(
   _Segment,
   _Bus,
   _Function
);

Параметры

_Segment

Номер сегмента PCIe для группы автобусов PCIe, на котором подключено устройство. Сегмент PCIe — это набор автобусов PCIe, которые совместно используют пространство конфигурации.

_Bus

Номер шины PCIe, на котором подключен сетевой адаптер.

_Function

Номер функции логического устройства в сетевом адаптере.

Возвращаемое значение

NDIS_MAKE_RID возвращает значение NDIS_VF_RID, созданное из параметров.

Замечания

При обработке запроса OID OID_NIC_SWITCH_ALLOCATE_VFмини-драйвер для физической функции PCIe использует макрос NDIS_MAKE_RID для создания значения идентификатора запроса PCIe (RID) для VF. Драйвер получает сегмент PCIe, автобус, устройство и номера функций для VF путем вызова NdisMGetVirtualFunctionLocation.

Заметка

Если независимый поставщик оборудования (IHV) предоставляет драйвер виртуальной шины (VBD) в рамках пакета драйвера SR-IOV , его драйвер минипорта PF не должен вызывать NdisMGetVirtualFunctionLocation. Вместо этого драйвер должен интерфейс с VBD через частный канал связи и запросить вызов VBD GetLocation. Эта функция предоставляется из интерфейса GUID_PCI_VIRTUALIZATION_INTERFACE, поддерживаемого базовым драйвером шины PCI.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается в NDIS 6.30 и более поздних версиях.
целевая платформа Настольный
заголовка ndis.h

См. также

NdisMGetVirtualFunctionLocation

OID_NIC_SWITCH_ALLOCATE_VF