MINIPORT_WDI_TX_TAL_SEND função de retorno de chamada (dot11wdi.h)
Importante
Este tópico faz parte do modelo de driver WDI lançado em Windows 10. O modelo de driver WDI está no modo de manutenção e receberá apenas correções de alta prioridade. WiFiCx é o modelo de driver Wi-Fi lançado em Windows 11. Recomendamos que você use o WiFiCx para aproveitar os recursos mais recentes.
A função de manipulador MiniportWdiTxTalSend especifica uma ra-TID ou fila de porta para transmitir. O TxMgr usa essa solicitação em vez de MiniportWdiTxDataSend para filas RA-TID com um TID estendido no intervalo reservado IHV. Ele é emitido no contexto de um thread TX do sistema operacional, da indicação de retomada ou de um item de trabalho.
Esse é um manipulador de miniporte WDI dentro de NDIS_MINIPORT_WDI_DATA_HANDLERS.
Sintaxe
MINIPORT_WDI_TX_TAL_SEND MiniportWdiTxTalSend;
void MiniportWdiTxTalSend(
[in] TAL_TXRX_HANDLE MiniportTalTxRxContext,
[in] WDI_PORT_ID PortId,
[in] WDI_PEER_ID PeerId,
[in] WDI_EXTENDED_TID ExTid,
[in] UINT16 NumQueueFrames,
[in] UINT32 NumActiveFrames,
[in] BOOLEAN bRobustnessFlag
)
{...}
Parâmetros
[in] MiniportTalTxRxContext
Identificador de dispositivo TAL retornado pelo miniporto IHV em MiniportWdiTalTxRxInitialize.
[in] PortId
A ID da porta.
[in] PeerId
A ID do par.
[in] ExTid
O TID estendido.
[in] NumQueueFrames
O comprimento da fila, em quadros.
[in] NumActiveFrames
O número total de quadros em filas de ação (programáveis).
[in] bRobustnessFlag
O sinalizador de robustez. Se o sinalizador de robustez for definido como TRUE, a NIC garantirá uma entrega confiável em um pequeno número de repetições, reduzindo agressivamente a taxa de dados TX usada para o quadro usando CTS e/ou outros mecanismos.
Retornar valor
Nenhum
Comentários
No modo de enfileiramento de porta, PeerId e ExTid são definidos como curingas. No contexto da solicitação de envio, o TxEngine emite NdisWdiTxDequeueIndication para assumir a propriedade de vários quadros da fila RA-TID fifo e transferi-los para o destino. Se não puder remover nenhum quadro, o TxEngine emitirá NdisWdiTxSendPauseIndication no mesmo contexto em vez de NdisWdiTxDequeueIndication.
O TxEngine deve emitir uma transferência concluída e enviar indicações completas para retornar a propriedade de todos os quadros que desempõe ao TxMgr. Se a transferência concluída contiver um código de falha, o TxEngine não deverá emitir uma conclusão de envio.
PeerId será definido como curinga se a porta estiver configurada como um ponto de acesso/Wi-Fi Direct Proprietário do Grupo e o quadro tiver um endereço de grupo como o endereço do destinatário.
Em caso de falha, o TxEngine conclui as transferências de quadro para o destino com a falha apropriada status.
Exemplos
Para definir uma função MiniportWdiTxTalSend, primeiro você deve fornecer uma declaração de função que identifique o tipo de função que você está definindo. O Windows fornece um conjunto de tipos de função para drivers. Declarar uma função usando os tipos de função ajuda a Análise de Código para Drivers, SDV ( Verificador de Driver Estático ) e outras ferramentas de verificação a encontrar erros e é um requisito para gravar drivers para o sistema operacional Windows.
Por exemplo, para definir uma função MiniportWdiTxTalSend chamada "MyTxTalSend", use o tipo MINIPORT_WDI_TX_TAL_SEND conforme mostrado neste exemplo de código:
MINIPORT_WDI_TX_TAL_SEND MyTxTalSend;
Em seguida, implemente sua função da seguinte maneira:
_Use_decl_annotations_
VOID
MyTxTalSend(
TAL_TXRX_HANDLE MiniportTalTxRxContext,
WDI_PORT_ID PortId,
WDI_PEER_ID PeerId,
WDI_EXTENDED_TID ExTid,
UINT16 NumQueueFrames,
UINT32 NumActiveFrames,
BOOLEAN bRobustnessFlag
)
{...}
O tipo de função MINIPORT_WDI_TX_TAL_SEND é definido no arquivo de cabeçalho dot11wdi.h. Para identificar erros com mais precisão ao executar as ferramentas de análise de código, adicione a anotação Use_decl_annotations à sua definição de função. A anotação Use_decl_annotations garante que as anotações aplicadas ao tipo de função MINIPORT_WDI_TX_TAL_SEND no arquivo de cabeçalho sejam usadas. Para obter mais informações sobre os requisitos para declarações de função, consulte Declarando funções usando tipos de função de função para drivers NDIS.
Para obter informações sobre Use_decl_annotations, consulte Anotando o comportamento da função.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 |
Servidor mínimo com suporte | Windows Server 2016 |
Plataforma de Destino | Windows |
Cabeçalho | dot11wdi.h |