Melden von Statusanzeigefunktionen für Wake Reason
Ab NDIS 6.30 muss der Miniporttreiber melden, ob er einen NDIS-Aktivierungsgrund status Anzeige (NDIS_STATUS_PM_WAKE_REASON) ausgeben kann, um Aktivierungsereignisse zu melden, die durch eine der folgenden Ursachen verursacht werden:
Der Netzwerkadapter hat ein Paket empfangen, das einem Wake-on-LAN-Muster (WOL) entspricht. Dies schließt den Empfang eines Pakets ein, das mit einem Empfangsfilter übereinstimmt, der über eine OID-Set-Anforderung (Object Identifier) von OID_GEN_CURRENT_PACKET_FILTER angegeben wird.
Hinweis Für diese Art von Aktivierungsgrund status Angabe muss der Netzwerkadapter in der Lage sein, das empfangene Paket zu speichern. Der Treiber muss das empfangene Paket innerhalb der status-Angabe zurückgeben.
Der Netzwerkadapter hat ein medienspezifisches Ereignis erkannt, z. B. eine Trennung der Zuordnung zu einem 802.11-Zugriffspunkt (AP) oder den Empfang einer SMS-Nachricht (Mobile Broadband, SMS).
Der Netzwerkadapter hat ein weiteres aktiviertes Ereignis erkannt, das nicht spezifisch für ein WOL-Muster oder medientyp (medienunabhängiges Ereignis) ist. Der Miniporttreiber gibt z. B. die NDIS_STATUS_PM_WAKE_REASON status Angabe aus, wenn er den Netzwerkadapter zum Erkennen einer Medienverbindung oder -trennung aktiviert hat.
Hinweis Unterstützung für NDIS-Aktivierungsgrund status Ist für Miniporttreiber für mobiles Breitband (MB) optional.
Wenn NDIS die MiniportInitializeEx-Funktion des Treibers aufruft, meldet der Miniporttreiber seinen Aktivierungsgrund status Denkfunktionen, indem er die folgenden Schritte ausführt:
Der Miniporttreiber initialisiert eine NDIS_PM_CAPABILITIES-Struktur mit den Energieverwaltungsfunktionen der zugrunde liegenden Hardware.
Um die Unterstützung für Aktivierungsgrund status Anzeigen zu aktivieren, muss der Miniporttreiber die Member der NDIS_PM_CAPABILITIES-Struktur wie folgt festlegen:
Der Miniporttreiber muss NDIS_PM_CAPABILITIES_REVISION_2 und NDIS_SIZEOF_NDIS_PM_CAPABILITIES_REVISION_2 für die Revision und die Länge der NDIS_PM_CAPABILITIES-Struktur innerhalb des Headerelements der Struktur angeben.
Wenn der Netzwerkadapter das empfangene Paket speichern kann, das ein Systemreaktivierungsereignis verursacht hat, legt der Miniporttreiber das flag NDIS_PM_WAKE_PACKET_INDICATION_SUPPORTED im Flags-Member dieser Struktur fest.
Wenn dieses Flag festgelegt ist, muss der Netzwerkadapter in der Lage sein, das empfangene Paket zu speichern, durch das der Adapter ein Aktivierungsereignis generiert hat. Darüber hinaus muss der Miniporttreiber in der Lage sein, folgendes mit diesem Paket auszuführen, nachdem der Netzwerkadapter in den Zustand "Full-Power" gewechselt wurde:
Der Miniporttreiber muss das Paket durch Aufrufen von NdisMIndicateReceiveNetBufferLists angeben können.
Der Miniporttreiber muss in der Lage sein, eine NDIS_STATUS_PM_WAKE_REASON status Anzeige auszusetzen, und das Paket muss mit einer Angabe übergeben werden.
Der Miniporttreiber legt den MaxWoLPacketSaveBuffer-Member auf die maximale Größe des Puffers in Bytes fest, der das WOL-Paket enthält, das ein Systemreaktivierungsereignis verursacht hat.
Der Wert des MaxWoLPacketSaveBuffer-Elements muss kleiner oder gleich der Größe (in Byte) des MAXIMALEN MTU- und MAC-Headers (Media Access Control) für die Netzwerkmedien sein. Der Treiber meldet die MTU-Größe über OID-Abfrageanforderungen von OID_GEN_MAXIMUM_FRAME_SIZE.
Der Miniporttreiber legt supportedWakeUpEvents auf die medienunabhängigen Aktivierungsereignisse fest, die der Netzwerkadapter unterstützt, z. B. das Generieren eines Aktivierungsereignisses, wenn der Adapter mit der Netzwerkschnittstelle verbunden wird.
Der Miniporttreiber legt mediaSpecificWakeUpEvents auf die medienspezifischen Aktivierungsereignisse fest, die vom Netzwerkadapter unterstützt werden. Zu diesen Ereignissen gehört das Generieren eines Aktivierungsereignisses, wenn die Zuordnung des 802.11-Adapters zum AP aufgehoben wird.
Der Miniporttreiber initialisiert eine NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur und legt denPowerManagementCapabilitiesEx-Member auf die Adresse der initialisierten NDIS_PM_CAPABILITIES-Struktur fest.
Der Miniporttreiber ruft die NdisMSetMiniportAttributes-Funktion auf, um seine Energieverwaltungsfunktionen zu registrieren. Wenn der Miniporttreiber diese Funktion aufruft, wird der MiniportAttributes-Parameter auf die Adresse der NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-Struktur festgelegt.
Die Methode, die von Miniporttreibern verwendet wird, um den Aktivierungsgrund status Anzeigefunktionen zu melden, basiert auf der NDIS 6.20-Methode zum Melden von Energieverwaltungsfunktionen. Weitere Informationen zu dieser Methode finden Sie unter Reporting Power Management Capabilities.For more information about this method, see Reporting Power Management Capabilities.
Weitere Informationen zum Adapterinitialisierungsprozess finden Sie unter Initialisieren eines Miniportadapters.
Weitere Informationen zum Melden von Energieverwaltungsfunktionen finden Sie unter Reporting Power Management Capabilities( Reporting Power Management Capabilities).