From 2babee9629e699e7dc59f616aa9c97c7106dae46 Mon Sep 17 00:00:00 2001 From: Maochen Wang Date: Tue, 8 Oct 2024 16:05:12 +0800 Subject: [PATCH 01/10] manifest: Update hal_nxp to add Wi-Fi driver Update hal_nxp to add Wi-Fi driver code. Signed-off-by: Maochen Wang --- west.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/west.yml b/west.yml index 4279b74a60c73..e4abd8562356d 100644 --- a/west.yml +++ b/west.yml @@ -198,7 +198,7 @@ manifest: groups: - hal - name: hal_nxp - revision: 683c007c3b834012358b4adf96a532d18ce05646 + revision: 99570ee6fa32a9ab413b8ee9c0226cda26f6a2ae path: modules/hal/nxp groups: - hal From 544b758aaedbf7ab0b75f5cefddb1e2be111079f Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 18 Oct 2024 15:39:00 -0500 Subject: [PATCH 02/10] modules: hostap: remove ap_bandwidth API ap_bandwidth API implementation is not complete. Remove the structure definition and implementation from the NXP WiFi driver to fix a build error. Signed-off-by: Daniel DeGrasse --- drivers/wifi/nxp/nxp_wifi_drv.c | 43 --------------------------------- 1 file changed, 43 deletions(-) diff --git a/drivers/wifi/nxp/nxp_wifi_drv.c b/drivers/wifi/nxp/nxp_wifi_drv.c index e14bebb033db8..4efa3ffcdff57 100644 --- a/drivers/wifi/nxp/nxp_wifi_drv.c +++ b/drivers/wifi/nxp/nxp_wifi_drv.c @@ -769,47 +769,6 @@ static int nxp_wifi_version(const struct device *dev, struct wifi_version *param return 0; } -static int nxp_wifi_ap_bandwidth(const struct device *dev, struct wifi_ap_params *params) -{ - int status = NXP_WIFI_RET_SUCCESS; - int ret = WM_SUCCESS; - struct interface *if_handle = (struct interface *)dev->data; - - if (if_handle->state.interface != WLAN_BSS_TYPE_UAP) { - LOG_ERR("Wi-Fi not in uAP mode"); - return -EIO; - } - - if (s_nxp_wifi_State != NXP_WIFI_STARTED) { - status = NXP_WIFI_RET_NOT_READY; - } - - if (status == NXP_WIFI_RET_SUCCESS) { - - if (params->oper == WIFI_MGMT_SET) { - - ret = wlan_uap_set_bandwidth(params->bandwidth); - - if (ret != WM_SUCCESS) { - status = NXP_WIFI_RET_FAIL; - } - } else { - ret = wlan_uap_get_bandwidth(¶ms->bandwidth); - - if (ret != WM_SUCCESS) { - status = NXP_WIFI_RET_FAIL; - } - } - } - - if (status != NXP_WIFI_RET_SUCCESS) { - LOG_ERR("Failed to get/set Wi-Fi AP bandwidth"); - return -EAGAIN; - } - - return 0; -} - static int nxp_wifi_connect(const struct device *dev, struct wifi_connect_req_params *params) { int status = NXP_WIFI_RET_SUCCESS; @@ -1758,7 +1717,6 @@ static const struct wifi_mgmt_ops nxp_wifi_sta_mgmt = { .reg_domain = nxp_wifi_reg_domain, #ifdef CONFIG_NXP_WIFI_SOFTAP_SUPPORT .ap_enable = nxp_wifi_start_ap, - .ap_bandwidth = nxp_wifi_ap_bandwidth, .ap_disable = nxp_wifi_stop_ap, #endif .iface_status = nxp_wifi_status, @@ -1838,7 +1796,6 @@ static const struct wifi_mgmt_ops nxp_wifi_uap_mgmt = { .set_power_save = nxp_wifi_power_save, .get_power_save_config = nxp_wifi_get_power_save, .set_btwt = nxp_wifi_set_btwt, - .ap_bandwidth = nxp_wifi_ap_bandwidth, .ap_config_params = nxp_wifi_ap_config_params, }; From 6e32b158a09141cb837facbb394f1e0e9acea6fd Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 18 Oct 2024 15:40:33 -0500 Subject: [PATCH 03/10] modules: hostap: remove set_btwt API set_btwt API implementation is not complete. Remove the structure definition and implementation from the NXP WiFi driver to fix a build error. Signed-off-by: Daniel DeGrasse --- drivers/wifi/nxp/nxp_wifi_drv.c | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/drivers/wifi/nxp/nxp_wifi_drv.c b/drivers/wifi/nxp/nxp_wifi_drv.c index 4efa3ffcdff57..dd044b8bb8a65 100644 --- a/drivers/wifi/nxp/nxp_wifi_drv.c +++ b/drivers/wifi/nxp/nxp_wifi_drv.c @@ -1421,25 +1421,6 @@ static int nxp_wifi_set_twt(const struct device *dev, struct wifi_twt_params *pa return ret; } -static int nxp_wifi_set_btwt(const struct device *dev, struct wifi_twt_params *params) -{ - wlan_btwt_config_t btwt_config; - int ret = -1; - - btwt_config.action = 1; - btwt_config.sub_id = params->btwt.sub_id; - btwt_config.nominal_wake = params->btwt.nominal_wake; - btwt_config.max_sta_support = params->btwt.max_sta_support; - btwt_config.twt_mantissa = params->btwt.twt_interval; - btwt_config.twt_offset = params->btwt.twt_offset; - btwt_config.twt_exponent = params->btwt.twt_exponent; - btwt_config.sp_gap = params->btwt.sp_gap; - - ret = wlan_set_btwt_cfg(&btwt_config); - - return ret; -} - static void nxp_wifi_sta_init(struct net_if *iface) { const struct device *dev = net_if_get_device(iface); @@ -1795,7 +1776,6 @@ static const struct wifi_mgmt_ops nxp_wifi_uap_mgmt = { #endif .set_power_save = nxp_wifi_power_save, .get_power_save_config = nxp_wifi_get_power_save, - .set_btwt = nxp_wifi_set_btwt, .ap_config_params = nxp_wifi_ap_config_params, }; From 85901558bb2e440037351164faa35d08c1f0a392 Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 18 Oct 2024 15:41:09 -0500 Subject: [PATCH 04/10] drivers: wifi: nxp: remove non-existent TWT fields Remove references to TWT fields that did not exist, to resolve a build error. Signed-off-by: Daniel DeGrasse --- drivers/wifi/nxp/nxp_wifi_drv.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/wifi/nxp/nxp_wifi_drv.c b/drivers/wifi/nxp/nxp_wifi_drv.c index dd044b8bb8a65..3dd714f7d9d94 100644 --- a/drivers/wifi/nxp/nxp_wifi_drv.c +++ b/drivers/wifi/nxp/nxp_wifi_drv.c @@ -1402,12 +1402,10 @@ static int nxp_wifi_set_twt(const struct device *dev, struct wifi_twt_params *pa twt_setup_conf.implicit = params->setup.implicit; twt_setup_conf.announced = params->setup.announce; twt_setup_conf.trigger_enabled = params->setup.trigger; - twt_setup_conf.twt_info_disabled = params->setup.twt_info_disable; twt_setup_conf.negotiation_type = params->negotiation_type; twt_setup_conf.twt_wakeup_duration = params->setup.twt_wake_interval; twt_setup_conf.flow_identifier = params->flow_id; twt_setup_conf.hard_constraint = 1; - twt_setup_conf.twt_exponent = params->setup.exponent; twt_setup_conf.twt_mantissa = params->setup.twt_interval; twt_setup_conf.twt_request = params->setup.responder; ret = wlan_set_twt_setup_cfg(&twt_setup_conf); From 64b574d2a89fdefb856d7084024481aaa1028f58 Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 18 Oct 2024 17:03:52 -0500 Subject: [PATCH 05/10] drivers: wifi: nxp: remove unused nxp_wifi_uap_status function Remove unused function `nxp_wifi_uap_status`. Signed-off-by: Daniel DeGrasse --- drivers/wifi/nxp/nxp_wifi_drv.c | 62 --------------------------------- 1 file changed, 62 deletions(-) diff --git a/drivers/wifi/nxp/nxp_wifi_drv.c b/drivers/wifi/nxp/nxp_wifi_drv.c index 3dd714f7d9d94..71041c3360ea9 100644 --- a/drivers/wifi/nxp/nxp_wifi_drv.c +++ b/drivers/wifi/nxp/nxp_wifi_drv.c @@ -917,68 +917,6 @@ static inline enum wifi_security_type nxp_wifi_security_type(enum wlan_security_ } } -#ifndef CONFIG_WIFI_NM_WPA_SUPPLICANT -static int nxp_wifi_uap_status(const struct device *dev, struct wifi_iface_status *status) -{ - enum wlan_connection_state connection_state = WLAN_DISCONNECTED; - struct interface *if_handle = (struct interface *)&g_uap; - - wlan_get_uap_connection_state(&connection_state); - - if (connection_state == WLAN_UAP_STARTED) { - - if (!wlan_get_current_uap_network(&nxp_wlan_network)) { - strncpy(status->ssid, nxp_wlan_network.ssid, WIFI_SSID_MAX_LEN); - status->ssid[WIFI_SSID_MAX_LEN - 1] = 0; - status->ssid_len = strlen(status->ssid); - - memcpy(status->bssid, nxp_wlan_network.bssid, WIFI_MAC_ADDR_LEN); - - status->rssi = nxp_wlan_network.rssi; - - status->channel = nxp_wlan_network.channel; - - status->beacon_interval = nxp_wlan_network.beacon_period; - - status->dtim_period = nxp_wlan_network.dtim_period; - - if (if_handle->state.interface == WLAN_BSS_TYPE_STA) { - status->iface_mode = WIFI_MODE_INFRA; - } -#ifdef CONFIG_NXP_WIFI_SOFTAP_SUPPORT - else if (if_handle->state.interface == WLAN_BSS_TYPE_UAP) { - status->iface_mode = WIFI_MODE_AP; - } -#endif - -#ifdef CONFIG_NXP_WIFI_11AX - if (nxp_wlan_network.dot11ax) { - status->link_mode = WIFI_6; - } -#endif -#ifdef CONFIG_NXP_WIFI_11AC - else if (nxp_wlan_network.dot11ac) { - status->link_mode = WIFI_5; - } -#endif - else if (nxp_wlan_network.dot11n) { - status->link_mode = WIFI_4; - } else { - status->link_mode = WIFI_3; - } - - status->band = nxp_wlan_network.channel > 14 ? WIFI_FREQ_BAND_5_GHZ - : WIFI_FREQ_BAND_2_4_GHZ; - status->security = nxp_wifi_security_type(nxp_wlan_network.security.type); - status->mfp = nxp_wlan_network.security.mfpr ? WIFI_MFP_REQUIRED : - (nxp_wlan_network.security.mfpc ? WIFI_MFP_OPTIONAL : 0); - } - } - - return 0; -} -#endif - static int nxp_wifi_status(const struct device *dev, struct wifi_iface_status *status) { enum wlan_connection_state connection_state = WLAN_DISCONNECTED; From be4932f698bb01037957377b4a4d8d8522711d2e Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 18 Oct 2024 15:29:58 -0500 Subject: [PATCH 06/10] drivers: wifi: nxp: add CONFIG_NXP_WIFI_BUILD_ONLY_MODE for CI testing Add CONFIG_NXP_WIFI_BUILD_ONLY_MODE, which allows the NXP WiFi driver to be built without a binary blob. The built application will not be functional, but this enables continuous integration to run upstream. Signed-off-by: Daniel DeGrasse --- drivers/wifi/nxp/Kconfig.nxp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/wifi/nxp/Kconfig.nxp b/drivers/wifi/nxp/Kconfig.nxp index b3172e1b1b0ae..8832688700e80 100644 --- a/drivers/wifi/nxp/Kconfig.nxp +++ b/drivers/wifi/nxp/Kconfig.nxp @@ -20,6 +20,13 @@ module = WIFI_NXP config WIFI_MGMT_SCAN_CHAN_MAX_MANUAL default 50 +config NXP_WIFI_BUILD_ONLY_MODE + bool "Build only mode (do not link wireless firmware blob)" + help + Skip linking the firmware blob into the Wi-Fi build. This will + not result in a functional application, but allows the Wi-Fi + driver to be built without binary blobs + config NXP_WIFI_CUSTOM bool "Custom NXP Wi-Fi part" help From 0f54d8883c396f2ab5703a3edfb65257bc28d0a4 Mon Sep 17 00:00:00 2001 From: Maochen Wang Date: Mon, 21 Oct 2024 18:52:26 +0900 Subject: [PATCH 07/10] hostap: fix build error when WPS enabled Fix build error of multiple definition of `dh5_init' in crypto_mbedtls_alt.c when WPS enabled. Signed-off-by: Maochen Wang --- modules/hostap/CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/modules/hostap/CMakeLists.txt b/modules/hostap/CMakeLists.txt index e1bd8c6c232bc..9910b077e6ba6 100644 --- a/modules/hostap/CMakeLists.txt +++ b/modules/hostap/CMakeLists.txt @@ -331,8 +331,15 @@ zephyr_library_sources_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_WPS ${HOSTAP_SRC_BASE}/wps/wps_enrollee.c ${HOSTAP_SRC_BASE}/wps/wps_registrar.c ${HOSTAP_SRC_BASE}/crypto/dh_groups.c +) + +if(NOT CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT) +# dh_group5 is only needed if we are not using mbedtls, as mbedtls provides +# its own definition +zephyr_library_sources_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_WPS ${HOSTAP_SRC_BASE}/crypto/dh_group5.c ) +endif() zephyr_library_compile_definitions_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_P2P CONFIG_P2P From 6c12f870eceeb963136e96ffb5c3cdb8d392fe79 Mon Sep 17 00:00:00 2001 From: Maochen Wang Date: Tue, 22 Oct 2024 11:35:42 +0900 Subject: [PATCH 08/10] samples: wifi: fix build warning of DIV_ROUND_UP redefined Remove CONFIG_MBEDTLS_HAVE_TIME_DATE, which will cause that mbedtls include Zephyr time.h and leads to 'DIV_ROUND_UP' redefined warning. Signed-off-by: Maochen Wang --- samples/net/wifi/boards/rd_rw612_bga.conf | 1 - 1 file changed, 1 deletion(-) diff --git a/samples/net/wifi/boards/rd_rw612_bga.conf b/samples/net/wifi/boards/rd_rw612_bga.conf index d6435e874b77e..5b3ebdd7fc63b 100644 --- a/samples/net/wifi/boards/rd_rw612_bga.conf +++ b/samples/net/wifi/boards/rd_rw612_bga.conf @@ -93,7 +93,6 @@ CONFIG_MBEDTLS=y CONFIG_MBEDTLS_BUILTIN=y CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y CONFIG_MBEDTLS_USER_CONFIG_FILE="wpa_supp_els_pkc_mbedtls_config.h" -CONFIG_MBEDTLS_HAVE_TIME_DATE=y # Include els_pkc in build CONFIG_ENTROPY_GENERATOR=y From 2ccfda9e296f010179bf7b8257de704670099ec1 Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Tue, 22 Oct 2024 16:44:56 -0500 Subject: [PATCH 09/10] net: l2: wifi: add explicit dependency on "app" target for pem headers Generated PEM headers need to be created before we build the WiFi shell when WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE is enabled, so add an explicit dependency on the app target to be certain these headers are created Signed-off-by: Daniel DeGrasse --- subsys/net/l2/wifi/CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/subsys/net/l2/wifi/CMakeLists.txt b/subsys/net/l2/wifi/CMakeLists.txt index eb22a54cf7774..38f75109454f9 100644 --- a/subsys/net/l2/wifi/CMakeLists.txt +++ b/subsys/net/l2/wifi/CMakeLists.txt @@ -32,6 +32,7 @@ file(MAKE_DIRECTORY ${gen_dir}) # convert .pem files to array data at build time zephyr_include_directories(${gen_inc_dir}) +if (CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE) generate_inc_file_for_target( app ${ZEPHYR_BASE}/samples/net/wifi/test_certs/client.pem @@ -67,3 +68,9 @@ generate_inc_file_for_target( ${ZEPHYR_BASE}/samples/net/wifi/test_certs/ca2.pem ${gen_dir}/ca2.pem.inc ) + +# Add explicit dependency on app target for ZEPHYR_CURRENT_LIBRARY, so these +# headers are generated at the correct point in the build +add_dependencies(${ZEPHYR_CURRENT_LIBRARY} app) + +endif() # CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE From 4f53c6b5e9ee96a22e2be61e6646265dcb1b9ba9 Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 18 Oct 2024 15:44:03 -0500 Subject: [PATCH 10/10] samples: net: wifi: add support for building NXP WiFi Add support for building NXP WiFi. Since the driver typically requires binary blobs, enable CONFIG_NXP_WIFI_BUILD_ONLY_MODE for this testcase. Signed-off-by: Daniel DeGrasse --- samples/net/wifi/boards/frdm_rw612.conf | 158 ++++++++++++++++++++++++ samples/net/wifi/sample.yaml | 6 + 2 files changed, 164 insertions(+) create mode 100644 samples/net/wifi/boards/frdm_rw612.conf diff --git a/samples/net/wifi/boards/frdm_rw612.conf b/samples/net/wifi/boards/frdm_rw612.conf new file mode 100644 index 0000000000000..5b5ec82460e08 --- /dev/null +++ b/samples/net/wifi/boards/frdm_rw612.conf @@ -0,0 +1,158 @@ +CONFIG_WIFI_NXP=y +CONFIG_NXP_RW610=y +CONFIG_NXP_WIFI_SHELL=y + +# +# C Library +# +CONFIG_REQUIRES_FULL_LIBC=y +CONFIG_CBPRINTF_FP_SUPPORT=y + +# log +CONFIG_WIFI_LOG_LEVEL_DBG=y +CONFIG_THREAD_LOCAL_STORAGE=y +CONFIG_ASSERT=y +CONFIG_ASSERT_LEVEL=2 +CONFIG_LOG_MODE_IMMEDIATE=y +CONFIG_LOG_PRINTK=n + +# os +CONFIG_THREAD_CUSTOM_DATA=y +CONFIG_EVENTS=y +CONFIG_SYS_HEAP_AUTO=y +CONFIG_HEAP_MEM_POOL_SIZE=122880 +CONFIG_SCHED_MULTIQ=y +CONFIG_ZVFS_OPEN_MAX=30 + +# shell +CONFIG_SHELL_ARGC_MAX=48 +CONFIG_WIFI_SHELL_MAX_AP_STA=8 +CONFIG_WIFI_MGMT_AP_MAX_NUM_STA=8 +CONFIG_SHELL_CMD_BUFF_SIZE=512 + +# net +CONFIG_NET_L2_ETHERNET=y +CONFIG_NET_DHCPV4_SERVER_ADDR_COUNT=32 +CONFIG_NET_IPV4=y +CONFIG_NET_IPV6=y +CONFIG_ETH_MCUX=n +CONFIG_NET_ZPERF=y +CONFIG_NET_ZPERF_MAX_PACKET_SIZE=1500 +CONFIG_NET_BUF_LOG=y +CONFIG_NET_PKT_RX_COUNT=60 +CONFIG_NET_PKT_TX_COUNT=40 +CONFIG_NET_BUF_RX_COUNT=60 +CONFIG_NET_BUF_TX_COUNT=80 +CONFIG_NET_BUF_DATA_SIZE=1744 +CONFIG_NET_TC_TX_COUNT=1 +CONFIG_NET_TC_RX_COUNT=1 +CONFIG_NET_MGMT_EVENT_QUEUE_SIZE=20 +CONFIG_NET_IF_MAX_IPV4_COUNT=2 +CONFIG_NET_IF_MAX_IPV6_COUNT=2 +CONFIG_DNS_RESOLVER=y +CONFIG_DNS_RESOLVER_MAX_SERVERS=2 +CONFIG_NET_SOCKETS_POLL_MAX=14 +CONFIG_NET_ZPERF_MAX_SESSIONS=6 +CONFIG_NET_IPV4_FRAGMENT=y +CONFIG_NET_IPV4_FRAGMENT_MAX_COUNT=3 +CONFIG_NET_IPV4_FRAGMENT_MAX_PKT=7 +CONFIG_NET_IPV4_FRAGMENT_TIMEOUT=3 +CONFIG_NET_IPV6_FRAGMENT=y +CONFIG_NET_IPV6_FRAGMENT_MAX_COUNT=3 +CONFIG_NET_IPV6_FRAGMENT_MAX_PKT=8 +CONFIG_NET_IPV6_FRAGMENT_TIMEOUT=3 +CONFIG_NET_MAX_CONN=10 +CONFIG_NET_DHCPV4_SERVER_ICMP_PROBE_TIMEOUT=100 +CONFIG_ETH_DRIVER=n + +# net threads priority +CONFIG_NET_TC_THREAD_PRIO_CUSTOM=y +CONFIG_NET_TC_THREAD_PREEMPTIVE=y +CONFIG_NET_TCP_WORKER_PRIO=-16 +CONFIG_NET_TC_TX_THREAD_BASE_PRIO=3 +CONFIG_NET_TC_RX_THREAD_BASE_PRIO=3 +CONFIG_ZPERF_WORK_Q_THREAD_PRIORITY=3 +CONFIG_NET_SOCKETS_SERVICE_THREAD_PRIO=3 +CONFIG_NET_TC_SKIP_FOR_HIGH_PRIO=y +CONFIG_NET_CONTEXT_PRIORITY=y + +CONFIG_WIFI_NM_WPA_SUPPLICANT=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_CLI=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_DPP=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_EAPOL=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_MBEDTLS_PSA=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_INF_MON=n +CONFIG_WIFI_NM_MAX_MANAGED_INTERFACES=2 +CONFIG_SAE_PWE_EARLY_EXIT=y +CONFIG_WIFI_NM_HOSTAPD_AP=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_WPS=y + +# Enable mbedtls +CONFIG_MBEDTLS=y +CONFIG_MBEDTLS_BUILTIN=y +CONFIG_MBEDTLS_USER_CONFIG_ENABLE=y +CONFIG_MBEDTLS_USER_CONFIG_FILE="wpa_supp_els_pkc_mbedtls_config.h" + +# Include els_pkc in build +CONFIG_ENTROPY_GENERATOR=y +CONFIG_MBEDTLS_PSA_CRYPTO_C=y +CONFIG_MBEDTLS_ENTROPY_C=y +CONFIG_MBEDTLS_ENTROPY_POLL_ZEPHYR=y +CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=8192 + +# power management +CONFIG_PM=y +CONFIG_PM_DEVICE=y +CONFIG_PM_LOG_LEVEL_OFF=y +CONFIG_PM_DEVICE_LOG_LEVEL_OFF=y +CONFIG_IDLE_STACK_SIZE=1024 + +# stack size +CONFIG_SHELL_STACK_SIZE=6144 +CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 +CONFIG_NET_MGMT_EVENT_STACK_SIZE=4608 +CONFIG_NET_TCP_WORKQ_STACK_SIZE=2048 +CONFIG_MAIN_STACK_SIZE=4096 +CONFIG_NET_SOCKETS_SERVICE_STACK_SIZE=4096 +CONFIG_WIFI_NM_WPA_SUPPLICANT_WQ_STACK_SIZE=12288 +CONFIG_WIFI_NM_WPA_SUPPLICANT_THREAD_STACK_SIZE=12288 + +# optimization level +# refer to Kconfig.zephyr for Optimizations Level +CONFIG_SPEED_OPTIMIZATIONS=y +#CONFIG_SIZE_OPTIMIZATIONS=y +#CONFIG_DEBUG_OPTIMIZATIONS=y +#CONFIG_NO_OPTIMIZATIONS=y + +# debug & stats +CONFIG_SYS_HEAP_VALIDATE=y +CONFIG_SYS_HEAP_RUNTIME_STATS=y +#CONFIG_NET_PKT_TXTIME_STATS=y +#CONFIG_NET_PKT_TXTIME_STATS_DETAIL=y +CONFIG_NET_STATISTICS_WIFI=y +CONFIG_NET_STATISTICS_USER_API=y +#CONFIG_NET_STATISTICS_PERIODIC_OUTPUT=y +#CONFIG_NET_BUF_POOL_USAGE=y +#CONFIG_NET_DEBUG_NET_PKT_ALLOC=y + +# stack size for -O0 +#CONFIG_SHELL_STACK_SIZE=8192 +#CONFIG_NET_TCP_WORKQ_STACK_SIZE=4096 +#CONFIG_NET_TX_STACK_SIZE=4096 +#CONFIG_NET_RX_STACK_SIZE=4096 +#CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096 +#CONFIG_ZPERF_WORK_Q_STACK_SIZE=4096 +#CONFIG_MAIN_STACK_SIZE=4096 +#CONFIG_WIFI_NM_WPA_SUPPLICANT_WQ_STACK_SIZE=16384 +#CONFIG_WIFI_NM_WPA_SUPPLICANT_THREAD_STACK_SIZE=16384 +#CONFIG_IDLE_STACK_SIZE=2048 + +# comment out for -O0 +CONFIG_CODE_DATA_RELOCATION_SRAM=y +#CONFIG_WIFI_NM_WPA_SUPPLICANT_DEBUG_LEVEL=2 +CONFIG_WIFI_NM_WPA_SUPPLICANT_LOG_LEVEL_INF=y +CONFIG_WIFI_NM_WPA_SUPPLICANT_WQ_PRIO=3 +CONFIG_WIFI_NM_WPA_SUPPLICANT_PRIO=3 +CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=80000 diff --git a/samples/net/wifi/sample.yaml b/samples/net/wifi/sample.yaml index 34aea9386d262..c710f1627969c 100644 --- a/samples/net/wifi/sample.yaml +++ b/samples/net/wifi/sample.yaml @@ -74,3 +74,9 @@ tests: - thingy53/nrf5340/cpuapp integration_platforms: - thingy53/nrf5340/cpuapp + sample.net.wifi.nxp_wifi: + extra_args: + - CONFIG_NXP_WIFI_BUILD_ONLY_MODE=y + platform_allow: + - frdm_rw612 + - rd_rw612_bga