wuzhenghui
66482b8109
fix(esp_hw_support): only bypass pll_160 clock management if PVT is enabled
2026-09-16 19:37:33 +08:00
Michael.B
923bce4161
refactor(pmu): move S31 dbias vol gap getter from efuse_ll to pmu_ll
...
Keep PMU calibration efuse reads in the PMU LL layer, matching other chips.
2026-09-16 18:31:28 +08:00
yanzihan@espressif.com
38fea2d793
feat(esp_hw_support): use pvt auto dbias to support for esp32s31
2026-09-16 18:31:27 +08:00
muhaidong
69b860b6b8
fix(wifi): fix regdma restore ba bitmap fail issue
2026-09-15 20:37:33 +08:00
wuzhenghui and Cursor
a14ab4d942
fix(esp_hw_support): disable BBPLL after sleep if clk_tree ref is zero
...
PLL_SOURCE retention may leave BBPLL on; sync HW in pmu_sleep_finish and keep is_power_on in IRAM.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 20:37:33 +08:00
wuzhenghui
81a97f38b0
fix(esp_hw_support): wait pll ready before modem clock retention for s31
2026-09-15 20:37:33 +08:00
Ivan Grokhotkov
f1abda1535
Merge branch 'feature/cache_access_counters' into 'master'
...
feat(esp_hw_support): add cache access counter API
See merge request espressif/esp-idf!50600
2026-09-14 17:21:49 +02:00
Mahavir Jain
0d1b945b16
Merge branch 'fix/fix_clk_tree_abba_deadlock' into 'master'
...
fix(esp32s31): break clk_tree and deadlock with PERIPH_RCC
Closes PM-871
See merge request espressif/esp-idf!52621
2026-09-13 16:40:51 +05:30
Ivan Grokhotkov
b171649d67
Merge branch 'fix/usb_bbpll_light_sleep' into 'master'
...
fix(usb_phy): Fixed USB PHY clock during low-power modes
Closes IDFGH-14711
See merge request espressif/esp-idf!51822
2026-09-11 13:04:30 +02:00
morris
9e2cd97330
refactor(cache): move cache profile counter support to hal
...
Move the cache profile counter type definitions to hal/cache_types.h so
that
esp_cache_cnt.h can use them without depending on the public soc header
soc/cache_periph.h (which CI rejects as non-public).
The remaining cache_periph.h header and its per-target cache_periph.c
sources
are moved from the soc component into the hal component, with the
sources
organized per target directory as usual for the hal component.
Removes the soc/cache_periph.h dependency from esp_cache_cnt.h and
hal/cache_ll.h by using hal/cache_periph.h instead.
2026-09-11 11:30:29 +02:00
Ivan Grokhotkov (bot)
16078650c8
feat(esp_hw_support): add cache access counter API
2026-09-11 11:30:28 +02:00
Jiang Jiang Jian
5755871cb4
Merge branch 'bugfix/idfci-13866' into 'master'
...
config wakeup gpio pin internal pullup to avoid input floating
Closes IDFCI-13866
See merge request espressif/esp-idf!52588
2026-09-11 10:47:04 +08:00
Jiang Jiang Jian
342dd1f9c4
Merge branch 'feat/esp_idf_h4_clk_tree_management' into 'master'
...
Feat/esp idf h4 h21 clk tree management
Closes PM-858 and PM-653
See merge request espressif/esp-idf!50653
2026-09-11 10:38:04 +08:00
Armando (Dou Yiwen)
496c0b6377
Merge branch 'refactor/flash_refactor' into 'master'
...
spi_flash: split driver and os driver into `spi_flash` and `esp_mspi` components
Closes IDF-15210
See merge request espressif/esp-idf!45409
2026-09-10 07:29:01 +00:00
morris
a0772ce93a
refactor(pmu): move PMU calibration efuse getters from efuse_ll.h to pmu_ll.h
...
Move the PMU internal voltage calibration related efuse read LL
functions
from efuse_ll.h into pmu_ll.h, renaming them with the pmu_ll prefix.
efuse_ll.h should only contain efuse controller or system-global
functions;
other modules' private efuse bits belong to their own LL layer.
Affected chips: esp32c5, esp32c6, esp32c61, esp32h2, esp32h4, esp32p4.
Moved functions (renamed efuse_ll_get_* -> pmu_ll_get_*):
- get_active_hp_dbias, get_active_lp_dbias
- get_dbias_vol_gap
- get_lslp_dbg, get_dslp_dbg (where present)
- get_lslp_hp_dbias, get_dslp_lp_dbias (where present)
- get_dslp_dbias (esp32h2)
2026-09-10 09:53:06 +08:00
morris
da3e20988f
Merge branch 'ci/reenable_h4_eco2_target_test' into 'master'
...
feat(esp32h4): remove the support of esp32h4 rev0
Closes IDF-16110
See merge request espressif/esp-idf!52538
2026-09-09 16:03:35 +08:00
wuzhenghui and Cursor
b72f7a91ce
fix(esp32s31): break clk_tree and RCC ABBA deadlock
...
Keep gated-clk refcnt under s_clk_tree_spinlock only, and call
esp_crypto_common_clk_enable outside PERIPH_RCC so crypto (RCC→clk_tree)
and modem (clk_tree→RCC) cannot deadlock on periph_spinlock
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-09 14:34:07 +08:00
Armando (Dou Yiwen)
5e181236b7
refactor(mspi): move esp_mspi_align and mspi_mem_barrier to esp_mspi
2026-09-09 14:17:00 +08:00
armando
6e3abd12a1
refactor(spi_flash): move os layer to esp_mspi and chip configs to spi_flash
...
Also fixes the implicit dependency on esp_partition.
2026-09-09 14:17:00 +08:00
Jiang Jiang Jian
716e9e5121
Merge branch 'fix/fix_cryto_module_locked_after_pd_top_lslp' into 'master'
...
fix(esp_hw_support): fix cryto module locked after pd_top lightsleep
Closes WIFIBUG-2126 and PM-861
See merge request espressif/esp-idf!52460
2026-09-09 13:59:46 +08:00
Li Shuai
b8bac92866
fix(unit-test): config wakeup gpio pin internal pullup to avoid input floating
2026-09-09 11:30:44 +08:00
Tomas Rezucha
994d2b4203
fix(usb_phy): Fixed USB PHY clock during low-power modes
...
On ESP32-S3, USB PHY is clocked from BBPLL,
however if the BBPLL is not used as CPU clock source,
the power management unit can turn it off.
This commit registers USB as BBPLL consumer so it is not turned off.
Closes https://github.com/espressif/esp-idf/issues/15451
2026-09-08 14:47:25 +02:00
Alexey Gerenkov
88462c1ac9
Merge branch 'riscv_panic_bp_fix' into 'master'
...
fix(esp_system/panic): ensure breakpoint set from panic handler gets hit afterwards
See merge request espressif/esp-idf!51694
2026-09-08 18:23:32 +08:00
C.S.M
8e5b83e7cc
fix(brownout): Fixed threshold value for esp32h4 and esp32h21
2026-09-08 14:21:36 +08:00
Chen Jichang
c950e7bae0
feat(esp32h4): remove the support of esp32h4 rev0
2026-09-08 10:30:20 +08:00
wuzhenghui
061881f90c
fix(esp_hw_support): wait DS/ECDSA idle before restore its PCR on wakeup
2026-09-07 15:08:56 +08:00
wuzhenghui
781ecb1a72
fix(esp_hw_support): ungate security clock in retention since ds/ecdsa auto working after PU
2026-09-07 15:08:56 +08:00
wuzhenghui and Cursor
a0803ddd01
fix(esp_hw_support): restore brownout after deep sleep rejection on ESP32-S2
...
ESP32-S2 disables the brownout detector before deep sleep; if sleep is
rejected, re-init it so BOD is not left disabled (PM-519).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-04 20:18:44 +08:00
Jiang Jiang Jian
4b2669edde
Merge branch 'feat/pm_components_ram_optimize' into 'master'
...
feat(pm): pm components ram optimize
Closes PM-840
See merge request espressif/esp-idf!51672
2026-09-04 10:32:26 +08:00
Samuel Obuch
2faeddce31
fix(esp_system/panic): ensure breakpoint set from panic handler gets hit afterwards
2026-09-03 12:36:02 +02:00
Jiang Jiang Jian
73114d5a84
Merge branch 'bugfix/fix_wifi_wakeup_failed_from_modem_state' into 'master'
...
fix(wifi): fix wifi wakeup failed from modem state
Closes PM-860
See merge request espressif/esp-idf!52143
2026-09-02 17:28:01 +08:00
Mahavir Jain
a3192567d5
Merge branch 'feat/cpu_region_protection_h4' into 'master'
...
Memory region protection for ESP32-H4
Closes IDF-12588
See merge request espressif/esp-idf!47070
2026-08-31 17:41:52 +05:30
Mahavir Jain
d3fe62cee4
Merge branch 'feat/tee_sec_stg_non_det_sign' into 'master'
...
change(esp_tee): Force non-deterministic ECDSA signing for TEE secure storage keys
Closes IDF-15937 and IDF-15939
See merge request espressif/esp-idf!50355
2026-08-31 16:07:52 +05:30
wuzhenghui
a9dee592d6
feat(esp_hw_support): use dynamic memory allocation for retention module instances
2026-08-31 16:08:43 +08:00
wuzhenghui
3c2a0cb4f6
change(esp_hw_support): optimize pmu_sleep RAM cost
2026-08-31 15:26:22 +08:00
wuzhenghui
14e25a8abc
change(esp_hw_support): optimize sleep_phy retention static RAM cost
2026-08-31 15:26:22 +08:00
wuzhenghui
11c590c053
change(esp_hw_support): optimize retention driver RAM cost
2026-08-31 15:26:18 +08:00
Chen Jichang
3e32f8bb54
feat(esp32h4): update rom.ld files for esp32h4 eco2
2026-08-28 15:31:08 +08:00
Laukik Hase
4812dbd2d8
feat(esp_tee): Use CTR-DRBG for assisting random number generation in TEE
...
- For ESP-TEE, fault-assert in `esp_random()` if the RNG is held in a
freeze state
2026-08-28 10:20:54 +05:30
hebinglin
2b4c200dab
change(esp_hw_support): use PM_MODEM_STATE_ENABLED to enable related feature
2026-08-27 23:16:03 +08:00
hebinglin
3f9dfb4649
change(esp_hw_support): fill H4 M2A clk power tie-high from active clk power
2026-08-27 23:16:03 +08:00
hebinglin
c8d733e402
change(esp_hw_support): keep PLL across DFS/sleep on esp32h4/h21
2026-08-27 23:16:03 +08:00
hebinglin
2ba98dfa42
change(esp_hw_support): use clk_tree manage active clk power
2026-08-27 23:16:03 +08:00
sibeibei
378590ccff
fix(wifi): fix wifi wakeup failed from modem state
2026-08-27 16:54:18 +08:00
hebinglin
df77b4bd38
feat(esp_hw_support): support esp32h4/h21 clk tree management
2026-08-27 14:40:42 +08:00
Roland Dobai
099dc69d3f
Merge branch 'fix/esp_mspi_align_psram_buildv2' into 'master'
...
fix(esp_hw_support): Exclude MSPI alignment helper from bootloader
See merge request espressif/esp-idf!51919
2026-08-26 13:56:49 +02:00
harshal.patil
53c9439161
change(esp_hw_support): rework ESP32-H4 region protection to the application-owned layout
...
The bootloader programs only unlocked PMA entries (no PMP), so the layout is
not a bootloader<->application ABI; the application resets all entries, programs
them in ascending order from IRAM, and locks everything. Verified on ESP32-H4 v0.1.
2026-08-25 10:40:28 +05:30
harshal.patil
a7f4dbf35a
fix(soc): make SOC_RAM_ICACHE1_HIGH an exclusive bound on ESP32-H4
...
Every other SOC_*_HIGH macro in soc.h is an exclusive region end;
SOC_RAM_ICACHE1_HIGH was the inclusive last byte (0x40867fff). This
also made the reclaimed ICache1 heap region in single core mode
(components/heap/port/esp32h4/memory_layout.c, sized as HIGH - LOW)
one byte short. Change the value to the exclusive end 0x40868000 and
drop the +1 compensation at the SOC_HP_RAM_HIGH definition.
2026-08-25 10:40:28 +05:30
harshal.patil
07debe6edc
feat(esp_hw_support): Memory region protection for ESP32-H4
2026-08-25 10:40:28 +05:30
Armando (Dou Yiwen)
b532be2707
Merge branch 'fix/fix_mpll_cali_flow_s31' into 'master'
...
mpll: improved mpll calibration flow on s31
See merge request espressif/esp-idf!51928
2026-08-25 02:48:14 +00:00