Freigeben über


NDIS_WDI_RX_INORDER_DATA_IND Rückruffunktion (dot11wdi.h)

Wichtig

Dieses Thema ist Teil des in Windows 10 veröffentlichten WDI-Treiber modells. Das WDI-Treibermodell befindet sich im Wartungsmodus und erhält nur Korrekturen mit hoher Priorität. WiFiCx- ist das in Windows 11 veröffentlichte Wi-Fi Treibermodell. Es wird empfohlen, wiFiCx zu verwenden, um die neuesten Features nutzen zu können.

Die Rückruffunktion NdisWdiRxInorderDataIndication informiert das RxMgr darüber, dass eine Liste der angegebenen RX-Frames in der richtigen Reihenfolge vorhanden ist.

Dies ist ein Rückruf in NDIS_WDI_DATA_API.

Syntax

NDIS_WDI_RX_INORDER_DATA_IND NdisWdiRxInorderDataInd;

void NdisWdiRxInorderDataInd(
  [in]  NDIS_HANDLE NdisMiniportDataPathHandle,
  [in]  WDI_RX_INDICATION_LEVEL IndicationLevel,
  [in]  WDI_PEER_ID PeerId,
  [in]  WDI_EXTENDED_TID ExTid,
  [in]  PNDIS_RECEIVE_THROTTLE_PARAMETERS pRxThrottleParams,
  [out] NDIS_STATUS *pWifiStatus
)
{...}

Parameter

[in] NdisMiniportDataPathHandle

Der an den IHV-Miniport übergebene NdisMiniportDataPathHandle in MiniportWdiTalTxRxInitialize.

[in] IndicationLevel

Ein WDI_RX_INDICATION_LEVEL Enumerationswert, der die RX-Anzeigeebene angibt.

[in] PeerId

Die Peer-ID.

[in] ExTid

Die erweiterte TID.

[in] pRxThrottleParams

Zeiger auf eine NDIS_RECEIVE_THROTTLE_PARAMETERS Struktur.

[out] pWifiStatus

Status von WDI für die NdisWdiRxInorderDataIndication. Weitere Informationen finden Sie im Abschnitt Anmerkungen.

Rückgabewert

Nichts

Bemerkungen

Die RxEngine verwendet WDI_RX_INDICATION_DISPATCH_FIRST_OF_DPC, wenn diese Angabe die erste Datenanzeige NdisWdiRxInorderDataIndication) eines DPC ist. Nachfolgende Datenanzeigen verwenden WDI_RX_INDICATION_DISPATCH_GENERAL. Wenn Hinweise auf passiver Ebene gemacht werden, muss die RxEngine WDI_RX_INDICATION_PASSIVE verwenden. Angaben im Zusammenhang mit MiniportWdiRxResume müssen WDI_RX_INDICATION_FROM_RX_RESUME_FRAMES verwenden. Dieser Parameter gibt die RxMgr-Informationen an, die zum Einschränken der Lebensdauer von DPCs erforderlich sind.

WDI_RX_INDICATION_FLAG_RESOURCES kann mit den anderen Enumerationswerten bitweise oRediert werden, damit RxMgr NDIS_RECEIVE_FLAG_RESOURCES Flags für die Datenanzeige festlegen kann.

Die RxMgr gibt MiniportWdiRxGetMpdus Anforderungen zum Abrufen der empfangenen Daten aus.

Wenn das Ziel nicht in der Lage ist, die RX-Frameklassifizierung zu verwenden und separate Indikationen für RX-Frames aus verschiedenen PeerID/TID-Paaren zu verwenden, wird die PeerID auf einen Wildcardwert (0xFFFF) festgelegt, und TID wird auf WDI_EXT_TID_UNKNOWN festgelegt.

In dem Fall, in dem das Ziel/TAL die volle Verantwortung für die Neuanordnung der Pufferverwaltung übernimmt, führt er auch alle Verwerfenaktionen aus. Es ist kein MPDU-Status erforderlich.

PNDIS_RECEIVE_THROTTLE_PARAMETERS verweist auf die ReceiveThrottleParameters, die von NDIS für Unterbrechungen übergeben wird, die bei NDIS registriert sind. Dies muss nur für WDI_RX_INDICATION_DISPATCH_FIRST_OF_DPC festgelegt werden. Alle anderen Datenanzeigen sollten NULL übergeben, da dieser Parameter ignoriert wird.

Wenn der RxMgr die WDI_STATUS auf Erfolg festlegt, kann die RxEngine im Kontext desselben DPC weitere Datenanzeigen erstellen. Wenn der RxMgr die WDI_STATUS angehalten festlegt, darf die RxEngine keine Datenanzeigen erstellen, bis das RxMgr eine MiniportWdiRxResume ausgibt und die Verteilerebene so schnell wie möglich beenden sollte.

Die RxEngine kann auswählen, wie eingehende Daten während der Pause behandelt werden sollen. Wenn möglich, sollte nur die Daten gepuffert werden. Das Ablegen von Daten ist ebenfalls akzeptabel.

Das RxMgr verfolgt die Anzahl der Frames, die für NDIS angegeben sind, anhand des in PNDIS_RECEIVE_THROTTLE_PARAMETERS angegebenen Grenzwerts. Das RxMgr verfolgt auch die bei der Versendung aufgewendete Zeit. Wenn Grenzwerte erreicht werden, gibt das RxMgr NDIS_STATUS_PAUSED zurück. Der RxEngine sollte DPC so schnell wie möglich zurückgeben/beenden und darf keine weiteren NET_BUFFER_LIST Strukturen angeben (über NdisWdiRxInorderDataIndication), bis RxMgr MiniportWdiRxResumeaufruft. Alle NET_BUFFER_LIST Strukturen, die RxMgr (über MiniportWdiRxGetMpdus) übergeben werden und noch nicht angegeben wurden, werden bis zu NDIS in einem anderen Kontext angegeben, um zu vermeiden, zu viel Zeit bei DPC zu verbringen. Nachdem dieser Backlog gelöscht wurde, hebt RxMgr die RxEngine auf, indem er MiniportWdiRxResumeaufruft.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 10
mindestens unterstützte Server- Windows Server 2016
Zielplattform- Fenster
Header- dot11wdi.h

Siehe auch

MiniportWdiRxGetMpdus

MiniportWdiRxResume

NDIS_RECEIVE_THROTTLE_PARAMETERS

NDIS_WDI_DATA_API

NET_BUFFER_LIST

WDI RX-Pfad

WDI_EXTENDED_TID

WDI_PEER_ID

WDI_RX_INDICATION_LEVEL