Zurücksetzen der Hardware des Miniport-Treibers
Ein Miniporttreiber muss eine MiniportResetEx-Funktion bei NdisMRegisterMiniportDriver registrieren.
MiniportResetEx kann synchron oder asynchron mit einem Aufruf von NdisMResetComplete abgeschlossen werden (siehe folgende Abbildung).
MiniportResetEx sollte:
Deaktivieren Sie weitere Unterbrechungen.
Löschen Sie die Daten, die allen laufenden Gesendeten zugeordnet sind. Beispielsweise sollten auf einem Ringpuffer für ein DMA-Gerät (Bus-master Direct Memory Access) die Zeiger zum Senden von Puffern gelöscht werden. Deserialisierte und verbindungsorientierte Miniporttreiber müssen NDIS_STATUS_REQUEST_ABORTED für alle Sendeanforderungen in der Warteschlange zurückgeben.
Stellen Sie den Hardwarezustand und den internen Zustand des Miniporttreibers in den Zustand wieder her, der vor dem Zurücksetzungsvorgang vorhanden war.
Der Miniporttreiber ist für die Wiederherstellung des Hardwarezustands des Geräts zuständig, mit Ausnahme von Multicastadressen, Paketfiltern, Aufgabenauslagerungseinstellungen und Aktivierungsmustern. Diese Einstellung wird entweder vom Miniporttreiber oder vom NDIS wiederhergestellt. Der Miniporttreiber bestimmt, wer für die Wiederherstellung dieser Einstellungen verantwortlich ist, indem er einen booleschen Wert im AddressingReset-Parameter zurückgibt.
Wenn der Miniporttreiber im AddressingReset-ParameterFALSE zurückgibt, stellt der Miniporttreiber seine Multicastadressen, Paketfilter, Aufgabenauslagerungseinstellungen und Aktivierungsmuster wieder in ihren ursprünglichen Zustand zurück. Wenn der Miniporttreiber in AddressingResetTRUE zurückgibt, ruft NDIS die MiniportOidRequest-Funktion eines verbindungslosen Miniporttreibers oder die MiniportCoOidRequest-Funktion eines verbindungsorientierten Miniporttreibers auf, um die folgenden Konfigurationseinstellungen festzulegen:
Das Netzwerkpaket filtert durch eine festgelegte Anforderung von OID_GEN_CURRENT_PACKET_FILTER.
Die Multicastadressenliste über eine festgelegte Anforderung von OID_802_3_MULTICAST_LIST.
Task offload Kapselungseinstellungen über eine festgelegte Anforderung von OID_OFFLOAD_ENCAPSULATION.
Aktivierungsmuster für die Energieverwaltung über eine festgelegte Anforderung von OID_PNP_ADD_WAKE_UP_PATTERN. Hinweis Ab NDIS 6.20 müssen Aktivierungsmuster, die über OID_PM_ADD_WOL_PATTERN eingerichtet werden, vom Miniporttreiber wiederhergestellt werden.
Zugehörige Themen
Adapterzustände eines Miniporttreibers
Status und Vorgänge des Miniportadapters
Funktionen zum Zurücksetzen und Anhalten des Miniporttreibers