NDIS_MAKE_RID宏 (ndis.h)

NDIS_MAKE_RID宏从 PCI Express (PCIe) 段、总线、设备和函数编号生成NDIS_VF_RID值。 微型端口驱动程序将此值用作网络适配器的 PCIe 虚拟函数 (VF) 的 PCIe 请求程序 ID (RID) 。

语法

void NDIS_MAKE_RID(
   _Segment,
   _Bus,
   _Function
);

参数

_Segment

设备的 PCIe 总线组的 PCIe 段号。 PCIe 段是一组共享配置空间的 PCIe 总线。

_Bus

连接到网络适配器的总线的 PCIe 总线号。

_Function

网络适配器上的逻辑设备的函数号。

返回值

NDIS_MAKE_RID返回从参数构造的NDIS_VF_RID值。

注解

当它处理 OID_NIC_SWITCH_ALLOCATE_VF的 OID 请求时,PCIe 物理函数的微型端口驱动程序 (PF) 使用 NDIS_MAKE_RID 宏为 VF 创建 PCIe 请求程序 ID (RID) 值。 驱动程序通过调用 NdisMGetVirtualFunctionLocation 检索 VF 的 PCIe 段、总线、设备和函数号。

注意

如果独立硬件供应商 (IHV) 提供虚拟总线驱动程序 (VBD) 作为 SR-IOV 驱动程序包的一部分,则其 PF 微型端口驱动程序不得调用 NdisMGetVirtualFunctionLocation。 相反,驱动程序必须通过专用通信通道与 VBD 接口,并请求 VBD 调用 GetLocation。 此函数从基础 PCI 总线驱动程序支持的 GUID_PCI_VIRTUALIZATION_INTERFACE 接口公开。

要求

   
最低受支持的客户端 在 NDIS 6.30 及更高版本中受支持。
目标平台 桌面
Header ndis.h

另请参阅

NdisMGetVirtualFunctionLocation

OID_NIC_SWITCH_ALLOCATE_VF