Commit Graph

34230 Commits

Author SHA1 Message Date
Chen Ji Chang
e2e0da1a26 Merge branch 'feat/esp_hal_pcnt' into 'master'
feat(hal): graudate the PCNT hal driver into a new component

Closes IDF-14098

See merge request espressif/esp-idf!43138
2025-11-14 10:34:57 +08:00
Jiang Jiang Jian
b7c549d111 Merge branch 'bugfix/fix_espnow_send_fail_when_coex_enable' into 'master'
fix(coex): fixed the espnow send fail when coex enable

Closes WIFIBUG-1538 and WIFIBUG-1436

See merge request espressif/esp-idf!43298
2025-11-14 10:21:50 +08:00
Marius Vikhammer
d209293856 feat(stdio): updated CMakelists.txt to support cmake v2 build system 2025-11-14 10:13:38 +08:00
Frantisek Hrbata
a034ef8713 feat(build): add initial configuration for fast reflashing
Introduce ESPTOOLPY_FAST_REFLASHING configuration option. It instructs
ldgen to group entity mappings for libraries deemed mutable (prone to
change) separately from those considered immutable (unlikely to change).

Organizing mutable and immutable libraries separately in the linker
script allows the linker to form larger contiguous blocks of data for
immutable libraries in the application's output sections. These blocks
are likely to stay mostly unchanged between application recompilations,
enabling them to be skipped during reflashing.

Separating mutable and immutable libraries in the linker script to
minimize changes in the output sections is insufficient. Padding is
added after the input sections of mutable libraries in the default data
and text output sections. This creates a buffer for the mutable
libraries, allowing additional changes to be made without altering the
layout of the binary image.

Additionally two optimizations currently in use can still mix data from
these libraries, leading to significant changes even within the grouped
immutable libraries.

1. constant merging

    Linker will try to merge input sections that have the MERGE and
    STRING flags from different libraries (object files) to perform
    optimizations like tail merging. For example, adding a string
    literal in a mutable library will also change the addresses of
    string literals from immutable libraries in such a merged section,
    causing changes in the generated code when those literals are
    referenced.

    Disabled with COMPILER_DISABLE_MERGE_CONSTANTS(-fno-merge-constants)

2. literal pools on Xtensa

    As optimization, the linker may merge literal pools from different
    libraries (object files) to improve the generated code size. This
    has the same effect as constant merging, and changes in mutable
    libraries may cause changes in the generated code for immutable
    libraries. To get larger unchanged continuous blocks in the text
    output sections for immutable libraries, we need to ensure that the
    Xtensa literal pools remain close to their references and are not
    merged.

    Disabled with CONFIG_COMPILER_ENABLE_TEXT_SECTION_LITERALS(-mtext-section-literals)

When ESPTOOLPY_FAST_REFLASHING is enabled, these two optimizations are
disabled to achieve larger unchaged continuous blocks for the grouped
immutable libraries, even though disabling these optimizations results
in slightly larger code.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-11-13 15:30:42 +01:00
Frantisek Hrbata
2ade22ff85 feat(esp_system): add mutable markers to sections.ld.in templates
Entity mappings for immutable libraries are placed in the existing
`mapping[target]` marker, while those for mutable libraries are placed
in the new `mutable[target]` marker, which comes after the `mapping`
marker. Additionally, include padding after the input sections of
mutable libraries in the default data and text output sections,
providing a headroom for the mutable libraries to grow.  Padding is
currently not added, for example, in the `.iram0.data` output section,
which is not expected to change frequently. Padding for other mutable
input sections may be added in the future.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2025-11-13 15:30:36 +01:00
Mahavir Jain
4a53c4e651 Merge branch 'bugfix/esp32c5_encrypted_flash_write_v2' into 'master'
fix(esp_system): limit CPU clock to 160MHz in ESP32-C5 for flash encryption

See merge request espressif/esp-idf!43301
2025-11-13 18:01:04 +05:30
Chen Jichang
b3e48fd001 test(parlio): fix sleep test issue 2025-11-13 19:01:49 +08:00
Island
a365e7984a Merge branch 'feat/ble_mesh_lib_log_output_opt' into 'master'
feat(ble_mesh): add ext log initialization functions

Closes BLERP-2336

See merge request espressif/esp-idf!42926
2025-11-13 18:11:35 +08:00
Laukik Hase
9ee468a096 Merge branch 'feat/tee_c61_examples_and_docs' into 'master'
feat(esp_tee): Enable ESP-TEE examples and documentation for ESP32-C61

Closes IDF-14254 and IDF-14255

See merge request espressif/esp-idf!43251
2025-11-13 15:18:42 +05:30
Jiang Jiang Jian
388ec4cd6d Merge branch 'ci/rename_wifi_two_duts' into 'master'
ci: rename wifi_two_dut to two_duts

See merge request espressif/esp-idf!43269
2025-11-13 16:54:51 +08:00
Akshat Agrawal
342c82fe95 bugfix(wifi): Re-calibrate FTM for ESP32-C5 (ECO2) 2025-11-13 14:24:20 +05:30
Ondrej Kosta
f39c0633d3 fix(esp_eth): maked esp_eth_test_l2 more robust 2025-11-13 09:53:49 +01:00
Chen Jichang
4989cc9266 feat(hal): move i2c_periph.h to hal folder 2025-11-13 16:52:47 +08:00
Chen Jichang
3daafd870f feat(hal): graudate the PCNT hal driver into a new component 2025-11-13 16:52:45 +08:00
Chen Jichang
893b1ea2f1 fix(lcd): fix mipi dsi phy type for p4 version below 3.0 2025-11-13 16:35:07 +08:00
Wang Meng Yang
3c447d998d Merge branch 'bugfix/fix_hid_memory_leak' into 'master'
fix(bt/bluedroid): Fixed HID memory leak

Closes BTQABR2023-602

See merge request espressif/esp-idf!43118
2025-11-13 16:30:47 +08:00
Wang Meng Yang
80961aa3f4 Merge branch 'bugfix/bluetooth_chan_map_error' into 'master'
fix(bt/controller): fixed Bluetooth hardware error of 'CHMAP_ERROR'

See merge request espressif/esp-idf!43201
2025-11-13 15:24:54 +08:00
Guilherme Ferreira
7b8ad5deb1 Merge branch 'refact/split-hal-emac' into 'master'
refactor(hal): graduate emac hal into a new component

Closes IDF-14088

See merge request espressif/esp-idf!43058
2025-11-13 15:12:43 +08:00
wuzhenghui
83d91a153d feat(esp_hw_support): support unicore auto clock gating for esp32p4 rev3+ 2025-11-13 14:30:55 +08:00
Jiang Jiang Jian
5004daabca Merge branch 'feat/avoid_disconnect_when_set_bandmode' into 'master'
feat(wifi): avoid disconnect when set band mode and fix some wifi bugs

Closes WIFIBUG-1532

See merge request espressif/esp-idf!43073
2025-11-13 13:46:34 +08:00
Armando (Dou Yiwen)
828aea712e Merge branch 'feat/psram_250m_p4' into 'master'
psram: support 250MHz in experimental

See merge request espressif/esp-idf!32066
2025-11-13 05:05:34 +00:00
Harshal Patil
0debe71b3d Merge branch 'feat/flash_enc_using_key_manager' into 'master'
Support Flash Encryption using Key Manager

Closes IDF-13462 and IDF-14278

See merge request espressif/esp-idf!41879
2025-11-13 07:55:15 +05:30
Chen Chen
61d363fd58 feat(isp): support Crop driver on p4 rev3
Add support for crop driver on p4eco5 and update example in
`isp/multi_pipelines`
2025-11-13 08:47:11 +08:00
Mahavir Jain
3c5d2e6b58 fix(esp_system): limit CPU clock to 160MHz in ESP32-C5 for flash encryption
Encrypted flash write operation sometimes result in random corruption in
certain bytes. Root cause points to sudden current surge due to involvement of
encryption block overwhelming LDO supply. More details will be provided
in the ESP32-C5 SoC Errata document.

This fix limits the CPU clock to 160MHz for flash encryption enabled
case. Failing encrypted flash write tests could successfully pass in
this configuration. Going ahead, a dynamic clock adjustment in flash
driver will be considered to mitigate this issue.
2025-11-12 19:14:55 +05:30
Jiang Jiang Jian
db1efdec09 Merge branch 'feat/set_pull_mode_of_coex_input_pin' into 'master'
feat(esp_coex): set the pull mode of the external coex input pin

See merge request espressif/esp-idf!43066
2025-11-12 21:08:44 +08:00
zhangyanjiao
e255a4e014 fix(coex): fixed the espnow send fail when coex enable 2025-11-12 19:23:34 +08:00
muhaidong
9cbd5c2804 docs(wifi): update wifi fragment doc 2025-11-12 19:15:28 +08:00
glmfe
9fd020d9da refactor(hal): graduate emac hal into a new component
- Separate emac from hal component to a new one: esp_hal_emac.
2025-11-12 06:55:46 -03:00
Jiang Jiang Jian
a2d9d85a99 Merge branch 'bugfix/fix_wifi_init_issue' into 'master'
fix(wifi): fix wifi init fail issue

Closes IDFGH-12651

See merge request espressif/esp-idf!37876
2025-11-12 17:50:07 +08:00
Island
b1c7498580 Merge branch 'feat/support_bluedroid_host_pawr' into 'master'
feat(ble/bluedroid): Add bluedroid host PAwR and Advertising Coding Selection features

Closes BLERP-1974, BLERP-1975, BLERP-1982, BLERP-2061, and BLERP-2377

See merge request espressif/esp-idf!39128
2025-11-12 17:27:26 +08:00
Euripedes Rocha
1da98604f9 Merge branch 'removes_esp_mqtt' into 'master'
change(mqtt): Removes the mqtt client from idf

Closes IDF-14118 and DOC-12722

See merge request espressif/esp-idf!40286
2025-11-12 10:10:22 +01:00
wuzhenghui
19e9890fb3 fix(esp_hw_support): add dependency of the TOP domain to the RTC_PERIPH domain for esp32c6 2025-11-12 17:03:45 +08:00
luoxu
a027b8cccb feat(ble_mesh): update mesh lib to a4262f4214 2025-11-12 16:55:56 +08:00
luoxu
7b7b9de28d feat(ble_mesh): add ext log initialization functions 2025-11-12 16:55:56 +08:00
Armando
972a6195f2 feat(psram): support 250MHz in experimental 2025-11-12 16:14:02 +08:00
Tomas Rezucha
a16739a950 Merge branch 'contrib/github_pr_17831' into 'master'
fix(hal): Fix USB PHY selection logic in usb_wrap_ll.h (GitHub PR)

Closes IDFGH-16746

See merge request espressif/esp-idf!43255
2025-11-12 08:54:30 +01:00
Laukik Hase
b6a51f0ff6 ci(esp_tee): Enable the TEE examples for ESP32-C61 2025-11-12 12:48:26 +05:30
Song Ruo Jing
a2901819b4 Merge branch 'feature/esp32p4_eco5_io_hold' into 'master'
feat(gpio): add IO hold support for Deep-sleep for ESP32-P4 ECO5

Closes IDF-12844 and IDF-13518

See merge request espressif/esp-idf!43147
2025-11-12 15:13:36 +08:00
Mahavir Jain
a037d9613e Merge branch 'bugfix/lwip_stack_in_psram_limitation' into 'master'
fix(lwip): allow task stack from SPIRAM except for ESP32 ECO2 and below

Closes IDFGH-16740

See merge request espressif/esp-idf!43119
2025-11-12 12:41:55 +05:30
yinqingzhao
bb2f7e08f5 feat(wifi): avoid disconnect when set band mode and fix some wifi bugs 2025-11-12 14:32:59 +08:00
Jin Cheng
b607198192 fix(bt/controller): Fixed some controller bugs
- Fixed Bluetooth hardware error of 'CHMAP_ERROR'
- Fixed encryption collision bug
2025-11-12 14:27:16 +08:00
Island
94de317b37 Merge branch 'fix/increase_ble_log_task_stack_size_for_xtensa_chips' into 'master'
fix(ble): increase default ble log stack size for xtensa chips

See merge request espressif/esp-idf!43250
2025-11-12 14:00:53 +08:00
Meet Patel
b11ce34971 Merge branch 'contrib/github_pr_17848' into 'master'
Bump up log_v2's max arg count (GitHub PR)

Closes IDFGH-16764

See merge request espressif/esp-idf!43256
2025-11-12 10:02:34 +05:30
Jeremy Boynes
4dfad2ecc6 fix(esp_lcd): Issue where M5Stack CoreS3 uses GPIO 35 for MISO and LCD D/C
Adopts approach used by M5GFX that enables/diables output during SPI transaction.
2025-11-11 20:23:45 -08:00
laokaiyao
3fa53e16e4 fix(parlio_rx): fixed incorrect dma buffer length calculation 2025-11-12 10:35:22 +08:00
laokaiyao
297093f46b feat(parlio_rx): support to receive data into external ram 2025-11-12 10:35:22 +08:00
laokaiyao
77cae1fc61 feat(parlio_rx): support to force trigger eof 2025-11-12 10:35:22 +08:00
Chen Yudong
d591aaf1ae ci: rename wifi_two_dut to two_duts 2025-11-12 10:05:07 +08:00
Omar Chebib
8e12c7f3ab Merge branch 'fix/task_tracing_crashing' into 'master'
fix(heap): fix a bug where the biggest heap would be NULL on boot

Closes IDFGH-16182 and IDFGH-16183

See merge request espressif/esp-idf!41024
2025-11-12 09:33:32 +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