Commit Graph

266 Commits

Author SHA1 Message Date
yinqingzhao
7aa7a9da9c fix(wifi): comment out functions from ld files 2026-06-29 16:18:38 +08:00
Xiao Xufeng
789ce684c9 fix(mmap): fixed some API read wrong data via mmap when flash being erased/written while XIP on PSRAM
Before:

The cache won't be disabled when XIP on psram. But during flash
erasing/programming, read data will be courrupt.

When XIP in psram is enabled, the image is not mapped to the cache so
usually there will be no flash access. The only way to read from flash
is via the driver or use mmap. The driver has protection during erasing,
while th mmap region not.

Now:

Mmap APIs provide a flag to make mmap->unmap region mutually exclusive
to flash erase/programming when XIP from psram. SPI Flash write APIs
will benefit from this. When the flag is used, no concurrent access to
mapped region will happen while writing; otherwise the cache will be
disable to avoid data corruption.

Most ESP-IDF APIs calls mmap with this flag. As for users calling
mmap-like APIs directly, they can choose whether to enable this by a
flag.

Closes https://github.com/espressif/esp-idf/issues/14897
2026-06-16 01:00:43 +08:00
yinqingzhao
63b92cf17e fix(wifi): fix scheduling issue when tasks have the same priority as the Wi-Fi task 2026-06-10 11:48:26 +08:00
muhaidong
c2611cd018 fix(wifi): fix som rom func ld issue 2026-05-28 15:49:20 +08:00
Jiang Guang Ming
1ac137860c feat(mbedtls): enable PSA threading alt with ROM mbedTLS 2026-05-20 14:15:23 +08:00
Jiang Guang Ming
48418f58a2 feat(esp_rom): merge rom.mbedtls.ld to rom.mbedtls.eco4.ld 2026-05-20 14:15:22 +08:00
Jiang Guang Ming
5d5b8200dc feat(mbedtls): enable ESP32-C2(Rev2.0) ROM crypto for PSA 2026-05-20 14:10:14 +08:00
Marius Vikhammer
6af582c260 change(rom): add rom caps for bootloader in flash offset 2026-04-29 10:58:50 +08:00
Guillaume Souchere
a56354e9ab feat(heap): move TLSF ROM patches and related files from esp_rom to heap
The TLSF ROM patch code (rom_patch_tlsf.c, rom_patch_multi_heap.c),
their headers, and the per-target *.rom.heap.ld linker scripts are
semantically owned by the heap component, not esp_rom. Move them
accordingly:

- components/esp_rom/patches/esp_rom_tlsf.c
  → components/heap/rom_patches/rom_patch_tlsf.c
- components/esp_rom/patches/esp_rom_multi_heap.c
  → components/heap/rom_patches/rom_patch_multi_heap.c
- components/esp_rom/include/esp_rom_tlsf.h
  → components/heap/rom_patches/include/rom_patch_tlsf.h
- components/esp_rom/include/esp_rom_multi_heap.h
  → components/heap/rom_patches/include/rom_patch_multi_heap.h
- components/esp_rom/<target>/ld/<target>.rom.heap.ld (×8)
  → components/heap/port/<target>/ld/<target>.rom.heap.ld

Update heap/CMakeLists.txt to:
- use target_linker_script() directly for *.rom.heap.ld
- guard post-registration ROM patch setup with NOT BOOTLOADER_BUILD
- drop stale CONFIG_HEAP_TLSF_CHECK_PATCH symbol reference
- drop esp_rom_include_multi_heap_patch from TLSF_CHECK_PATCH guard

Remove the corresponding entries from esp_rom/CMakeLists.txt.
2026-04-23 12:21:31 +02:00
Guillaume Souchere
da81ec6f47 fix(esp_rom): Set poison check hook for tlsf_walk_pool patch 2026-04-23 07:51:04 +02:00
yinqingzhao
c3da80ee52 feat(wifi): add esp32s31 wifi support 2026-04-16 20:17:07 +08:00
Island
1005d55ddb Merge branch 'feat/support_run_time_alloc_for_esp_ip_test' into 'master'
Support Mempool Run Time Allocation for ESP IP Chips

Closes BLERP-2622

See merge request espressif/esp-idf!45778
2026-03-20 16:17:27 +08:00
Sajia
e5e65ce0ae fix(wifi): Add bss max idle timer and protected keep alive fixes 2026-03-18 17:53:12 +05:30
cjin
5ec82368ba feat(ble): make env init function cuttable on ESP32-C2 2026-03-18 17:21:42 +08:00
Wu Zheng Hui
261683e6b0 Merge branch 'fix/fix_sleep_exception_in_spi_flash_rom_impl' into 'master'
fix(esp_hw_support): fix sleep exception in spi flash rom impl

Closes IDF-15423

See merge request espressif/esp-idf!46409
2026-03-11 10:30:08 +08:00
Song Ruo Jing
b12fe6edb5 Merge branch 'refactor/esp_hal_regi2c' into 'master'
refactor(esp_hal_regi2c): move regi2c implementation from esp_rom to esp_hal_regi2c

Closes IDF-14920 and IDF-10110

See merge request espressif/esp-idf!45690
2026-03-10 21:30:29 +08:00
Song Ruo Jing
600bf5b6d7 refactor(esp_hal_regi2c): move regi2c implementation from esp_rom to esp_hal_regi2c 2026-03-10 15:08:51 +08:00
yinqingzhao
582b375e04 feat(bss_max_idle): optimization of the max BSS idle mechanism 2026-03-10 12:24:08 +08:00
wuzhenghui
c59c3a2c8d fix(esp_rom): sync spi_flash_disable/enable_cache patches to rom implementation 2026-03-09 21:21:24 +08:00
Island
26bc88a9ba Merge branch 'feat/fix_esp32c2_rom_rewrite_issue_rebase' into 'master'
Feat/fix esp32c2 rom rewrite issue rebase

See merge request espressif/esp-idf!45635
2026-02-11 10:15:44 +08:00
cjin
2a0df334e3 feat(ble): apply new method for rom code logic change on ESP32-C2 2026-02-09 10:52:15 +08:00
Chen Chen
eeb24057c4 refactor(hal): graduate systimer hal driver into esp_hal_systimer 2026-02-06 18:08:57 +08:00
Jiang Jiang Jian
287d3bfb08 Merge branch 'fix/fix_wifi_set_vendor_issue' into 'master'
fix(wifi): fix esp32c2 set vendor ie issue

Closes WIFIBUG-1695

See merge request espressif/esp-idf!45396
2026-01-30 22:16:30 +08:00
wangtao@espressif.com
2612c689ee fix(wifi): fix esp32c2 set vendor ie issue 2026-01-28 14:30:51 +08:00
Xiao Xufeng
8dbf23630a refactor(spi_flash): reorganize header files and improve API encapsulation
This commit reorganizes SPI flash header files to better reflect their
visibility and intended usage:

1. Rename `esp_flash_port/` to `esp_flash_chips/`:
   - Better reflects that these headers are for chip driver implementations
   - All chip driver headers moved to `esp_flash_chips/` directory
   - Added README.md explaining semi-public nature of these headers

2. Move internal headers to `esp_private/`:
   - `esp_flash_internal.h` -> `esp_private/esp_flash_internal.h`
   - `memspi_host_driver.h` -> `esp_private/memspi_host_driver.h`

3. Move chip driver related headers to `esp_flash_chips/`:
   - `esp_private/esp_flash_types.h` -> `esp_flash_chips/esp_flash_types.h`
   - `spi_flash/spi_flash_defs.h` -> `esp_flash_chips/spi_flash_defs.h`
   - `spi_flash_override.h` -> `esp_flash_chips/spi_flash_override.h`
   - All `spi_flash_chip_*.h` headers moved to `esp_flash_chips/`

4. Code improvements:
   - Remove unused includes (e.g., `spi_flash_override.h` from `cache_utils.c`)
   - Use public API `esp_flash_get_size()` instead of direct member access
   - Add `esp_flash_is_quad_mode` to linker.lf for IRAM placement

5. Documentation updates:
   - Add README.md in `esp_flash_chips/` explaining semi-public headers
   - Update programming guide with warnings about internal headers
   - Update both English and Chinese documentation

6. Update all references across the codebase:
   - Update includes in `spi_flash` component
   - Update `bootloader_support`, `app_update`, `esp_tee`, `espcoredump`
   - Update example projects

Breaking changes:
- Headers moved to new locations require include path updates
- `custom_flash_driver` example temporarily disabled until external
  components are updated
2026-01-23 03:38:54 +08:00
muhaidong
0090fa27cf fix(wifi): fix lmac tx done assert issue 2026-01-13 11:07:11 +08:00
muhaidong
19c6ae768b fix(wifi): fix some wapi and fragment issues
1. fix gcmp fragment rx issue
2. support wapi fragment tx and rx
3. fix wapi uskid issue
2025-12-09 15:02:46 +08:00
Alexey Lapshin
f6cd2fe970 Merge branch 'feature/update-toolchain-to-esp-15.2.0_20250929.4-6d3fdb7' into 'master'
Make Picolibc the default libc

See merge request espressif/esp-idf!43620
2025-12-04 01:14:01 +04:00
Alexey Lapshin
31810ae993 feat(esp_libc): make picolibc default libc 2025-12-03 13:31:42 +07:00
morris
3d31f510d0 refactor(hal_wdt): esp_hal_wdt also maintains the ROM implementation 2025-12-01 23:16:09 +08:00
Jiang Jiang Jian
78986757de Merge branch 'bugfix/fix_send_wakenull_off_channel' into 'master'
fix(wifi): fix issue that disarm send wake null timer donot take effect and sta bolck scan timeout

Closes WIFI-7020, WIFIBUG-1523, and WIFIBUG-1379

See merge request espressif/esp-idf!43158
2025-11-12 09:30:22 +08:00
sibeibei
4e2f33d445 fix(wifi): fix issue that disarm send wake null timer donot take effect 2025-11-11 17:29:38 +08:00
Song Ruo Jing
4b8633cc2b refactor(rom/gpio): add 'rom_' prefix to GPIO ROM functions 2025-11-07 15:26:52 +08:00
Zhou Xiao
4ce499148e change(ble): [AUTO_MR] updated rom linker script for ESP32-C2 2025-11-05 11:24:44 +08:00
yinqingzhao
4656a3cc7c fix(wifi): fix some wifi bugs related to bandwidth, twt and regdomain 2025-10-30 10:46:58 +08:00
Zhou Xiao
557b7bae2e change(ble): [AUTO_MR] updated rom linker script for ESP32-C2 2025-10-22 17:48:43 +08:00
Samuel Obuch
66de4ef8ca fix(esp_rom): correct typos defalut -> default 2025-10-02 17:41:40 +08:00
Zhou Xiao
09a3b29d01 change(ble): [AUTO_MR] updated rom linker script for ESP32-C2 2025-09-19 11:22:47 +08:00
Island
a3b8073d96 Merge branch 'change/ble_update_lib_20250828' into 'master'
change(ble): [AUTO_MR] 20250828 - Update ESP BLE Controller Lib

Closes BLERP-2183, BLERP-2083, BLERP-2195, and BLERP-2196

See merge request espressif/esp-idf!41601
2025-09-17 10:33:14 +08:00
zwl
32c3556c7a change(ble): [AUTO_MR] updated rom linker script for ESP32-C2 2025-09-16 00:06:40 +08:00
Marius Vikhammer
af91aa771b change(rom): removed deprecated STATUS enum, use ETS_STATUS instead 2025-09-15 10:36:16 +08:00
zwl
7f7c8e2c85 change(ble): [AUTO_MR] updated rom linker script for ESP32-C2 2025-08-06 21:05:01 +08:00
Zhou Xiao
ac6acf3629 change(ble): [AUTO_MR] updated rom linker script for ESP32-C2 2025-07-28 14:09:21 +08:00
Jiang Jiang Jian
8448452e03 Merge branch 'bugfix/add_lib_target_git_reversion_message' into 'master'
fix(wifi):fix open mode rx fragment fail issue

Closes WIFIBUG-1272 and WIFIBUG-1315

See merge request espressif/esp-idf!39426
2025-07-21 22:04:03 +08:00
muhaidong
a6a9c41573 fix(wifi): fix open mode rx fragment fail issue 2025-07-21 20:17:38 +08:00
wangtao@espressif.com
d32b2f6ca6 fix(wifi): fix esp32c2 eco4 ld issue 2025-07-18 17:54:44 +08:00
Zhou Xiao
f1838aeec1 fix(ble): updated rom linker script for ESP32-C2 2025-07-09 11:30:44 +08:00
zwl
7b1a7cc4c3 fix(ble): fixed occasional assert triggered during controller disable on ESP32-C2 2025-07-01 10:17:28 +08:00
Michael (XIAO Xufeng)
d5b4654039 Merge branch 'bugfix/esp_flash_escape_checking' into 'master'
fix(esp_flash): fixed issue of escaping boundary check

See merge request espressif/esp-idf!36128
2025-06-25 01:23:26 +08:00
Xiao Xufeng
83ca12c8e0 fix(esp_flash): fixed issue of escaping boundary check
Also patched corresponding ROM functions
2025-06-24 15:30:11 +08:00