가상 함수의 전원 상태 설정
오버리싱 드라이버는 네트워크 어댑터에서 지정된 PCI Express(PCIe) VF(가상 함수)의 전원 상태를 변경하기 위해 OID_SRIOV_SET_VF_POWER_STATE OID(개체 식별자) 집합 요청을 실행합니다. 전원 상태를 변경하는 것은 권한 있는 작업이므로 오버리싱 드라이버는 네트워크 어댑터에서 PCIe PF(물리적 함수)의 미니포트 드라이버에 이 OID 집합 요청을 실행합니다. PF 미니포트 드라이버는 VF에서 지정된 전원 상태를 설정합니다.
예를 들어 가상화 스택은 VF에 연결된 Hyper-V 자식 파티션의 전원 상태를 관리합니다. 스택은 PF 미니포트 드라이버에 OID_SRIOV_SET_VF_POWER_STATE 실행하여 전원 상태를 변경합니다.
OID_SRIOV_SET_VF_POWER_STATE OID 집합 요청을 실행하기 전에 오버리싱 드라이버는 다음과 같은 방식으로 NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS 구조체의 멤버를 설정해야 합니다.
VFId 멤버는 정보를 읽을 VF의 식별자로 설정해야 합니다.
PowerState 멤버는 VF가 전환해야 하는 전원 상태로 설정해야 합니다.
네트워크 어댑터에 WAKE# 신호(PCI Express 버스의 경우) 또는 PME# 신호(PCI 버스)가 저전력 상태로 전환될 때 어설션되어야 하는 경우 WakeEnable 멤버를 TRUE로 설정해야 합니다. 그렇지 않으면 이 멤버를 FALSE로 설정해야 합니다.
PF 미니포트 드라이버가 이 OID 집합 요청을 발급하는 경우 다음 지침을 따라야 합니다.
PF 미니포트 드라이버는 NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS 구조체의 VFId 멤버에 의해 지정된 VF에 이전에 할당된 리소스가 있는지 확인해야 합니다. PF 미니포트 드라이버는 OID_NIC_SWITCH_ALLOCATE_VF OID 메서드 요청 중에 VF에 대한 리소스를 할당합니다. 지정된 VF가 할당된 상태가 아닌 경우 드라이버는 OID 요청에 실패해야 합니다.
전원 상태 작업은 지정된 VF에만 영향을 주어야 합니다. 이 작업은 동일한 네트워크 어댑터의 다른 VF 또는 PF에 영향을 미치지 않아야 합니다.