PF 迷你埠驅動程式的 MiniportAddDevice 指導方針
本主題描述針對 PCI Express (PCIe) 實體函式 (PF) 的 Miniport 驅動程式撰寫 MiniportAddDevice 函式的指導方針。 PF 是網路介面卡的元件,支援單一根目錄 I/O 虛擬化 (SR-IOV) 。
注意 這些指導方針僅適用于 PF 迷你埠驅動程式。 如需 PCIe 虛擬函式 (VF) 介面卡的迷你埠驅動程式初始化指導方針,請參閱 初始化 VF 迷你埠驅動程式。
隨插即用 (PnP) 管理員會呼叫 NDIS AddDevice函式,為網路介面卡建立功能裝置物件 (FDO) 。 如果 PF 迷你埠驅動程式在呼叫NdisMRegisterMiniportDriver時註冊MiniportAddDevice進入點,NDIS 會呼叫驅動程式的MiniportAddDevice函式。
呼叫 MiniportAddDevice 時,PF 迷你埠驅動程式可以配置 SR-IOV 的額外軟體資源,以及網路介面卡 (NIC) 交換器。 一般而言,這些是必須在 NDIS 呼叫驅動程式 的 MiniportInitializeEx 函式之前配置的資源。
驅動程式可以在 對 MiniportAddDevice的呼叫內容中執行下列動作:
PF 迷你埠驅動程式可以呼叫 NdisReadConfiguration ,從登錄讀取 SR-IOV 和 NIC 交換器組態設定。 這些組態設定是透過標準化 SR-IOV 關鍵字來定義。 如需這些關鍵字的詳細資訊,請參閱 SR-IOV 的標準化 INF 關鍵字。
根據這些組態設定,PF 迷你埠驅動程式會為 SR-IOV 網路介面卡配置額外的軟體資源。
注意 在 PCI 設定空間中實際配置硬體資源和啟用 SR-IOV,必須只能在 MiniportInitializeEx呼叫的內容中完成。 由於呼叫 MiniportAddDevice 時,網路介面卡的記憶體對應 I/O (MMIO) 空間未初始化,因此在呼叫 MiniportInitializeEx 之前,迷你埠驅動程式不得讀取或寫入介面卡。