1 /*
2  *  Copyright 2023-2024 NXP
3  *
4  *  SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 #ifndef __NXP_WIFI_H__
9 #define __NXP_WIFI_H__
10 
11 #include <stdint.h>
12 #include <stdbool.h>
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 #define LWIPERF_REVERSE_MODE      1
19 #define CONFIG_11N                1
20 #define STA_SUPPORT               1
21 #define UAP_SUPPORT               1
22 #define WPA                       1
23 #define KEY_MATERIAL_WEP          1
24 #define KEY_PARAM_SET_V2          1
25 #define ENABLE_802_11W            1
26 #define ENABLE_GCMP_SUPPORT       1
27 #define CONFIG_STA_AMPDU_RX       1
28 #define CONFIG_STA_AMPDU_TX       1
29 #define CONFIG_ENABLE_AMSDU_RX    1
30 #define CONFIG_UAP_AMPDU_TX       1
31 #define CONFIG_UAP_AMPDU_RX       1
32 #define CONFIG_WIFIDRIVER_PS_LOCK 1
33 #define CONFIG_WNM_PS             0
34 #define CONFIG_SCAN_CHANNEL_GAP   1
35 #define CONFIG_COMBO_SCAN         1
36 #define CONFIG_BG_SCAN            1
37 #define CONFIG_HOST_MLME          1
38 #define UAP_HOST_MLME             1
39 #define CONFIG_STA_AUTO_DHCPV4    1
40 
41 #if CONFIG_NXP_WIFI_SHELL
42 #define CONFIG_WIFI_SHELL 1
43 #endif
44 
45 #if CONFIG_NXP_WIFI_MAX_AP_ENTRIES
46 #define CONFIG_MAX_AP_ENTRIES CONFIG_NXP_WIFI_MAX_AP_ENTRIES
47 #endif
48 
49 #if CONFIG_NXP_WIFI_WLAN_KNOWN_NETWORKS
50 #define CONFIG_WLAN_KNOWN_NETWORKS CONFIG_NXP_WIFI_WLAN_KNOWN_NETWORKS
51 #endif
52 
53 #if CONFIG_NXP_WIFI_SDIO_MULTI_PORT_RX_AGGR
54 #define CONFIG_SDIO_MULTI_PORT_RX_AGGR CONFIG_NXP_WIFI_SDIO_MULTI_PORT_RX_AGGR
55 #endif
56 
57 #if CONFIG_NXP_WIFI_SDIO_MULTI_PORT_TX_AGGR
58 #define CONFIG_SDIO_MULTI_PORT_TX_AGGR CONFIG_NXP_WIFI_SDIO_MULTI_PORT_TX_AGGR
59 #endif
60 
61 #if CONFIG_NXP_WIFI_AUTO_POWER_SAVE
62 #define CONFIG_WIFI_AUTO_POWER_SAVE 1
63 #endif
64 
65 #if CONFIG_NXP_WIFI_TX_RX_ZERO_COPY
66 #define CONFIG_TX_RX_ZERO_COPY 1
67 #endif
68 
69 #if CONFIG_NXP_WIFI_RF_TEST_MODE
70 #define CONFIG_WIFI_RF_TEST_MODE 1
71 #endif
72 
73 #if CONFIG_NXP_WIFI_SOFTAP_SUPPORT
74 #define CONFIG_WIFI_SOFTAP_SUPPORT 1
75 #endif
76 
77 #if CONFIG_NXP_WIFI_OFFLOAD
78 #define CONFIG_OFFLOAD CONFIG_NXP_WIFI_OFFLOAD
79 #endif
80 
81 #if CONFIG_NXP_WIFI_STA_RECONNECT
82 #define CONFIG_WIFI_STA_RECONNECT 1
83 #endif
84 
85 #if CONFIG_NXP_WIFI_11AX
86 #define CONFIG_11AX 1
87 #endif
88 
89 #if CONFIG_NXP_WIFI_11AC
90 #define CONFIG_11AC 1
91 #endif
92 
93 #if CONFIG_NXP_WIFI_ENABLE_HTTPSERVER
94 #define CONFIG_ENABLE_HTTPSERVER CONFIG_NXP_WIFI_ENABLE_HTTPSERVER
95 #endif
96 
97 #if CONFIG_NXP_WIFI_TX_RX_ZERO_COPY
98 #define CONFIG_TX_RX_ZERO_COPY 1
99 #endif
100 
101 #if CONFIG_NXP_WIFI_CAPA
102 #define CONFIG_WIFI_CAPA 1
103 #endif
104 
105 #if CONFIG_NXP_WIFI_WMM_UAPSD
106 #define CONFIG_WMM_UAPSD 1
107 #endif
108 
109 #if CONFIG_NXP_WIFI_GET_LOG
110 #define CONFIG_WIFI_GET_LOG 1
111 #endif
112 
113 #if CONFIG_NXP_WIFI_TX_PER_TRACK
114 #define CONFIG_WIFI_TX_PER_TRACK 1
115 #endif
116 
117 #if CONFIG_NXP_WIFI_CSI
118 #define CONFIG_CSI 1
119 #endif
120 
121 #if CONFIG_NXP_WIFI_RESET
122 #define CONFIG_WIFI_RESET 1
123 #endif
124 
125 #if CONFIG_NXP_WIFI_NET_MONITOR
126 #define CONFIG_NET_MONITOR 1
127 #endif
128 
129 #if CONFIG_NXP_WIFI_ECSA
130 #define CONFIG_ECSA 1
131 #endif
132 
133 #if CONFIG_NXP_WIFI_UNII4_BAND_SUPPORT
134 #define CONFIG_UNII4_BAND_SUPPORT 1
135 #endif
136 
137 #if CONFIG_NXP_WIFI_RECOVERY
138 #define CONFIG_WIFI_RECOVERY 1
139 #endif
140 
141 #if CONFIG_NXP_WIFI_PKT_FWD
142 #define CONFIG_WIFI_PKT_FWD 1
143 #endif
144 
145 #if CONFIG_NXP_WIFI_TSP
146 #define CONFIG_TSP 1
147 #endif
148 
149 #if CONFIG_NXP_WIFI_11AX_TWT
150 #define CONFIG_11AX_TWT 1
151 #endif
152 
153 #if CONFIG_NXP_WIFI_COMPRESS_TX_PWTBL
154 #define CONFIG_COMPRESS_TX_PWTBL 1
155 #endif
156 
157 #if CONFIG_NXP_WIFI_COMPRESS_RU_TX_PWTBL
158 #define CONFIG_COMPRESS_RU_TX_PWTBL 1
159 #endif
160 
161 #if CONFIG_NXP_WIFI_MAX_PRIO
162 #define CONFIG_WIFI_MAX_PRIO CONFIG_NXP_WIFI_MAX_PRIO
163 #endif
164 
165 #if CONFIG_NXP_WIFI_IPS
166 #define CONFIG_IPS 1
167 #endif
168 
169 #if CONFIG_NXP_WIFI_EXT_SCAN_SUPPORT
170 #define CONFIG_EXT_SCAN_SUPPORT 1
171 #endif
172 
173 #if CONFIG_NXP_WIFI_SCAN_WITH_RSSIFILTER
174 #define CONFIG_SCAN_WITH_RSSIFILTER 1
175 #endif
176 
177 #if CONFIG_NXP_WIFI_DTIM_PERIOD
178 #define CONFIG_WIFI_DTIM_PERIOD 1
179 #endif
180 
181 #if CONFIG_NXP_WIFI_RX_ABORT_CFG
182 #define CONFIG_RX_ABORT_CFG 1
183 #endif
184 
185 #if CONFIG_NXP_WIFI_RX_ABORT_CFG_EXT
186 #define CONFIG_RX_ABORT_CFG_EXT 1
187 #endif
188 
189 #if CONFIG_NXP_WIFI_CCK_DESENSE_CFG
190 #define CONFIG_CCK_DESENSE_CFG 1
191 #endif
192 
193 #if CONFIG_NXP_WIFI_MEM_ACCESS
194 #define CONFIG_WIFI_MEM_ACCESS 1
195 #endif
196 
197 #if CONFIG_NXP_WIFI_REG_ACCESS
198 #define CONFIG_WIFI_REG_ACCESS 1
199 #endif
200 
201 #if CONFIG_NXP_WIFI_SUBSCRIBE_EVENT_SUPPORT
202 #define CONFIG_SUBSCRIBE_EVENT_SUPPORT 1
203 #endif
204 
205 #if CONFIG_NXP_WIFI_TX_RX_HISTOGRAM
206 #define CONFIG_TX_RX_HISTOGRAM 1
207 #endif
208 
209 #if CONFIG_NXP_WIFI_COEX_DUTY_CYCLE
210 #define CONFIG_COEX_DUTY_CYCLE 1
211 #endif
212 
213 #if CONFIG_NXP_WIFI_MMSF
214 #define CONFIG_MMSF 1
215 #endif
216 
217 #if CONFIG_NXP_WIFI_USB_FILE_ACCESS
218 #define CONFIG_USB_FILE_ACCESS 1
219 #endif
220 
221 #if CONFIG_NXP_WIFI_SCAN_CHANNEL_GAP_TIME
222 #define CONFIG_SCAN_CHANNEL_GAP_TIME CONFIG_NXP_WIFI_SCAN_CHANNEL_GAP_TIME
223 #endif
224 
225 #if CONFIG_NXP_WIFI_INACTIVITY_TIMEOUT_EXT
226 #define CONFIG_INACTIVITY_TIMEOUT_EXT 1
227 #endif
228 
229 #if CONFIG_NXP_WIFI_RF_TEST_MODE
230 #define CONFIG_RF_TEST_MODE 1
231 #endif
232 
233 #if CONFIG_NXP_WIFI_IMD3_CFG
234 #define CONFIG_IMD3_CFG 1
235 #endif
236 
237 #if CONFIG_NXP_WIFI_ANT_DETECT
238 #define CONFIG_ANT_DETECT 1
239 #endif
240 
241 #if CONFIG_NXP_WIFI_WLAN_CALDATA_1ANT
242 #define CONFIG_WLAN_CALDATA_1ANT 1
243 #endif
244 
245 #if CONFIG_NXP_WIFI_WLAN_CALDATA_1ANT_WITH_DIVERSITY
246 #define CONFIG_WLAN_CALDATA_1ANT_WITH_DIVERSITY 1
247 #endif
248 
249 #if CONFIG_NXP_WIFI_WLAN_CALDATA_3ANT_DIVERSITY
250 #define CONFIG_WLAN_CALDATA_3ANT_DIVERSITY 1
251 #endif
252 
253 #if CONFIG_NXP_OVERRIDE_CALIBRATION_DATA
254 #define OVERRIDE_CALIBRATION_DATA "wifi_cal_data_rw61x_override.h"
255 #endif
256 
257 #if !CONFIG_NXP_OVERRIDE_CALIBRATION_DATA
258 #if defined(RW610)
259 /*
260  * FRDMRW610
261  */
262 #if defined(FRDMRW610)
263 /* FRDMRW610 1ANT */
264 #define DEFAULT_CALDATA_RW610 "wifi_cal_data_frdmrw61x_1ant.h"
265 #else
266 /*
267  * RW610
268  */
269 /* RW610 1ANT */
270 #if CONFIG_WLAN_CALDATA_1ANT
271 #define DEFAULT_CALDATA_RW610 "wifi_cal_data_rw61x_1ant.h"
272 /* RW610 3ANT_DIVERSITY */
273 #elif CONFIG_WLAN_CALDATA_3ANT_DIVERSITY
274 #define DEFAULT_CALDATA_RW610 "wifi_cal_data_rw61x_3ant_diversity.h"
275 /* RW610 1ANT_DIVERSITY */
276 #elif CONFIG_WLAN_CALDATA_1ANT_WITH_DIVERSITY
277 #define DEFAULT_CALDATA_RW610 "wifi_cal_data_rw61x_1ant_diversity.h"
278 /* RW610 2ANT */
279 #else
280 #define DEFAULT_CALDATA_RW610 "wifi_cal_data_rw61x_2ant.h"
281 #endif
282 #endif
283 #endif /* RW610 */
284 #endif /* CONFIG_NXP_OVERRIDE_CALIBRATION_DATA */
285 
286 #if CONFIG_NXP_WIFI_EU_VALIDATION
287 #define CONFIG_EU_VALIDATION 1
288 #endif
289 
290 #if CONFIG_NXP_WIFI_WMM
291 #define CONFIG_WMM 1
292 #endif
293 
294 #if CONFIG_NXP_WIFI_IPV6
295 #define CONFIG_IPV6 1
296 #endif
297 
298 #if CONFIG_NET_IF_UNICAST_IPV6_ADDR_COUNT
299 #define CONFIG_MAX_IPV6_ADDRESSES CONFIG_NET_IF_UNICAST_IPV6_ADDR_COUNT
300 #endif
301 
302 #if CONFIG_NXP_WIFI_5GHz_SUPPORT
303 #define CONFIG_5GHz_SUPPORT 1
304 #endif
305 
306 #if CONFIG_NXP_WIFI_HOST_SLEEP
307 #define CONFIG_HOST_SLEEP 1
308 #endif
309 
310 #if CONFIG_PM
311 #define CONFIG_POWER_MANAGER 1
312 #endif
313 
314 #if CONFIG_NXP_WIFI_ROAMING
315 #define CONFIG_ROAMING 1
316 #endif
317 
318 #if CONFIG_NXP_WIFI_CLOUD_KEEP_ALIVE
319 #define CONFIG_CLOUD_KEEP_ALIVE 1
320 #endif
321 
322 #if CONFIG_NXP_WIFI_MEF_CFG
323 #define CONFIG_MEF_CFG 1
324 #endif
325 
326 #if CONFIG_NXP_WIFI_TURBO_MODE
327 #define CONFIG_TURBO_MODE 1
328 #endif
329 
330 #if CONFIG_NXP_WIFI_EU_CRYPTO
331 #define CONFIG_EU_CRYPTO 1
332 #endif
333 
334 #if CONFIG_NXP_WIFI_FIPS
335 #define CONFIG_FIPS 1
336 #endif
337 
338 #if !defined CONFIG_DRIVER_OWE
339 #define CONFIG_DRIVER_OWE 0
340 #endif
341 
342 #if CONFIG_DRIVER_OWE
343 #undef CONFIG_DRIVER_OWE
344 #define CONFIG_DRIVER_OWE CONFIG_WPA_SUPP
345 #endif
346 
347 #if CONFIG_DRIVER_OWE
348 #define CONFIG_OWE
349 #endif
350 
351 #if !CONFIG_DRIVER_OWE
352 #undef CONFIG_OWE
353 #endif
354 
355 #if CONFIG_NXP_WIFI_11K
356 #define CONFIG_11K 1
357 #endif
358 
359 #if CONFIG_NXP_WIFI_11V
360 #define CONFIG_11V 1
361 #endif
362 
363 #if CONFIG_NXP_WIFI_11R
364 #define CONFIG_11R 1
365 #endif
366 
367 #if CONFIG_NXP_WIFI_EU_CRYPTO
368 #define CONFIG_WIFI_EU_CRYPTO 1
369 #endif
370 
371 #if CONFIG_NXP_WIFI_CLOCKSYNC
372 #define CONFIG_WIFI_CLOCKSYNC 1
373 #endif
374 
375 #if CONFIG_NXP_WIFI_RTS_THRESHOLD
376 #define CONFIG_WIFI_RTS_THRESHOLD 1
377 #endif
378 
379 #if CONFIG_NXP_WIFI_UAP_WORKAROUND_STICKY_TIM
380 #define CONFIG_UAP_WORKAROUND_STICKY_TIM CONFIG_NXP_WIFI_UAP_WORKAROUND_STICKY_TIM
381 #endif
382 
383 #if CONFIG_NXP_WIFI_AUTO_NULL_TX
384 #define CONFIG_AUTO_NULL_TX 1
385 #endif
386 
387 #if CONFIG_NXP_WIFI_ENABLE_ERROR_LOGS
388 #define CONFIG_ENABLE_ERROR_LOGS 1
389 #endif
390 
391 #if CONFIG_NXP_WIFI_ENABLE_WARNING_LOGS
392 #define CONFIG_ENABLE_WARNING_LOGS 1
393 #endif
394 
395 #if CONFIG_NXP_WIFI_DEBUG_BUILD
396 #define CONFIG_DEBUG_BUILD 1
397 #endif
398 
399 #if CONFIG_NXP_WIFI_OS_DEBUG
400 #define CONFIG_OS_DEBUG 1
401 #endif
402 
403 #if CONFIG_NXP_WIFI_NET_DEBUG
404 #define CONFIG_NET_DEBUG 1
405 #endif
406 
407 #if CONFIG_NXP_WIFI_WLCMGR_DEBUG
408 #define CONFIG_WLCMGR_DEBUG 1
409 #endif
410 
411 #if CONFIG_NXP_WIFI_EXTRA_DEBUG
412 #define CONFIG_WIFI_EXTRA_DEBUG 1
413 #endif
414 
415 #if CONFIG_NXP_WIFI_UAP_DEBUG
416 #define CONFIG_WIFI_UAP_DEBUG 1
417 #endif
418 
419 #if CONFIG_NXP_WIFI_EVENTS_DEBUG
420 #define CONFIG_WIFI_EVENTS_DEBUG 1
421 #endif
422 
423 #if CONFIG_NXP_WIFI_CMD_RESP_DEBUG
424 #define CONFIG_WIFI_CMD_RESP_DEBUG 1
425 #endif
426 
427 #if CONFIG_NXP_WIFI_PS_DEBUG
428 #define CONFIG_WIFI_PS_DEBUG 1
429 #endif
430 
431 #if CONFIG_NXP_WIFI_SCAN_DEBUG
432 #define CONFIG_WIFI_SCAN_DEBUG 1
433 #endif
434 
435 #if CONFIG_NXP_WIFI_PKT_DEBUG
436 #define CONFIG_WIFI_PKT_DEBUG 1
437 #endif
438 
439 #if CONFIG_NXP_WIFI_IO_INFO_DUMP
440 #define CONFIG_WIFI_IO_INFO_DUMP 1
441 #endif
442 
443 #if CONFIG_NXP_WIFI_IO_DEBUG
444 #define CONFIG_WIFI_IO_DEBUG 1
445 #endif
446 
447 #if CONFIG_NXP_WIFI_IO_DUMP
448 #define CONFIG_WIFI_IO_DUMP 1
449 #endif
450 
451 #if CONFIG_NXP_WIFI_MEM_DEBUG
452 #define CONFIG_WIFI_MEM_DEBUG 1
453 #endif
454 
455 #if CONFIG_NXP_WIFI_AMPDU_DEBUG
456 #define CONFIG_WIFI_AMPDU_DEBUG 1
457 #endif
458 
459 #if CONFIG_NXP_WIFI_TIMER_DEBUG
460 #define CONFIG_WIFI_TIMER_DEBUG 1
461 #endif
462 
463 #if CONFIG_NXP_WIFI_SDIO_DEBUG
464 #define CONFIG_WIFI_SDIO_DEBUG 1
465 #endif
466 
467 #if CONFIG_NXP_WIFI_SDIO_IO_DEBUG
468 #define CONFIG_SDIO_IO_DEBUG 1
469 #endif
470 
471 #if CONFIG_NXP_WIFI_FWDNLD_IO_DEBUG
472 #define CONFIG_FWDNLD_IO_DEBUG 1
473 #endif
474 
475 #if CONFIG_NXP_WIFI_FW_DEBUG
476 #define CONFIG_WIFI_FW_DEBUG 1
477 #endif
478 
479 #if CONFIG_NXP_WIFI_FW_VDLL_DEBUG
480 #define CONFIG_FW_VDLL_DEBUG 1
481 #endif
482 
483 #if CONFIG_NXP_WIFI_DHCP_SERVER_DEBUG
484 #define CONFIG_DHCP_SERVER_DEBUG 1
485 #endif
486 
487 #if CONFIG_NXP_WIFI_HTC_DEBUG
488 #define CONFIG_WIFI_HTC_DEBUG 1
489 #endif
490 
491 #if CONFIG_NXP_WIFI_SMOKE_TESTS
492 #define CONFIG_WIFI_SMOKE_TESTS 1
493 #endif
494 
495 #if CONFIG_NXP_WIFI_SM_IP_DHCP
496 #define IP_USE_DHCP 1
497 #endif
498 
499 #if CONFIG_NXP_WIFI_SIGMA_AGENT
500 #define CONFIG_SIGMA_AGENT 1
501 #endif
502 
503 #if CONFIG_WIFI_NM_WPA_SUPPLICANT
504 #define CONFIG_WPA_SUPP 1
505 #endif
506 
507 #if CONFIG_NXP_WIFI_SET_SU
508 #define CONFIG_SET_SU 1
509 #endif
510 
511 #if CONFIG_NXP_WIFI_MULTI_BSSID_SUPPORT
512 #define CONFIG_MULTI_BSSID_SUPPORT 1
513 #endif
514 
515 #if CONFIG_NXP_WIFI_FRAG_THRESHOLD
516 #define CONFIG_WIFI_FRAG_THRESHOLD 1
517 #endif
518 
519 #if CONFIG_NXP_WIFI_FORCE_RTS
520 #define CONFIG_WIFI_FORCE_RTS 1
521 #endif
522 
523 #if CONFIG_NXP_WIFI_TX_AMPDU_PROT_MODE
524 #define CONFIG_TX_AMPDU_PROT_MODE 1
525 #endif
526 
527 #if CONFIG_NXP_WIFI_EXTERNAL_COEX_PTA
528 #define CONFIG_EXTERNAL_COEX_PTA 1
529 #endif
530 
531 #if CONFIG_NXP_WIFI_FW_VDLLV2
532 #define CONFIG_FW_VDLLV2 1
533 #endif
534 
535 #if CONFIG_WIFI_NM_HOSTAPD_AP
536 #define CONFIG_WPA_SUPP_AP 1
537 #endif
538 #if (CONFIG_NXP_WIFI_8978) || (CONFIG_NXP_WIFI_8987) || (CONFIG_NXP_WIFI_9177)
539 
540 #define CONFIG_GTK_REKEY_OFFLOAD 1
541 
542 #define CONFIG_FW_VDLL 1
543 
544 #endif
545 
546 #if (CONFIG_NXP_WIFI_9177)
547 #define CONFIG_TCP_ACK_ENH 1
548 #endif
549 
550 #if CONFIG_11AX
551 
552 #if !CONFIG_WPA_SUPP
553 #define CONFIG_DRIVER_MBO 1
554 #endif
555 
556 #endif
557 
558 #ifndef CONFIG_NXP_WIFI_SOFTAP_SUPPORT
559 #if UAP_SUPPORT
560 #undef UAP_SUPPORT
561 #define UAP_SUPPORT 0
562 #endif
563 
564 #if UAP_HOST_MLME
565 #undef UAP_HOST_MLME
566 #define UAP_HOST_MLME 0
567 #endif
568 
569 #if CONFIG_UAP_AMPDU_TX
570 #undef CONFIG_UAP_AMPDU_TX
571 #define CONFIG_UAP_AMPDU_TX 0
572 #endif
573 
574 #if CONFIG_UAP_AMPDU_RX
575 #undef CONFIG_UAP_AMPDU_RX
576 #define CONFIG_UAP_AMPDU_RX 0
577 #endif
578 #endif
579 
580 #ifdef __cplusplus
581 }
582 #endif
583 
584 #endif /* __NXP_WIFI_H__ */
585