Skip to content

Commit

Permalink
Merge branch 'feature/supplicant_bss_extmem_v5.2' into 'release/v5.2'
Browse files Browse the repository at this point in the history
WiFi: Add support to move supplicant BSS to external memory (v5.2)

See merge request espressif/esp-idf!28743
  • Loading branch information
jack0c committed Feb 19, 2024
2 parents e8548e7 + d900eed commit 65d127d
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 2 deletions.
3 changes: 3 additions & 0 deletions components/wpa_supplicant/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ idf_build_get_property(target IDF_TARGET)

if(${target} STREQUAL "linux")
return() # This component is not supported by the POSIX/Linux simulator
else()
set(linker_fragments linker.lf)
endif()

set(srcs "port/os_xtensa.c"
Expand Down Expand Up @@ -217,6 +219,7 @@ idf_component_register(SRCS "${srcs}" "${esp_srcs}" "${tls_src}" "${roaming_src}
"${crypto_src}" "${mbo_src}" "${dpp_src}" "${wps_registrar_src}"
INCLUDE_DIRS include port/include esp_supplicant/include
PRIV_INCLUDE_DIRS src src/utils esp_supplicant/src src/crypto
LDFRAGMENTS ${linker_fragments}
PRIV_REQUIRES mbedtls esp_timer esp_wifi)

target_compile_options(${COMPONENT_LIB} PRIVATE -Wno-strict-aliasing -Wno-write-strings -Werror)
Expand Down
5 changes: 5 additions & 0 deletions components/wpa_supplicant/linker.lf
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[mapping:wpa_supplicant]
archive: libwpa_supplicant.a
entries:
if ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY = y:
* (extram_bss)
2 changes: 1 addition & 1 deletion docs/en/api-guides/external-ram.rst
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ Allow .bss Segment to Be Placed in External Memory

Enable this option by checking :ref:`CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY`.

If enabled, the region of the data virtual address space where the PSRAM is mapped to will be used to store zero-initialized data (BSS segment) from the lwIP, net80211, libpp, and bluedroid ESP-IDF libraries.
If enabled, the region of the data virtual address space where the PSRAM is mapped to will be used to store zero-initialized data (BSS segment) from the lwIP, net80211, libpp, wpa_supplicant and bluedroid ESP-IDF libraries.

Additional data can be moved from the internal BSS segment to external RAM by applying the macro ``EXT_RAM_BSS_ATTR`` to any static declaration (which is not initialized to a non-zero value).

Expand Down
2 changes: 1 addition & 1 deletion docs/zh_CN/api-guides/external-ram.rst
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ ESP-IDF 启动过程中,片外 RAM 被映射到数据虚拟地址空间,该

通过勾选 :ref:`CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY` 启用该选项。

启用该选项后,PSRAM 被映射到的数据虚拟地址空间将用于存储来自 lwip、net80211、libpp 和 bluedroid ESP-IDF 库中零初始化的数据(BSS 段)。
启用该选项后,PSRAM 被映射到的数据虚拟地址空间将用于存储来自 lwip、net80211、libpp, wpa_supplicant 和 bluedroid ESP-IDF 库中零初始化的数据(BSS 段)。

通过将宏 ``EXT_RAM_BSS_ATTR`` 应用于任何静态声明(未初始化为非零值),可以将附加数据从内部 BSS 段移到片外 RAM。

Expand Down

0 comments on commit 65d127d

Please sign in to comment.