-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Description
Describe the bug
When the data transmission path in the nRF70 Wi-Fi driver is disabled (Scan only operations), CONFIG_NRF70_RX_MAX_DATA_SIZE is overridden when setting up buffer sizes, but still used when partitioning the internal nRF70 RAM packet buffer.
zephyr/drivers/wifi/nrf_wifi/src/fmac_main.c
Lines 106 to 108 in ad4c3e3
| static const unsigned int rx1_buf_sz = 1000; | |
| static const unsigned int rx2_buf_sz = 1000; | |
| static const unsigned int rx3_buf_sz = 1000; |
As a result, if CONFIG_NRF70_RX_MAX_DATA_SIZE is set to less than the overridden value (1004) together with CONFIG_NRF70_DATA_TX=n, the driver will report runtime errors when attempting to boot the co-processor. Somewhat interestingly, the driver still appears to work after this, although this may be particular to my usage pattern.
Regression
- This is a regression.
Steps to reproduce
Compile the nRF70 driver with CONFIG_NRF70_DATA_TX=n and CONFIG_NRF70_RX_MAX_DATA_SIZE={<1004}.
Relevant log output
[00:00:00.400,512] <err> wifi_nrf: hal_rpu_mem_write: Invalid memory address 0xB0031098
[00:00:00.401,184] <err> wifi_nrf: hal_rpu_mem_write: Invalid memory address 0xB0031484Impact
Functional Limitation – Some features not working as expected, but system usable.
Environment
- Current main
Additional Context
No response
Metadata
Metadata
Assignees
Labels
Type
Projects
Status