Power Management for Offload Targets
For an offload target, a device power state other than D0 (the fully powered state) might not be suitable for processing offloaded TCP connections. In this situation, the host stack initiates a terminate offload operation for all offloaded TCP connections before an OID_PNP_SET_POWER request is sent to the offload target.
An offload target should not return a value of NDIS_STATUS_SUCCESS for OID_PNP_SET_POWER until the terminate offload operation has completed for all offloaded TCP connections. The offload target can return a value of NDIS_STATUS_PENDING to complete the OID_PNP_SET_POWER request asynchronously. After the terminate offload operation has completed for all offloaded TCP connections, the offload target must call the NdisMOidRequestComplete function and return a value of NDIS_STATUS_SUCCESS to inform NDIS that the OID_PNP_SET_POWER request is complete.