PRB: Wake on Pattern Match Feature Does Not Work with Intermediate Driver

This article was previously published under Q321254
This article has been archived. It is offered "as is" and will no longer be updated.
The Wake on Pattern Match feature stops working on an NDIS miniport that supports this feature if an NDIS intermediate (IM) driver is installed on the computer.
The Wake on Pattern Match feature is turned on by a protocol that issues an OID_PNP_ENABLE_WAKE_UP NDIS request. This object identifier (OID) is handled internally by NDIS, and the actual miniport driver never actually receives the OID. When an intermediate driver is introduced, the transport correctly sends the OID to the miniport edge of the intermediate driver, not to the original adapter miniport. However, because NDIS handles this OID internally, the intermediate driver never has the opportunity to propagate the OID down the stack, and therefore the original adapter miniport never turns on (enables) this feature.
If an NDIS intermediate driver can determine (through some other heuristic) that this feature has to be turned on, it can issue the NdisRequest to the original miniport itself during initialization or at some other appropriate time. However, this procedure must rely on some special knowledge about the operating environment that is not generally known by an intermediate driver. Therefore, this workaround may be available only under very limited circumstances.
This issue has been corrected in Microsoft Windows 2000 and Microsoft Windows XP.

Article ID: 321254 - Last Review: 02/27/2014 21:12:49 - Revision: 1.1

  • Microsoft Windows Millennium Edition Driver Development Kit
  • kbnosurvey kbarchive kbprb KB321254