Skip to content

Commit 418dd51

Browse files
authored
Merge branch 'main' into llvm_improvements
2 parents 5829654 + bc80cbd commit 418dd51

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+478
-362
lines changed

MAINTAINERS.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2185,7 +2185,7 @@ Release Notes:
21852185
collaborators:
21862186
- sachinthegreen
21872187
files:
2188-
- drivers/wifi/nrfwifi/
2188+
- drivers/wifi/nrf_wifi/
21892189
- dts/bindings/wifi/nordic,nrf70.yaml
21902190
- dts/bindings/wifi/nordic,nrf70-qspi.yaml
21912191
- dts/bindings/wifi/nordic,nrf70-spi.yaml
@@ -4980,6 +4980,16 @@ West:
49804980
labels:
49814981
- "area: native port"
49824982

4983+
"West project: nrf_wifi":
4984+
status: maintained
4985+
maintainers:
4986+
- krish2718
4987+
- sachinthegreen
4988+
files:
4989+
- modules/nrf_wifi/
4990+
labels:
4991+
- "area: Wi-Fi"
4992+
49834993
"West project: open-amp":
49844994
status: odd fixes
49854995
collaborators:

drivers/wifi/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ add_subdirectory_ifdef(CONFIG_WIFI_SIMPLELINK simplelink)
1010
add_subdirectory_ifdef(CONFIG_WIFI_WINC1500 winc1500)
1111
add_subdirectory_ifdef(CONFIG_WIFI_NXP nxp)
1212
add_subdirectory_ifdef(CONFIG_WIFI_AIROC infineon)
13-
add_subdirectory_ifdef(CONFIG_WIFI_NRF70 nrfwifi)
13+
add_subdirectory_ifdef(CONFIG_WIFI_NRF70 nrf_wifi)

drivers/wifi/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,6 @@ source "drivers/wifi/esp_at/Kconfig.esp_at"
4242
source "drivers/wifi/esp32/Kconfig.esp32"
4343
source "drivers/wifi/nxp/Kconfig.nxp"
4444
source "drivers/wifi/infineon/Kconfig.airoc"
45-
source "drivers/wifi/nrfwifi/Kconfig.nrfwifi"
45+
source "drivers/wifi/nrf_wifi/Kconfig.nrfwifi"
4646

4747
endif # WIFI
Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
#
2+
# Copyright (c) 2024 Nordic Semiconductor ASA
3+
#
4+
# SPDX-License-Identifier: Apache-2.0
5+
#
6+
7+
zephyr_library_named(nrf_wifi)
8+
9+
set(OS_AGNOSTIC_BASE ${ZEPHYR_NRF_WIFI_MODULE_DIR})
10+
set(FW_BINS_BASE ${ZEPHYR_NRF_WIFI_MODULE_DIR}/zephyr/blobs/wifi_fw_bins)
11+
12+
zephyr_include_directories(
13+
inc
14+
src/qspi/inc
15+
# for net_sprint_ll_addr
16+
${ZEPHYR_BASE}/subsys/net/ip
17+
)
18+
19+
zephyr_include_directories_ifdef(CONFIG_NRF70_OFFLOADED_RAW_TX
20+
off_raw_tx/inc
21+
)
22+
23+
zephyr_library_sources_ifdef(CONFIG_NRF70_SR_COEX
24+
src/coex.c
25+
)
26+
27+
zephyr_library_sources(
28+
src/qspi/src/device.c
29+
src/qspi/src/rpu_hw_if.c
30+
src/qspi/src/ficr_prog.c
31+
)
32+
33+
zephyr_library_sources_ifndef(CONFIG_NRF70_OFFLOADED_RAW_TX
34+
src/fmac_main.c
35+
)
36+
37+
zephyr_library_sources_ifdef(CONFIG_NRF_WIFI_PATCHES_BUILTIN
38+
src/fw_load.c
39+
)
40+
41+
if(NOT CONFIG_NRF70_RADIO_TEST AND NOT CONFIG_NRF70_OFFLOADED_RAW_TX)
42+
zephyr_library_sources(
43+
src/net_if.c
44+
)
45+
endif()
46+
47+
zephyr_library_sources_ifdef(CONFIG_NET_L2_WIFI_MGMT
48+
src/wifi_mgmt_scan.c
49+
)
50+
51+
zephyr_library_sources_ifdef(CONFIG_NRF70_SYSTEM_MODE_COMMON
52+
src/wifi_mgmt.c
53+
)
54+
55+
zephyr_library_sources_ifdef(CONFIG_NRF70_OFFLOADED_RAW_TX
56+
off_raw_tx/src/off_raw_tx_api.c
57+
)
58+
59+
zephyr_library_sources_ifdef(CONFIG_NRF70_STA_MODE
60+
src/wpa_supp_if.c
61+
src/wifi_mgmt.c
62+
)
63+
64+
# Without WPA supplicant we only support scan
65+
zephyr_library_sources_ifdef(CONFIG_NRF70_STA_MODE
66+
src/wpa_supp_if.c)
67+
68+
zephyr_library_sources_ifdef(CONFIG_NRF70_ON_QSPI
69+
src/qspi/src/qspi_if.c
70+
)
71+
72+
zephyr_library_sources_ifdef(CONFIG_NRF70_ON_SPI
73+
src/qspi/src/spi_if.c
74+
)
75+
76+
zephyr_library_sources_ifdef(CONFIG_NRF70_UTIL
77+
src/wifi_util.c
78+
)
79+
80+
zephyr_compile_definitions_ifdef(CONFIG_NRF70_ON_QSPI
81+
# These are XIP related anomalies and aren't applicable for nRF7002 and cause
82+
# throughput issues.
83+
-DNRF53_ERRATA_43_ENABLE_WORKAROUND=0
84+
-DNRF52_ERRATA_215_ENABLE_WORKAROUND=0
85+
# nRF70 QSPI doesn't use 192MHz clock and most samples use 128MHz, this can cause anomaly 159
86+
# but as its rare and not seen in most cases, we can disable it.
87+
# Alternative is 128MHz CPU should be disabled that impacts Wi-Fi performance.
88+
-DNRF53_ERRATA_159_ENABLE_WORKAROUND=0
89+
)
90+
91+
if (CONFIG_NRF_WIFI_BUILD_ONLY_MODE)
92+
message(WARNING "
93+
------------------------------------------------------------------------
94+
Building only the nRF70 driver, skipping firmware patch.
95+
This is only for building (CI) purposes and will not work on a real device.
96+
------------------------------------------------------------------------
97+
")
98+
elseif(CONFIG_NRF_WIFI_PATCHES_BUILTIN)
99+
zephyr_blobs_verify(MODULE nrf_wifi REQUIRED)
100+
# RPU FW patch binaries based on the selected configuration
101+
if(CONFIG_NRF70_SYSTEM_MODE)
102+
set(NRF70_PATCH ${FW_BINS_BASE}/default/nrf70.bin)
103+
elseif(CONFIG_NRF70_RADIO_TEST)
104+
set(NRF70_PATCH ${FW_BINS_BASE}/radio_test/nrf70.bin)
105+
elseif(CONFIG_NRF70_SCAN_ONLY)
106+
set(NRF70_PATCH ${FW_BINS_BASE}/scan_only/nrf70.bin)
107+
elseif (CONFIG_NRF70_SYSTEM_WITH_RAW_MODES)
108+
set(NRF70_PATCH ${FW_BINS_BASE}/system_with_raw/nrf70.bin)
109+
elseif(CONFIG_NRF70_OFFLOADED_RAW_TX)
110+
set(NRF70_PATCH ${FW_BINS_BASE}/offloaded_raw_tx/nrf70.bin)
111+
else()
112+
# Error
113+
message(FATAL_ERROR "Unsupported nRF70 patch configuration")
114+
endif()
115+
116+
set(gen_inc_dir ${ZEPHYR_BINARY_DIR}/misc/generated)
117+
zephyr_include_directories(${gen_inc_dir})
118+
set(gen_dir ${gen_inc_dir}/nrf70_fw_patch)
119+
generate_inc_file_for_target(
120+
nrf_wifi
121+
${NRF70_PATCH}
122+
${gen_dir}/nrf70.bin.inc
123+
)
124+
endif()
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)