Commit Graph

616 Commits

Author SHA1 Message Date
Jiang Jiang Jian
e5191e1612 Merge branch 'bugfix/idf_13957_v6.0' into 'release/v6.0'
bugfix: fix wifi loss packet and missing interrupt issues when switching root clock source

See merge request espressif/esp-idf!48432
2026-05-15 12:32:25 +08:00
sibeibei
86a9823e5e fix(wifi): fix modem sleep flag clear failed 2026-05-12 19:22:54 +08:00
sibeibei
1d16c0fbad bugfix: fix wifi loss packet and missing interrupt issues when switching root clock source 2026-05-12 15:37:53 +08:00
Konstantin Kondrashov
e0a6cc9a23 feat(efuse): Adds efuse calibration field for esp32c5 2026-05-07 15:59:58 +03:00
Mahavir Jain
64c744abb7 docs: update PSRAM and flash encryption docs with per-page and separate key capabilities 2026-04-02 12:20:24 +05:30
Jiang Jiang Jian
424a9a8c0d Merge branch 'bugfix/add_pvt_enable_flag_in_pvt_func_v6.0' into 'release/v6.0'
feat(pvt): add pvt enable flag & change pvt limit & sleep adapt time on release v6.0

See merge request espressif/esp-idf!46808
2026-03-24 10:30:43 +08:00
Jack
12f56a1333 Revert "disable PVT feature for esp32c5"
This reverts commit bfb052dbac.
2026-03-23 20:28:50 +08:00
morris
ed6a7e267e Merge branch 'fix/32mb_120m_v6.0' into 'release/v6.0'
fix(spi_flash): 1. Fix flash 120m in qio mode failed on esp32p4 (with 32M map enabled) 2. Add C61 32M flash support (backport v6.0)

See merge request espressif/esp-idf!46042
2026-03-23 16:14:19 +08:00
Song Ruo Jing
163a95614c feat(dma2d,ppa): Support flash encryption for DMA2D and PPA 2026-03-20 16:53:29 +08:00
C.S.M
52d5b1a173 fix(spi_flash): Fix esp32p4 120m flash suspend failed 2026-03-20 15:21:22 +08:00
morris
23e199d646 Merge branch 'feature/esp32c61_flash_psram_timing_tuning_v6.0' into 'release/v6.0'
feat(mspi): support 120MHz flash and psram for esp32c61 (v6.0)

See merge request espressif/esp-idf!45886
2026-03-20 13:55:06 +08:00
Jiang Jiang Jian
208229bbf8 Merge branch 'fix/restore_ble_mesh_c5_c61_v6.0' into 'release/v6.0'
Fix/restore ble mesh c5 c61 (v6.0)

See merge request espressif/esp-idf!45539
2026-03-20 10:22:32 +08:00
Marius Vikhammer
613f8eaaed Merge branch 'feat/esp_hal_sdmmc_v6.0' into 'release/v6.0'
sd: esp_hal_sd component (v6.0)

See merge request espressif/esp-idf!45623
2026-03-20 10:04:21 +08:00
morris
751231cb64 Merge branch 'bugfix/lp_io_clock_control_v6.0' into 'release/v6.0'
fix(rtcio): RTC GPIO configuration should be written if LP IO clock exists (v6.0)

See merge request espressif/esp-idf!46595
2026-03-19 23:17:09 +08:00
Song Ruo Jing
c7ae253b89 feat(mspi): support 120MHz flash and psram for esp32c61 2026-03-19 14:30:46 +00:00
Song Ruo Jing
68ed9e912b fix(rtcio): RTC GPIO configuration should be written if LP IO clock exists 2026-03-13 11:22:37 +08:00
Luo Xu
4fbf222330 feat(ble_mesh): restore ble mesh for esp32c5/c61
(cherry picked from commit b2143d271e)

Co-authored-by: luoxu <luoxu@espressif.com>
2026-03-02 00:04:50 +08:00
wanckl
5bcea31dd7 feat(driver_twai): new driver sleep retention support 2026-02-28 20:11:32 +08:00
Jack
1c9817fc5a disable PVT feature for esp32c5 2026-02-06 11:48:22 +08:00
armando
e8f1938361 change(gpio): move gpio_num.h to gpio hal 2026-02-04 19:00:57 +08:00
armando
fe5b8358f3 feat(hal):graudate the sdmmc/sdio_slave hal driver into a new component 2026-02-04 19:00:57 +08:00
Jiang Jiang Jian
25fad8e13f Merge branch 'feat/split_154_hal_components_v6.0' into 'release/v6.0'
feat(ieee802154): separated the 802.15.4 HAL codes from the HAL component (v6.0)

See merge request espressif/esp-idf!44966
2026-02-02 19:07:06 +08:00
Jiang Jiang Jian
31056d5db9 Merge branch 'refactor/spi_flash_private_v6.0' into 'release/v6.0'
refactor(spi_flash): reorganize header files, improve encapsulation and simplify ROM implementation (v6.0)

See merge request espressif/esp-idf!45488
2026-02-02 10:57:34 +08:00
Jiang Jiang Jian
d0f992c02f Merge branch 'fix/make_deepsleep_gpio_wakeup_usable_for_pd_top_lightsleep_v6.0' into 'release/v6.0'
change(esp_hw_support): deepsleep gpio wakeup API renaming to support PD_TOP lightsleep wakeup (v6.0)

See merge request espressif/esp-idf!45416
2026-02-02 10:48:40 +08:00
Jiang Jiang Jian
c101c91019 Merge branch 'feature/support_pvt_auto_dbias_c5_c61_p4_c6' into 'release/v6.0'
feat(pvt): support pvt auto dbiast on c5/c61/c6/p4 (from eco5)_v6.0

See merge request espressif/esp-idf!45385
2026-02-01 20:08:23 +08:00
yanzihan@espressif.com
d0b1371e34 feat(esp_hw_support): use pvt to auto control digital ldo and rtc ldo for esp32c5 2026-02-01 13:24:49 +08:00
wuzhenghui
85601ccb69 change(soc): rename peripheral powerdowned sleep wakeable IO soc_caps
rename SOC_GPIO_DEEP_SLEEP_WAKE_VALID_GPIO_MASK to SOC_GPIO_HP_PERIPH_PD_SLEEP_WAKEABLE_MASK
rename SOC_GPIO_DEEP_SLEEP_WAKE_SUPPORTED_PIN_CNT to SOC_GPIO_HP_PERIPH_PD_SLEEP_WAKEABLE_PIN_CNT
rename SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP to SOC_GPIO_SUPPORT_HP_PERIPH_PD_SLEEP_WAKEUP
2026-02-01 12:16:20 +08:00
hebinglin
3ca42ca8e1 revert(esp_hw_support): force top domain power up during sleep
This reverts commit 7912f9fafe.
2026-02-01 11:59:16 +08:00
Song Ruo Jing
89da3742b8 refactor(clk): split clock HAL into separate component 2026-01-31 22:32:37 +08:00
wuzhenghui
2d8c6ed6b4 change(esp_hal_rtc_timer): unify lp_timer/rtc_timer naming to RTC_TIMER 2026-01-31 22:31:34 +08:00
morris
aa4034b197 Merge branch 'feature/graduate_tsens_hal_component_v6.0' into 'release/v6.0'
feat(tsens): graduate temperature sensor hal component (v6.0)

See merge request espressif/esp-idf!44357
2026-01-30 18:43:06 +08:00
zwx
eed0b0e5ae feat(ieee802154): separated the 802.15.4 HAL codes from the HAL component 2026-01-30 06:15:26 +00:00
Jiang Jiang Jian
a06af6abd7 Merge branch 'bugfix/fixed_blufi_doc_issue_v6.0' into 'release/v6.0'
fix(doc): set SOC_BLUFI_SUPPORTED in soc_caps.h for ESP32-C5 (v6.0)

See merge request espressif/esp-idf!45415
2026-01-30 10:52:50 +08:00
laokaiyao
2cb958a9e3 feat(tsens): graduate temperature sensor hal component 2026-01-29 10:05:47 +08:00
Xiao Xufeng
170061e971 refactor(spi_flash): move internal types to private headers and refactor initialization
This commit refactors the SPI flash component to improve encapsulation and
modularity by moving internal types and functions to private headers, and
reorganizing initialization code.

Key changes:

1. Move PSRAM frequency constraint macro from soc_caps.h to mspi_ll.h
   - Rename SOC_SPI_MEM_PSRAM_FREQ_AXI_CONSTRAINED to
     MSPI_TIMING_LL_PSRAM_FREQ_AXI_CONSTRAINED
   - Move macro definition to chip-specific mspi_ll.h files (C5, C61, H4, P4, S31)
   - Update usage in clk_utils.c and esp_flash_spi_init.c
   - Remove old macro from all soc_caps.h files

2. Move internal types to private headers
   - Move esp_flash_t structure to esp_private/esp_flash_types.h
   - Move esp_flash_os_functions_t to esp_private/spi_flash_os.h
   - Update all internal files to include private headers
   - Keep forward declarations in public esp_flash.h

3. Move chip driver header to internal directory
   - Move spi_flash_chip_driver.h to esp_flash_port/spi_flash_chip_driver.h
   - Update all references to use new path
   - Add esp_private/esp_flash_types.h include to the moved header

4. Refactor initialization functions
   - Move init_flash from esp_system/startup_funcs.c to
     spi_flash/esp_flash_spi_init.c
   - Create new init_pm_flash_freq_limit function in startup_funcs.c
     to call esp_pm_flash_freq_limit_init() conditionally
   - Update system_init_fn.txt with new function locations

5. Improve API encapsulation
   - Replace direct access to esp_flash_t->size in
     esp_partition_register_external() with esp_flash_get_size() API
   - Move esp_flash_is_quad_mode from inline function to regular function
     in esp_flash_api.c

6. Update component dependencies
   - Add esp_driver_gpio to spi_flash component PRIV_REQUIRES
   - Remove unused includes and clean up header dependencies

These changes improve code organization by clearly separating public APIs
from internal implementation details, making the codebase more maintainable
and reducing the risk of breaking changes to internal structures.
2026-01-29 03:28:30 +08:00
Shen Wei Long
3b3c12c210 fix(doc): set SOC_BLUFI_SUPPORTED in soc_caps.h for ESP32-C5
(cherry picked from commit 60ece6a7f2)

Co-authored-by: ShenWeilong <shenweilong@espressif.com>
2026-01-26 09:23:25 +00:00
Chen Chen
b7e82de9d8 refactor(i2c): cleanup I2C definitions in soc_caps.h 2026-01-13 17:29:23 +08:00
zhiweijian
2a753a8e30 feat(ble/bluedroid): Add new bluedroid host examples 2026-01-08 12:15:36 +08:00
Song Ruo Jing
6eec16cf66 refactor(uart): clean up uart soc_caps 2026-01-04 16:02:57 +08:00
Song Ruo Jing
a0c91ea082 refactor(uart): remove soc/uart_channel.h 2026-01-04 16:02:57 +08:00
Song Ruo Jing
ce475d901d refactor(uart): split UART HAL into separate component 2026-01-04 16:02:57 +08:00
Song Ruo Jing
6ca90bd14a refactor(ledc): split ledc hal into a separate component 2025-12-25 17:23:27 +08:00
Jiang Jiang Jian
9b74192f14 Merge branch 'fix/update_breakpoint_nums_on_c5_h4_v6.0' into 'release/v6.0'
fix(soc): update breakpoint nums on c5 and h4 (v6.0)

See merge request espressif/esp-idf!44355
2025-12-21 15:30:36 +08:00
Jiang Jiang Jian
f409428bf3 Merge branch 'bugfix/esp32c5_encrypted_flash_write_v6.0' into 'release/v6.0'
fix(spi_flash): Add CPU frequency switching during flash encrypted write (v6.0)

See merge request espressif/esp-idf!44304
2025-12-21 15:28:33 +08:00
Chen Jichang
23f1428356 fix(soc): update breakpoint nums on c5 and h4 2025-12-18 11:21:48 +08:00
Chen Jichang
10c473fbbd feat(hal): graudate the RMT hal driver into a new component 2025-12-17 22:31:25 +08:00
morris
311bec8f82 Merge branch 'fix/spi_edma_and_hal_component_6.0' into 'release/v6.0'
feat(driver_spi): split esp_hal_gpspi and support master driver edma (v6.0)

See merge request espressif/esp-idf!44222
2025-12-17 14:54:05 +08:00
Xiao Xufeng
ae7124abe3 feat(spi_flash): implement dynamic CPU frequency switching workaround for encrypted writes
This commit implements a workaround that allows ESP32-C5 to run at 240MHz CPU frequency
normally, while automatically reducing CPU frequency during encrypted flash writes to
ensure correct operation. The frequency limit is chip revision dependent:
- v1.2 and above: limited to 160MHz during encrypted writes
- v1.0 and below: limited to 80MHz during encrypted writes

Key implementation details:
- Frequency limiting is triggered automatically when esp_flash_write_encrypted() is called
- Uses start() flags (ESP_FLASH_START_FLAG_LIMIT_CPU_FREQ) to integrate with OS layer
- Works with both PM enabled and disabled configurations
- Frequency is automatically restored after encrypted write completes
- For ESP32-C5 with 120MHz flash, Flash clock and timing registers are adjusted when
  CPU frequency is reduced to 80MHz
- SPI1 timing registers are configured during frequency switching since encrypted writes
  use SPI1 and must work correctly at reduced CPU frequencies

Code improvements:
- Use SOC_MSPI_FREQ_AXI_CONSTRAINED capability macro instead of hardcoded chip checks
- Control workaround via Kconfig (CONFIG_PM_WORKAROUND_FREQ_LIMIT_ENABLED) instead of
  hardcoded macros
- Add comprehensive test cases covering various PM configurations and edge cases

This workaround enables ESP32-C5 applications to benefit from 240MHz CPU performance
while maintaining reliable encrypted flash write functionality.
2025-12-17 01:21:45 +08:00
wanckl
d12f941787 feat(driver_spi): split spi hal component 2025-12-16 20:38:09 +08:00
Chen Chen
1b015d22eb refactor(esp_system): clear dependency on hal components 2025-12-16 09:11:59 +08:00