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. Note
Bits 6 and 7 of ctrl_flags, bit 0 of ctrl_flags1, and the channel and tx_power fields are currently not supported.
Public Attributes#
Control flags bit description:
ctrl_flags1 bit description:
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 provides 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.
Channel is currently not supported.
Transmission power is currently not supported.
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 | Should be set if the extended descriptor contains channel, tx_power and is_last_packet information. This is currently not supported. |
7 | Should be set if immediate transfer is enabled. This is currently not supported. |
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.
ctrl_flags1#
uint8_t sl_wifi_transceiver_tx_data_control_t::ctrl_flags1
ctrl_flags1 bit description:
Bit position | flags bit description |
---|---|
0 | Should be set if it is the last packet of that channel. This is currently not supported. |
1:7 | Reserved. |
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.
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.
token#
uint32_t sl_wifi_transceiver_tx_data_control_t::token
Used for synchronization between data packets sent and reports received. Application provides token/identifier as per PPDU. MAC layer sends the same token/identifier in status report along with the status of the transmitted packet.
addr4#
uint8_t sl_wifi_transceiver_tx_data_control_t::addr4[6]
Source MAC address. Initialization of addr4 is optional.
tx_power#
uint8_t sl_wifi_transceiver_tx_data_control_t::tx_power
Transmission power is currently not supported.