NDIS_WDI_TX_DEQUEUE_IND callback function (dot11wdi.h)
Important
This topic is part of the WDI driver model released in Windows 10. The WDI driver model is in maintenance mode and will only receive high priority fixes. WiFiCx is the Wi-Fi driver model released in Windows 11. We recommend that you use WiFiCx to take advantage of the latest features.
The NdisWdiTxDequeueIndication callback function is called in the context of a MiniportWdiTxDataSend or MiniportWdiTxTalSend by the IHV miniport to dequeue frames from WDI to the IHV miniport.
This is a callback inside NDIS_WDI_DATA_API.
Syntax
NDIS_WDI_TX_DEQUEUE_IND NdisWdiTxDequeueInd;
void NdisWdiTxDequeueInd(
[in] NDIS_HANDLE NdisMiniportDataPathHandle,
[in] UINT32 Quantum,
[in] UINT8 MaxNumFrames,
[in] UINT16 Credit,
[out] PNET_BUFFER_LIST *ppNBL
)
{...}
Parameters
[in] NdisMiniportDataPathHandle
The NdisMiniportDataPathHandle passed to the IHV miniport in MiniportWdiTalTxRxInitialize.
[in] Quantum
The quantum. For more information, see the Host - target TX transfer scheduling section in WDI TX path.
[in] MaxNumFrames
Maximum frame count.
[in] Credit
Credit value. For more information, see The target-credit scheme and the pause/resume mechanism section in WDI TX path.
[out] ppNBL
Pointer to a pointer to a NET_BUFFER_LIST chain dequeued by WDI.
Return value
None
Remarks
A subset of the parameters may not be applicable to a device. For instance, the maximum frame count may not apply to a store and forward device (message-based bus interface).
The following parameters are ignored by TxMgr under these circumstances.
- Quantum if set to WDI_TX_QUANTUM_INVALID (0xFFFFFFFF)
- MaxNumFrames if set to WDI_TX_MAX_FRAME_COUNT_INVALID (0xFF)
- Credit if set to WDI_TX_CREDIT_INVALID (0xFFFF)
If the TAL does not have enough credit to dequeue a maximum cost frame, it should issue an NdisWdiTxSendPauseIndication instead of an NdisWdiTxDequeueIndication.
The TxMgr may return a list of NET_BUFFER_LIST that exceed the limit of the number of frames, frame cost, or quantum. This only happens if the frames are being requeued/replayed after being send completed with status of Postponed and with identical sequence number, which indicates they were originally transmitted as part of a single A-MSDU.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 10 |
Minimum supported server | Windows Server 2016 |
Target Platform | Windows |
Header | dot11wdi.h |