As a set, the OID_PNP_ENABLE_WAKE_UP OID specifies the wake-up capabilities that a miniport driver should enable in a network adapter.
As a query, OID_PNP_ENABLE_WAKE_UP obtains the current wake-up capabilities that are enabled for a network adapter.
The InformationBuffer member of the NDIS_OID_REQUEST structure is a bitmask of flags that can be used to enable a combination of wake-up events:
When set, specifies that the miniport driver should enable a network adapter to signal a wake-up event on receipt of a magic packet. (A magic packet is a packet that contains 16 contiguous copies of the receiving network adapter's Ethernet address.) When cleared, specifies that the miniport driver should disable the network adapter from signaling such a wake-up event.
When set, specifies that the miniport driver should enable a network adapter to signal a wake-up event on receipt of a packet that contains a pattern specified by the protocol with OID_PNP_ADD_WAKE_UP_PATTERN. When cleared, specifies that the miniport driver should disable the network adapter from signaling such a wake-up event.
Reserved. NDIS ignores this flag.
A protocol driver uses the network adapter's wake-up capabilities in NDIS_BIND_PARAMETERS to enable the associated network adapter's wake-up capabilities. A protocol driver can also query this OID to determine which wake-up capabilities are enabled for a network adapter.
NDIS does not immediately enable the wake-up capabilities that a protocol driver specifies. Instead, NDIS keeps tracks of the wake-up capabilities that the protocol driver enabled and, just before the network adapter transitions to a low-power state, NDIS sends an OID_PNP_ENABLE_WAKE_UP set request to the miniport driver to enable the appropriate wake-up events.
Before the network adapter transitions to a low-power state (that is, before NDIS sends the miniport driver an OID_PNP_SET_POWER request), NDIS sends the miniport driver an OID_PNP_ENABLE_WAKE_UP request to enable the appropriate wake-up capabilities.
The miniport driver must take the appropriate device-dependent steps to enable or disable wake-up events on the network adapter.
The miniport driver should clear the wake-up capabilities that NDIS set with OID_PNP_ENABLE_WAKE_UP when the system is resumed. The wake-up capabilities should not be persisted across resumes. If wake-up capabilities are enabled, NDIS explicitly sets OID_PNP_ENABLE_WAKE_UP before the miniport transitions to the low-power state.
An intermediate driver in which the upper edge receives this OID request must always propagate the request to the underlying miniport driver by calling the NdisOidRequest or NdisCoOidRequest function.
|Supported in NDIS 6.0 and 6.1. For NDIS 6.20 and later, use OID_PM_PARAMETERS instead).|