Commit Graph

573 Commits

Author SHA1 Message Date
Weltenprinz
d34bdc8394 fix(esp_hw_support): Fix compile error on esp_cpu_int_has_handler on ESP32-P4
Merges https://github.com/espressif/esp-idf/pull/15942
Closes https://github.com/espressif/esp-idf/issues/15941
2025-05-13 18:20:42 +03:00
Li Shuai
7014cfc831 fix(esp_hw_support): fix modem wakeup req always high caused by pmu min slp cycle update 2025-05-07 14:25:05 +08:00
wuzhenghui
8cfe912053 fix(esp_hw_support): fix wrong APB clock freq on retenion 2025-04-25 17:13:26 +08:00
wuzhenghui
41e6e25e2d feat(esp_hw_support): remeasure sleep_time_overhead_out if min_freq_mhz changed 2025-04-25 17:13:26 +08:00
wuzhenghui
81860c55d6 feat(esp_hw_support): use non-lock regi2c fast-up cpll/mpll enable process after sleep wakeup 2025-04-25 17:13:22 +08:00
Jiang Jiang Jian
19e864060a Merge branch 'fix/rmii_ref_ckl_v5.4' into 'release/v5.4'
fix(esp_eth): fixed ESP32P4 EMAC REF RMII CLK output mode (v5.4)

See merge request espressif/esp-idf!38039
2025-04-07 13:58:48 +08:00
Marius Vikhammer
6f13ac088f Merge branch 'fix/memory-utils-ptr-executable_v5.4' into 'release/v5.4'
fix(memory-utils): Missing case in esp_ptr_executable logic (backport v5.4)

See merge request espressif/esp-idf!37101
2025-04-03 14:58:36 +08:00
Guillaume Souchere
2bdfba3c30 fix(memory-utils): Missing case in esp_ptr_executable logic
esp_ptr_executable does not consider that the PSRAM and FLASH
memory mapping are not always matching.

Added a "pointer is in PSRAM" specific check in the logic to
fix the issue.
2025-04-02 08:44:22 +02:00
Guillaume Souchere
e82a248593 fix(esp_hw_support): Unused variables in memory_utils functions 2025-04-02 08:43:37 +02:00
Marius Vikhammer
58c5aa2591 Merge branch 'fix/memory-utils-esp_ptr_in_rtc_dram_fast_v5.4' into 'release/v5.4'
fix(esp_hw_support): esp_ptr_in_rtc_iram_fast check to return false (backport v5.4)

See merge request espressif/esp-idf!36933
2025-04-02 14:33:43 +08:00
Ondrej Kosta
e544d57179 fix(esp_eth): fixed ESP32P4 EMAC REF RMII CLK output mode
fixed units returned and used by periph_rtc_mpll_freq_set function
2025-04-01 08:32:09 +02:00
Jiang Jiang Jian
1113c7183d Merge branch 'doc/add_wakeup_source_usage_precautions_v5.4' into 'release/v5.4'
change(doc): added more usage notes & warings about PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP (v5.4)

See merge request espressif/esp-idf!37391
2025-03-31 17:33:32 +08:00
Armando
419e8b2e20 fix(mspi): fixed cpu and mspi freq mismatch issue when in dfs/sleep on p4 2025-03-08 14:06:09 +08:00
Guillaume Souchere
6545e21f4b fix(esp_hw_support): esp_ptr_in_rtc_iram_fast check to return false
esp_ptr_in_rtc_iram_fast logic should be executed if
SOC_RTC_FAST_MEM_SUPPORTED is set but it should also be executed
if IRAM and DRAM region mapping is the same. Remove the
SOC_RTC_IRAM_LOW != SOC_RTC_DRAM_LOW part of the check.

Update heap component to use the modify function appropriately.
2025-03-07 12:21:22 +01:00
wuzhenghui
e549dca8ae change(doc): added more usage notes & warings about PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP 2025-02-28 16:43:02 +08:00
wuzhenghui
8e6ec50bcc fix(esp_hw_support): fix esp32s2/esp32s3 RTC IOMUX clock management 2025-02-21 09:50:42 +08:00
Jiang Jiang Jian
f9ae8dfb04 Merge branch 'fix/esp32p4_lightsleep_fixes_v5.4' into 'release/v5.4'
fix(esp_hw_support): some fixes of esp32p4 lightsleep retention & power switch process (v5.4)

See merge request espressif/esp-idf!37086
2025-02-20 13:48:50 +08:00
Jiang Jiang Jian
23db06892b Merge branch 'feat/wait_pll_stable_after_sleep_wakeup_fix_xtal_v5.4' into 'release/v5.4'
feat(esp_hw_support): wait pll stable after sleep wakeup (v5.4)

See merge request espressif/esp-idf!36018
2025-02-20 10:36:20 +08:00
wuzhenghui
4542c463c6 change(esp_hw_support): not use ROM Cache invalidate in sleep process to avoid dirtying the L1 Cache 2025-02-19 14:32:12 +08:00
Jiang Jiang Jian
da3f2ea5ce Merge branch 'fix/add_sleep_duration_check_for_timer_wakeup_v5.4' into 'release/v5.4'
fix(esp_hw_support): add timer wakeup sleep duration check (v5.4)

See merge request espressif/esp-idf!37010
2025-02-19 13:48:17 +08:00
wuzhenghui
95fb085fe3 fix(esp_hw_support): add timer wakeup sleep duration check
Closes https://github.com/espressif/esp-idf/issues/15255
2025-02-18 19:21:57 +08:00
wuzhenghui
1e11f287e1 change(esp_hw_support): disable CPU wait-for-event mode on cpu start 2025-02-18 19:21:09 +08:00
wuzhenghui
67a4de4e77 change(esp_hw_support): switch to sleep_flags earlier to identify sleep state 2025-02-17 16:53:28 +08:00
wuzhenghui
9b7ce542f2 fix(esp_hw_support): fix p4 OTG phy bad suspend cause high power consumption on sleep 2025-01-14 14:22:39 +08:00
Jiang Jiang Jian
dd00aa1776 Merge branch 'fix/heap-allocate-in-rtc-iram_v5.4' into 'release/v5.4'
fix(heap): MALLOC_CAP_EXEC does not allocate in RTC IRAM (backport v5.4)

See merge request espressif/esp-idf!35623
2025-01-09 11:36:16 +08:00
Guillaume Souchere
388ed349e5 fix(heap): MALLOC_CAP_EXEC does not allocate in RTC IRAM
This commit fixes the issue when trying to allocate memory
with the MALLOC_CAP_EXEC in RTC memory. Prior to the fix,
the heap allocator was returning an address in RTC DRAM.

To fix this issue:
- modified memory_layout.c of the concerned targets to fill the iram_address
field in the rtc entry of the soc_memory_region array properly.
- modified heap component  related functions to return IRAM address when
an allocation in RTC memory with MALLOC_CAP_EXEC is requested.

Closes https://github.com/espressif/esp-idf/issues/14835
2024-12-30 08:51:14 +01:00
morris
bd45800cd5 refactor(cp_dma): to use gdma_link driver for descriptor config 2024-12-05 11:41:55 +08:00
Jiang Jiang Jian
569f6c0213 Merge branch 'fix/fix_modem_module_clock_missing_after_ota_v5.4' into 'release/v5.4'
fix(esp_system): deselect all modem modules lp clock source selection before clk initialization (v5.4)

See merge request espressif/esp-idf!34923
2024-11-22 13:41:23 +08:00
Li Shuai
78b272c092 feat(esp_hw_support): extend sleep retention module bitmap bit width 2024-11-18 15:57:42 +08:00
wuzhenghui
a2d26ab56f fix(esp_system): deselect all modem modules clk source selection before clk init 2024-11-15 11:00:54 +08:00
Xiao Xufeng
802e7b2192 feat(sleep_retention): allow drivers taking TOP power lock
Also add a dump function
2024-11-05 03:22:01 +08:00
wuzhenghui
71ddc5a79f fix(esp_hw_support): fix mmu retention code cache safety 2024-10-22 22:10:13 +08:00
Song Ruo Jing
ed91ad56da Merge branch 'refactor/pll_pd_in_sleep_logic' into 'master'
fix(clk): rtc_clk_cpu_freq_set_xtal will always disable CPU's PLL

See merge request espressif/esp-idf!34241
2024-10-18 14:12:15 +08:00
Armando (Dou Yiwen)
e05fce3c9c Merge branch 'feat/lp_i2s_vad' into 'master'
lp_i2s: vad lp driver and lp/hp core wakeup feature

Closes IDF-10211 and IDF-6517

See merge request espressif/esp-idf!33804
2024-10-17 15:01:08 +08:00
Song Ruo Jing
7c0b1dc98c fix(clk): rtc_clk_cpu_freq_set_xtal will always disable CPU's PLL
Align C6/H2/C5/C61 rtc_clk_cpu_freq_set_xtal behavior to other chips
For PMU supported chips, powering down CPU PLL in sleep will be done by PMU, not sleep code
2024-10-17 12:41:15 +08:00
C.S.M
642188c846 Merge branch 'feature/temperature_sensor_retention_support' into 'master'
feat(temperature_sensor): Add sleep retention support for temperature sensor

Closes IDF-9760

See merge request espressif/esp-idf!33901
2024-10-17 12:18:33 +08:00
Marius Vikhammer
bb8fa9300f Merge branch 'change/rename_va_narg' into 'master'
fix(system): rename __VA_NARG__ macro

Closes IDF-11367

See merge request espressif/esp-idf!34068
2024-10-17 08:57:44 +08:00
C.S.M
4cbc790628 feat(temperature_sensor): Add sleep retention support for temperature sensor 2024-10-16 17:35:35 +08:00
Armando
6db48cff25 feat(sleep): support vad wakeup hp core 2024-10-16 17:27:27 +08:00
Marius Vikhammer
64e0fc7a5a fix(system): rename __VA_NARG__ macro
__VA_NARG__ is copied from a forum post and is a pretty common implementation
with a high chance of causing naming collision

Added ESP_ namespace to avoid this.
2024-10-15 09:41:00 +08:00
morris
d38e30eddf Merge branch 'feat/etm_sleep_retention' into 'master'
feat(etm): support sleep retention

Closes IDF-8462

See merge request espressif/esp-idf!33787
2024-10-11 21:28:01 +08:00
morris
0722aa8209 feat(etm): support sleep retention 2024-10-10 12:12:58 +08:00
morris
aebf700919 refactor(freertos): rename SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY and move to freertos 2024-10-09 13:32:03 +08:00
Jiang Jiang Jian
12cbdfef31 Merge branch 'feature/set_lp_cpu_power_mode_with_clock_src' into 'master'
change(esp_hw_support): switch lp_cpu power mode with clock src selection to save lp_cpu working power

Closes AEG-1430

See merge request espressif/esp-idf!30556
2024-09-29 18:32:32 +08:00
wuzhenghui
6520c61cff change(esp_hw_support): improve gpio deepsleep wakeup configuration code 2024-09-29 16:56:42 +08:00
wuzhenghui
04b2afed44 change(esp_hw_support): switch lp_cpu power mode with clock src to save lp_cpu working power 2024-09-26 11:23:06 +08:00
Li Shuai
3edbd0741a Merge branch 'feat/esp32c5_wifi_sleep' into 'master'
esp32c5 wifi legacy sleep and modem state support

Closes WIFI-6424, WIFI-6425, PM-185, IDF-10597, and IDF-10601

See merge request espressif/esp-idf!33225
2024-09-20 13:53:07 +08:00
Mahavir Jain
a71e0fc028 Merge branch 'feature/enable_sha_support_for_esp32c61' into 'master'
feat: enable support for sha peripheral in esp32c61

Closes IDF-9234

See merge request espressif/esp-idf!32830
2024-09-20 13:22:14 +08:00
Li Shuai
d57ee7d87e refactor(esp_hw_support): seperate sleep modem state support for each target 2024-09-19 20:04:44 +08:00
Konstantin Kondrashov
1489514ee5 Merge branch 'contrib/github_pr_14469' into 'master'
fix(spinlock): comparison of integer expressions of different signedness (GitHub PR)

Closes IDFGH-13581

See merge request espressif/esp-idf!33272
2024-09-14 15:34:41 +08:00