Control block structure used to hold metadata for the payload passed in sl_wifi_send_transceiver_data.
Contains control flags and other metadata for the payload. The control flags specify various options for the packet, such as whether it is a 4-address packet, a QoS packet, or if a fixed data rate should be used.
Public Attributes#
Control flags bit description:
Reserved.
Reserved.
Data Packets are queued to respective queue based on priority. Best Effort - 0, Background - 1, Video - 2, Voice - 3.
Rates shall be provided as per sl_wifi_data_rate_t. Only 11b/g rates shall be supported.
Used for synchronization between data packets sent and reports received. Application shall provide token/identifier as per PPDU. MAC layer sends the same token/identifier in status report along with the status of the transmitted packet.
Receiver MAC address.
Transmitter MAC address.
Destination MAC address.
Source MAC address. Initialization of addr4 is optional.
Public Attribute Documentation#
ctrl_flags#
uint8_t sl_wifi_transceiver_tx_data_control_t::ctrl_flags
Control flags bit description:
Bit position | ctrl_flags bit description |
---|---|
0 | Should be set for 4-address packet or unset for 3-address packet. addr4 is ignored if set to 0. |
1 | Should be set for QoS packet. QoS control field shall not be present in the MAC header for non-QoS packet. priority is ignored if set to 0. |
2 | Should be set to use the fixed data rate provided in the rate field. If set to 0, rate field is ignored and auto rate shall be used. |
3 | Should be set to enable To DS bit in Frame Control. Valid only for 3-addr packet (bit 0 is unset). |
4 | Should be set to enable From DS bit in Frame Control. Valid only for 3-addr packet (bit 0 is unset). |
5 | Should be set if host requires TX data status report. Token is used for synchronization between data packets sent and reports received. |
6:7 | Reserved. |
Note
If addr1 is multicast/broadcast, ctrl_flags bit 1 is ignored, and the frame is sent as a non-QoS frame, that is, QoS control field should not be present in the MAC header.
673
of file components/protocol/wifi/inc/sl_wifi_types.h
reserved1#
uint8_t sl_wifi_transceiver_tx_data_control_t::reserved1
Reserved.
674
of file components/protocol/wifi/inc/sl_wifi_types.h
reserved2#
uint8_t sl_wifi_transceiver_tx_data_control_t::reserved2
Reserved.
675
of file components/protocol/wifi/inc/sl_wifi_types.h
priority#
uint8_t sl_wifi_transceiver_tx_data_control_t::priority
Data Packets are queued to respective queue based on priority. Best Effort - 0, Background - 1, Video - 2, Voice - 3.
677
of file components/protocol/wifi/inc/sl_wifi_types.h
rate#
sl_wifi_data_rate_t sl_wifi_transceiver_tx_data_control_t::rate
Rates shall be provided as per sl_wifi_data_rate_t. Only 11b/g rates shall be supported.
679
of file components/protocol/wifi/inc/sl_wifi_types.h
token#
uint32_t sl_wifi_transceiver_tx_data_control_t::token
Used for synchronization between data packets sent and reports received. Application shall provide token/identifier as per PPDU. MAC layer sends the same token/identifier in status report along with the status of the transmitted packet.
681
of file components/protocol/wifi/inc/sl_wifi_types.h
addr1#
uint8_t sl_wifi_transceiver_tx_data_control_t::addr1[6]
Receiver MAC address.
682
of file components/protocol/wifi/inc/sl_wifi_types.h
addr2#
uint8_t sl_wifi_transceiver_tx_data_control_t::addr2[6]
Transmitter MAC address.
683
of file components/protocol/wifi/inc/sl_wifi_types.h
addr3#
uint8_t sl_wifi_transceiver_tx_data_control_t::addr3[6]
Destination MAC address.
684
of file components/protocol/wifi/inc/sl_wifi_types.h
addr4#
uint8_t sl_wifi_transceiver_tx_data_control_t::addr4[6]
Source MAC address. Initialization of addr4 is optional.
685
of file components/protocol/wifi/inc/sl_wifi_types.h