Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
off_raw_tx_api.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2024 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
14#ifndef INCLUDE_ZEPHYR_DRIVERS_OFF_RAW_TX_API_H_
15#define INCLUDE_ZEPHYR_DRIVERS_OFF_RAW_TX_API_H_
16
17#include <stdbool.h>
18#include <stdint.h>
19#include "osal_api.h"
20
21/* Minimum frame size for raw packet transmission */
22#define NRF_WIFI_OFF_RAW_TX_FRAME_SIZE_MIN 26
23/* Maximum frame size for raw packet transmission */
24#define NRF_WIFI_OFF_RAW_TX_FRAME_SIZE_MAX 600
25/* Maximum length of country code*/
26#define NRF_WIFI_COUNTRY_CODE_LEN 2
75
76
91
92
107
128
137
144 unsigned int period_us;
146 unsigned int tx_pwr;
148 unsigned int chan;
151 /* Number of times a packet should be retried at each possible rate */
152 unsigned int num_retries;
155 /* Rate at which packet needs to be transmitted. Refer &enum nrf_wifi_off_raw_tx_rate */
161 /* Pointer to packet to be transmitted */
162 void *pkt;
164 unsigned int pkt_len;
165};
166
167
189int nrf70_off_raw_tx_init(uint8_t *mac_addr, unsigned char *country_code);
190
198
211
223
234
247
262#endif /* INCLUDE_ZEPHYR_DRIVERS_OFF_RAW_TX_API_H_ */
int nrf70_off_raw_tx_stats(struct nrf_wifi_off_raw_tx_stats *off_raw_tx_stats)
Get statistics of the offloaded raw TX.
nrf_wifi_off_raw_tx_rate
Transmission rates Rate to be used for transmitting a packet.
Definition off_raw_tx_api.h:31
nrf_wifi_off_raw_tx_tput_mode
Throughput mode Throughput mode to be used for transmitting the packet.
Definition off_raw_tx_api.h:112
int nrf70_off_raw_tx_conf_update(struct nrf_wifi_off_raw_tx_conf *conf)
Update the configured offloaded raw TX parameters.
nrf_wifi_off_raw_tx_he_gi
HE guard interval value Value of the guard interval to be used between symbols when transmitting usin...
Definition off_raw_tx_api.h:81
int nrf70_off_raw_tx_stop(void)
Stop the offloaded raw TX.
nrf_wifi_off_raw_tx_he_ltf
HE long training field duration Value of the long training field duration to be used when transmittin...
Definition off_raw_tx_api.h:97
int nrf70_off_raw_tx_mac_addr_get(uint8_t *mac_addr)
Get the MAC address of the nRF70 device.
int nrf70_off_raw_tx_start(struct nrf_wifi_off_raw_tx_conf *conf)
Start the offloaded raw TX.
int nrf70_off_raw_tx_init(uint8_t *mac_addr, unsigned char *country_code)
Initialize the nRF70 for operating in the offloaded raw TX mode.
void nrf70_off_raw_tx_deinit(void)
Initialize the nRF70 for operating in the offloaded raw TX mode.
@ RATE_54M
54 Mbps
Definition off_raw_tx_api.h:55
@ RATE_12M
12 Mbps
Definition off_raw_tx_api.h:45
@ RATE_6M
6 Mbps
Definition off_raw_tx_api.h:41
@ RATE_MCS1
MCS 1.
Definition off_raw_tx_api.h:59
@ RATE_MCS6
MCS 6.
Definition off_raw_tx_api.h:69
@ RATE_5_5M
5.5 Mbps
Definition off_raw_tx_api.h:37
@ RATE_9M
9 Mbps
Definition off_raw_tx_api.h:43
@ RATE_MCS3
MCS 3.
Definition off_raw_tx_api.h:63
@ RATE_MCS0
MCS 0.
Definition off_raw_tx_api.h:57
@ RATE_1M
1 Mbps
Definition off_raw_tx_api.h:33
@ RATE_48M
48 Mbps
Definition off_raw_tx_api.h:53
@ RATE_18M
18 Mbps
Definition off_raw_tx_api.h:47
@ RATE_24M
24 Mbps
Definition off_raw_tx_api.h:49
@ RATE_11M
11 Mbps
Definition off_raw_tx_api.h:39
@ RATE_2M
2 Mbps
Definition off_raw_tx_api.h:35
@ RATE_MCS2
MCS 2.
Definition off_raw_tx_api.h:61
@ RATE_36M
36 Mbps
Definition off_raw_tx_api.h:51
@ RATE_MCS5
MCS 5.
Definition off_raw_tx_api.h:67
@ RATE_MCS7
MCS 7.
Definition off_raw_tx_api.h:71
@ RATE_MAX
Invalid rate.
Definition off_raw_tx_api.h:73
@ RATE_MCS4
MCS 4.
Definition off_raw_tx_api.h:65
@ TPUT_MODE_HT
High Throughput mode (11n)
Definition off_raw_tx_api.h:116
@ TPUT_MODE_HE_TB
HE TB mode.
Definition off_raw_tx_api.h:124
@ TPUT_MODE_MAX
Highest throughput mode currently defined.
Definition off_raw_tx_api.h:126
@ TPUT_MODE_LEGACY
Legacy mode.
Definition off_raw_tx_api.h:114
@ TPUT_MODE_HE_SU
HE SU mode.
Definition off_raw_tx_api.h:120
@ TPUT_MODE_HE_ER_SU
HE ER SU mode.
Definition off_raw_tx_api.h:122
@ TPUT_MODE_VHT
Very high throughput mode (11ac)
Definition off_raw_tx_api.h:118
@ HE_GI_MAX
Invalid value.
Definition off_raw_tx_api.h:89
@ HE_GI_3200NS
3200 ns
Definition off_raw_tx_api.h:87
@ HE_GI_1600NS
1600 ns
Definition off_raw_tx_api.h:85
@ HE_GI_800NS
800 ns
Definition off_raw_tx_api.h:83
@ HE_LTF_12800NS
12.8us
Definition off_raw_tx_api.h:103
@ HE_LTF_6400NS
6.4us
Definition off_raw_tx_api.h:101
@ HE_LTF_MAX
Invalid value.
Definition off_raw_tx_api.h:105
@ HE_LTF_3200NS
3.2us
Definition off_raw_tx_api.h:99
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Configuration parameters for offloaded raw TX Parameters which can be used to configure the offloaded...
Definition off_raw_tx_api.h:142
unsigned int period_us
Time interval (in microseconds) between transmissions.
Definition off_raw_tx_api.h:144
enum nrf_wifi_off_raw_tx_he_ltf he_ltf
HE GI.
Definition off_raw_tx_api.h:160
unsigned int tx_pwr
Transmit power in dBm (0 to 20)
Definition off_raw_tx_api.h:146
enum nrf_wifi_off_raw_tx_he_gi he_gi
HE GI.
Definition off_raw_tx_api.h:158
unsigned int pkt_len
Packet length of the frame to be transmitted, (min 26 bytes and max 600 bytes)
Definition off_raw_tx_api.h:164
enum nrf_wifi_off_raw_tx_rate rate
Definition off_raw_tx_api.h:156
void * pkt
Definition off_raw_tx_api.h:162
enum nrf_wifi_off_raw_tx_tput_mode tput_mode
Throughput mode for packet transmittion.
Definition off_raw_tx_api.h:154
bool short_preamble
Set to TRUE to use short preamble for FALSE to disable short preamble.
Definition off_raw_tx_api.h:150
unsigned int num_retries
Definition off_raw_tx_api.h:152
unsigned int chan
Channel number on which to transmit.
Definition off_raw_tx_api.h:148
This structure defines the Offloaded raw tx debug statistics.
Definition off_raw_tx_api.h:133
unsigned int off_raw_tx_pkt_sent
Number of packets sent.
Definition off_raw_tx_api.h:135