Zephyr Project API 4.0.99
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
20/* Minimum frame size for raw packet transmission */
21#define NRF_WIFI_OFF_RAW_TX_FRAME_SIZE_MIN 26
22/* Maximum frame size for raw packet transmission */
23#define NRF_WIFI_OFF_RAW_TX_FRAME_SIZE_MAX 600
24/* Maximum length of country code*/
25#define NRF_WIFI_COUNTRY_CODE_LEN 2
74
75
90
91
106
127
136
143 unsigned int period_us;
145 unsigned int tx_pwr;
147 unsigned int chan;
150 /* Number of times a packet should be retried at each possible rate */
151 unsigned int num_retries;
154 /* Rate at which packet needs to be transmitted. Refer &enum nrf_wifi_off_raw_tx_rate */
160 /* Pointer to packet to be transmitted */
161 void *pkt;
163 unsigned int pkt_len;
164};
165
166
188int nrf70_off_raw_tx_init(uint8_t *mac_addr, unsigned char *country_code);
189
197
210
222
233
246
261#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:30
nrf_wifi_off_raw_tx_tput_mode
Throughput mode Throughput mode to be used for transmitting the packet.
Definition off_raw_tx_api.h:111
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:80
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:96
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:54
@ RATE_12M
12 Mbps
Definition off_raw_tx_api.h:44
@ RATE_6M
6 Mbps
Definition off_raw_tx_api.h:40
@ RATE_MCS1
MCS 1.
Definition off_raw_tx_api.h:58
@ RATE_MCS6
MCS 6.
Definition off_raw_tx_api.h:68
@ RATE_5_5M
5.5 Mbps
Definition off_raw_tx_api.h:36
@ RATE_9M
9 Mbps
Definition off_raw_tx_api.h:42
@ RATE_MCS3
MCS 3.
Definition off_raw_tx_api.h:62
@ RATE_MCS0
MCS 0.
Definition off_raw_tx_api.h:56
@ RATE_1M
1 Mbps
Definition off_raw_tx_api.h:32
@ RATE_48M
48 Mbps
Definition off_raw_tx_api.h:52
@ RATE_18M
18 Mbps
Definition off_raw_tx_api.h:46
@ RATE_24M
24 Mbps
Definition off_raw_tx_api.h:48
@ RATE_11M
11 Mbps
Definition off_raw_tx_api.h:38
@ RATE_2M
2 Mbps
Definition off_raw_tx_api.h:34
@ RATE_MCS2
MCS 2.
Definition off_raw_tx_api.h:60
@ RATE_36M
36 Mbps
Definition off_raw_tx_api.h:50
@ RATE_MCS5
MCS 5.
Definition off_raw_tx_api.h:66
@ RATE_MCS7
MCS 7.
Definition off_raw_tx_api.h:70
@ RATE_MAX
Invalid rate.
Definition off_raw_tx_api.h:72
@ RATE_MCS4
MCS 4.
Definition off_raw_tx_api.h:64
@ TPUT_MODE_HT
High Throughput mode (11n)
Definition off_raw_tx_api.h:115
@ TPUT_MODE_HE_TB
HE TB mode.
Definition off_raw_tx_api.h:123
@ TPUT_MODE_MAX
Highest throughput mode currently defined.
Definition off_raw_tx_api.h:125
@ TPUT_MODE_LEGACY
Legacy mode.
Definition off_raw_tx_api.h:113
@ TPUT_MODE_HE_SU
HE SU mode.
Definition off_raw_tx_api.h:119
@ TPUT_MODE_HE_ER_SU
HE ER SU mode.
Definition off_raw_tx_api.h:121
@ TPUT_MODE_VHT
Very high throughput mode (11ac)
Definition off_raw_tx_api.h:117
@ HE_GI_MAX
Invalid value.
Definition off_raw_tx_api.h:88
@ HE_GI_3200NS
3200 ns
Definition off_raw_tx_api.h:86
@ HE_GI_1600NS
1600 ns
Definition off_raw_tx_api.h:84
@ HE_GI_800NS
800 ns
Definition off_raw_tx_api.h:82
@ HE_LTF_12800NS
12.8us
Definition off_raw_tx_api.h:102
@ HE_LTF_6400NS
6.4us
Definition off_raw_tx_api.h:100
@ HE_LTF_MAX
Invalid value.
Definition off_raw_tx_api.h:104
@ HE_LTF_3200NS
3.2us
Definition off_raw_tx_api.h:98
__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:141
unsigned int period_us
Time interval (in microseconds) between transmissions.
Definition off_raw_tx_api.h:143
enum nrf_wifi_off_raw_tx_he_ltf he_ltf
HE GI.
Definition off_raw_tx_api.h:159
unsigned int tx_pwr
Transmit power in dBm (0 to 20)
Definition off_raw_tx_api.h:145
enum nrf_wifi_off_raw_tx_he_gi he_gi
HE GI.
Definition off_raw_tx_api.h:157
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:163
enum nrf_wifi_off_raw_tx_rate rate
Definition off_raw_tx_api.h:155
void * pkt
Definition off_raw_tx_api.h:161
enum nrf_wifi_off_raw_tx_tput_mode tput_mode
Throughput mode for packet transmittion.
Definition off_raw_tx_api.h:153
bool short_preamble
Set to TRUE to use short preamble for FALSE to disable short preamble.
Definition off_raw_tx_api.h:149
unsigned int num_retries
Definition off_raw_tx_api.h:151
unsigned int chan
Channel number on which to transmit.
Definition off_raw_tx_api.h:147
This structure defines the Offloaded raw tx debug statistics.
Definition off_raw_tx_api.h:132
unsigned int off_raw_tx_pkt_sent
Number of packets sent.
Definition off_raw_tx_api.h:134