Power Management Enhancements in NDIS 6.30

NDIS 6.20 included power management new features and improvements to reduce computer power consumption. NDIS 6.30 extends the NDIS 6.20 power management support with the following capabilities, as described in Power Management (NDIS 6.30):

NDIS Packet Coalescing

Starting with NDIS 6.30, network adapters can support NDIS packet coalescing. This feature reduces the processing overhead and power consumption on a host system due to the reception of random broadcast or multicast packets.

For more information, see NDIS Packet Coalescing.

NDIS Selective Suspend

Starting with NDIS 6.30, the NDIS selective suspend interface allows NDIS to suspend an idle network adapter by transitioning the adapter to a low-power state. This enables the system to reduce the power overhead on the CPU and network adapter.

For more information, see NDIS Selective Suspend.

NDIS Wake Reason Status Indications

Starting with NDIS 6.30, miniport drivers issue an NDIS wake reason status indication (NDIS_STATUS_PM_WAKE_REASON) to notify NDIS and overlying drivers about the reason for a system wake-up event. If the network adapter generates a wake-up event, the miniport driver immediately issues this NDIS status indication when the system resumes to a full-power state.

Note  Support for NDIS wake reason status indications is optional for Mobile Broadband (MB) miniport drivers.

For more information, see NDIS Wake Reason Status Indications.

NDIS No Pause On Suspend

Starting with NDIS 6.30, miniport drivers can specify an attribute flag (NDIS_MINIPORT_ATTRIBUTES_NO_PAUSE_ON_SUSPEND) in the NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES structure. The driver passes a pointer to this structure in its call to the NdisMSetMiniportAttributes function.

If the miniport sets the NDIS_MINIPORT_ATTRIBUTES_NO_PAUSE_ON_SUSPEND attribute flag, NDIS does not call the miniport driver's MiniportPause function before the object identifier (OID) request of OID_PNP_SET_POWER is issued to the driver. When the miniport driver handles the OID request, it must not assume that it had been previously paused when preparing the miniport adapter for the transition to a low-power state.