Commit Graph

483 Commits

Author SHA1 Message Date
wuzhenghui
aaf04f514f fix(esp_hw_support): manage i2c_ana_mst clock witch modem clock driver 2023-08-04 12:04:40 +08:00
Lou Tianhao
8833c2bc87 change(pm/deepsleep): Update deep_sleep pmu analog parameter for esp32h2 2023-08-03 16:46:54 +08:00
Lou Tianhao
4bc5e24f82 feat(pm/deepsleep): Support deep_sleep example and deep_sleep_wake_stub example for esp32h2 2023-08-03 16:46:54 +08:00
Jiang Jiang Jian
afcf3e261b Merge branch 'bugfix/fix_cache_data_mem_corrupt_after_sleep_v5.1' into 'release/v5.1'
fix(lightsleep): Suspend cache before goto sleep to avoid cache load wrong data (backport v5.1)

See merge request espressif/esp-idf!25087
2023-08-02 11:21:33 +08:00
Jiang Jiang Jian
2f9bb7937a Merge branch 'bugfix/remove__warning_for_rc_fast_calibration_h2_v5.1' into 'release/v5.1'
remove(clk): remove warning log if RC_FAST clock calibration is needed on esp32h2 (v5.1)

See merge request espressif/esp-idf!25075
2023-08-01 10:53:46 +08:00
Jiang Jiang Jian
fbfdd97343 Merge branch 'bugfix/esp32h2_revision_config_prompt_v5.1' into 'release/v5.1'
fix(esp32h2): correct typo in chip revision prompt (v5.1)

See merge request espressif/esp-idf!25024
2023-08-01 10:53:26 +08:00
wuzhenghui
c5703cff8d fix(lightsleep): fix access pu_cfg after sleep wake wakeup which is linked to flash 2023-07-31 21:41:56 +08:00
Song Ruo Jing
59672cee17 remove(clk): remove warning log if RC_FAST clock calibration is needed on esp32h2 2023-07-31 10:48:55 +08:00
Mahavir Jain
a0d882c25e fix(esp32h2): correct typo in chip revision prompt 2023-07-28 13:45:28 +00:00
wuzhenghui
9df77e015a fix(rtc_clk): fix i2c master clock missing in bbpll configure 2023-07-21 11:01:56 +00:00
Li Shuai
ee3452d410 light sleep: enable system clock in PMU HP sleep state when selecting a 40 MHz XTAL as low power clock source of ble 2023-07-14 11:07:41 +08:00
Lou Tianhao
d191b0c540 Power Management: fix hp xtal wait bug for esp32h2 and esp32c6 2023-07-11 14:53:43 +08:00
Lou Tianhao
60a3e5053e Power Management: support pu xtal in light sleep for esp32h2 2023-07-11 14:53:15 +08:00
Lou Tianhao
8ef8459c0d Power Management: update pmu init and sleep parameter 2023-07-11 12:04:09 +08:00
Lou Tianhao
3b40ce4d9b Power Management: fix REGDMA clock issue when wake up form light sleep 2023-07-11 12:03:59 +08:00
Lou Tianhao
24486dd069 Power Management: support PAU REGDMA feature for esp32h2 2023-07-11 12:03:13 +08:00
Lou Tianhao
356fa3ab4b Power Management: support DFS and PMU feature for esp32h2 2023-07-11 12:02:39 +08:00
laokaiyao
6f673e95c9 adc_oneshot: move power acquire back to adc_oneshot_new_unit
Revert and fix of d197c59eaa in !23575

adc_cali: fix the condition of ocode calibration
2023-07-05 12:48:11 +08:00
laokaiyao
e90a2d50c4 adc_cali: supported channel compensation of adc calibration on esp32c6 2023-07-05 12:48:11 +08:00
Jiang Jiang Jian
2cffd23655 Merge branch 'bugfix/pmu_wait_xtal_stable_time_issue' into 'release/v5.1'
fix PMU wait xtal stable time issue for esp32c6

See merge request espressif/esp-idf!24259
2023-07-05 12:27:26 +08:00
Li Shuai
9216bdc078 Power Management: fix PMU wait xtal stable time issue 2023-07-04 16:22:00 +08:00
Li Shuai
963fac95d7 fix(rtc_clk): fix the issue of missing configuration for calibration cycles of the internal 32 kHz RC 2023-07-04 16:06:37 +08:00
Jiang Jiang Jian
207e589917 Merge branch 'bugfix/support_esp32c6_sleep_retention_extra_link_v5.1' into 'release/v5.1'
backport v5.1: support extra linked list retention for BLE and 15.4

See merge request espressif/esp-idf!24220
2023-07-04 12:11:04 +08:00
Jiang Jiang Jian
4647045388 Merge branch 'bugfix/support_esp326_xtal_xpd_v5.1' into 'release/v5.1'
esp32c6: support xtal xpd (backport v5.1)

See merge request espressif/esp-idf!24253
2023-07-04 12:04:51 +08:00
wuzhenghui
f0b6e8f37e feature: support xtal_xpd pmu parameters 2023-06-15 10:22:33 +08:00
Li Shuai
ef4c0a7753 sleep retention: fix crash issue caused by destroying the module after the module node creation fails 2023-06-13 21:04:38 +08:00
morris
d5fb4ff7c8 esp_rom: add common ROM API to update CPU tick rate 2023-06-01 10:57:13 +08:00
Michael (XIAO Xufeng)
30f8f83d52 Merge branch 'bugfix/add_warning_for_rc_fast_calibration_h2_v5.1' into 'release/v5.1'
clk: Add warning log if RC_FAST clock calibration is needed on esp32h2 (v5.1)

See merge request espressif/esp-idf!23935
2023-05-31 20:21:11 +08:00
Jiang Jiang Jian
5cd24826bb Merge branch 'bugfix/fix_rc_fast_calibration_v5.1' into 'release/v5.1'
rtc_clk: fix esp32c6/esp32h2 eco chip `RC_FAST` bad calibration value (backport v5.1)

See merge request espressif/esp-idf!23940
2023-05-31 17:40:28 +08:00
Jiang Jiang Jian
0d13f6f09d Merge branch 'bugfix/fix_hang_during_sleep_process_v5.1' into 'release/v5.1'
bugfix: fix hang on pd_top sleep process (backport v5.1)

See merge request espressif/esp-idf!23852
2023-05-31 17:40:02 +08:00
wuzhenghui
8c714acfb5 bugfix: fix rc_fast bad calibration value 2023-05-26 13:59:25 +08:00
Song Ruo Jing
702afbb0f7 clk: Add warning log if RC_FAST clock calibration is needed on esp32h2 2023-05-26 11:45:00 +08:00
wuzhenghui
1df2dcc9fe bugfix: treat too short sleep duration as sleep reject by software 2023-05-19 13:51:24 +08:00
Sudeep Mohanty
267c5e37a2 lp-i2c: Added support for LP I2C peripheral to LP core
This commit adds support for the LP I2C peripheral driver to be used by
the LP core. An example is also added to demonstrate the usage of the LP
I2C peripheral from the LP core.
2023-05-19 07:33:01 +02:00
wuzhenghui
ed076c2bc8 bugfix: move adc_oneshot_power_acquire/release to adc_oneshot_read
Closes https://github.com/espressif/esp-idf/issues/10595
Closes https://github.com/espressif/esp-idf/issues/11386
2023-05-18 20:08:47 +08:00
Jiang Jiang Jian
5b4c95c50f Merge branch 'bugfix/update_esp32c6eco1_sleep_fosc_cal_cycles_backport_v5.1' into 'release/v5.1'
bugfix: update esp32c6 eco1 fosc calibration cycles during sleep(backport v5.1)

See merge request espressif/esp-idf!23490
2023-05-18 19:52:05 +08:00
Marius Vikhammer
d17ab36645 Merge branch 'feature/c6_ulp_timer_v5.1' into 'release/v5.1'
ulp: lp timer support for lp core (v5.1)

See merge request espressif/esp-idf!23659
2023-05-16 09:19:56 +08:00
zlq
79a2cc224c H2:fix temp sensor issue @low temp 2023-05-12 17:00:58 +08:00
morris
1d89e24199 Merge branch 'bugfix/fix_mspi_octal_psram_timing_tuning_point_fallback_id_v5.1' into 'release/v5.1'
mspi: modified mspi 80mhz octal psram timing tuning point fallback id on s3 (v5.1)

See merge request espressif/esp-idf!23689
2023-05-11 21:24:44 +08:00
Armando
6ae2c3c240 mspi: modified mspi 80mhz octal psram timing tuning point fallback id on s3 2023-05-11 11:13:32 +08:00
Marius Vikhammer
45fd8feba3 ulp: add support for using lp timer with lp core on C6 2023-05-10 09:39:24 +08:00
cje
78b9f5e151 fix too low hp ldo dbias bug for h2 2023-05-05 17:04:18 +08:00
wuzhenghui
123da6baa7 bugfix: fix esp32c6eco1 fosc calibration cycles during sleep 2023-05-04 11:47:54 +08:00
morris
cbd210b431 Merge branch 'refactor/rename_to_esp_clk_tree_prefix_v5.1' into 'release/v5.1'
esp_clk_tree: Rename clk_tree_xxx to esp_clk_tree_xxx (v5.1)

See merge request espressif/esp-idf!23449
2023-04-28 17:11:46 +08:00
Michael (XIAO Xufeng)
1a03cb02c2 Merge branch 'feature/support_fosc_calibration_c6_eco1_to_v5.1' into 'release/v5.1'
ESP32C6: Fix fosc calibration fail bug for ECO1 & Above (v5.1)

See merge request espressif/esp-idf!23467
2023-04-27 20:38:31 +08:00
Song Ruo Jing
202b18b5fa esp_clk_tree: Rename clk_tree_xxx to esp_clk_tree_xxx, add compilation warning to clk_tree.h 2023-04-27 11:11:18 +00:00
Marius Vikhammer
c35f7cad45 Merge branch 'feature/c6_ulp_sleep_v5.1' into 'release/v5.1'
ulp: added sleep support for lp core (v5.1)

See merge request espressif/esp-idf!23484
2023-04-27 17:07:24 +08:00
Jiang Jiang Jian
411c392d97 Merge branch 'feature/support_fosc_calibration_h2_eco2_to_v5.1' into 'release/v5.1'
ESP32H2: Fix fosc calibration fail bug for ECO2 & Above (v5.1)

See merge request espressif/esp-idf!23469
2023-04-27 14:38:01 +08:00
Marius Vikhammer
0bac174058 ulp: added sleep support for lp core
Added support for running LP core while hp core sleeps, as well
as waking up the hp core.
2023-04-27 09:51:41 +08:00
laokaiyao
804a9ea1f6 esp32h4: remove esp32h4 target from peripherals 2023-04-26 18:53:10 +08:00
hongshuqing
70fc0bde01 support h2 eco2 fosc calibration for v5.1 2023-04-26 17:08:09 +08:00
hongshuqing
1564884cc1 support c6 eco1 fosc calibration for v5.1 2023-04-26 16:32:28 +08:00
Michael (XIAO Xufeng)
cfcb57333b Merge branch 'bugfix/fix_chip_broken_bug_in_monitor_mode_S2_v5.1' into 'release/v5.1'
ESP32S2/C3/C2: fixed S2 dangerous power parameters in sleep modes and support S2/C3/C2 different sleep mode (v5.1)

See merge request espressif/esp-idf!23378
2023-04-26 11:41:09 +08:00
Marius Vikhammer
9ddd08c502 system: fix esp32 chip info not listing esp32 pico v3-02 as having embedded spiram
Closes https://github.com/espressif/esp-idf/issues/11233
2023-04-24 13:53:26 +08:00
cje
93eeb4265c fix chip broken bug when run in monitor mode of S2 and modify voltage param to fit all sleep mode of S2/C2/C3 2023-04-24 10:37:57 +08:00
Li Shuai
10d02c6c5c power save: add txq memory to mac retention link to fix tx m f null failure 2023-04-06 11:09:46 +08:00
Song Ruo Jing
5816c47457 spi_flash: Move mspi clock source switch to 64M in 2nd bootloader code from rtc_clk.c to bootloader_flash_config_esp32h2.c 2023-04-04 16:09:47 +08:00
Armando
6d4c0bb3aa mspi: support 120M DDR flash and psram on S3 (experimental) 2023-04-03 10:30:50 +08:00
Marius Vikhammer
a5c70c24e5 Merge branch 'bugfix/memprot_cleanup_iram_attr' into 'master'
memprot: move memprot functions out of IRAM

See merge request espressif/esp-idf!20697
2023-03-28 10:18:22 +08:00
Wu Zheng Hui
a79c5ef7ed Merge branch 'bugfix/esp32c6_deep_sleep_minor_fixes' into 'master'
bugfix: esp32c6 deep sleep minor fixes

Closes WIFI-5559, WIFI-5425, WIFI-3494, WIFI-3495, WIFI-4163, and WIFI-4164

See merge request espressif/esp-idf!22697
2023-03-18 14:41:43 +08:00
Kevin (Lao Kaiyao)
d659991bbb Merge branch 'feature/gpio_runtime_preserve' into 'master'
gpio: support runtime reserve

Closes IDF-6731

See merge request espressif/esp-idf!22223
2023-03-18 10:55:44 +08:00
wuzhenghui
8e397f9bd9 bugfix: no need to do retention in deepsleep 2023-03-17 19:45:56 +08:00
Jiang Jiang Jian
73c06b5039 Merge branch 'bugfix/sleep_current_issue_caused_by_sar_adc' into 'master'
sleep current issue caused by sar adc

Closes IDF-6111 and WIFI-4370

See merge request espressif/esp-idf!22769
2023-03-17 17:32:59 +08:00
Jiang Jiang Jian
2658fb7623 Merge branch 'feature/add_memprot_support_for_esp32h2' into 'master'
esp32h2: enable memory protection scheme using PMA and PMP

Closes IDF-6452 and IDF-6332

See merge request espressif/esp-idf!22699
2023-03-17 15:19:52 +08:00
Marius Vikhammer
43784e7a24 memprot: move memprot functions out of IRAM
Memprot functions are no longer placed by default in IRAM,
selecting ESP_PANIC_HANDLER_IRAM will still force panic related memprot
functions to be placed in IRAM.
2023-03-17 14:51:20 +08:00
Li Shuai
a25ce78392 sleep: fix sleep current issue caused by sar adc 2023-03-17 13:06:39 +08:00
laokaiyao
c9f780dc2e gpio: support runtime preserve 2023-03-17 11:59:49 +08:00
liuning
14ca81f03f rtc_sleep: workaround systimer stall issue during lightsleep on ESP32C3 2023-03-15 20:33:03 +08:00
Mahavir Jain
233d8e1a33
esp32c6: Ensure that previous PMP entry is correctly set for TOR case 2023-03-15 13:16:27 +05:30
Mahavir Jain
fb1ef7c6d6
esp32h2: enable memory protection scheme using PMA and PMP
Closes IDF-6452
2023-03-15 13:16:18 +05:30
Jiang Jiang Jian
abc43d8e94 Merge branch 'bugfix/some_small_fix_for_sleep' into 'master'
esp_hw_support/sleep: update soc caps for chips that support power down modem

Closes WIFI-4424

See merge request espressif/esp-idf!20198
2023-03-13 10:47:26 +08:00
C.S.M
b0b99a9a1b Merge branch 'feature/flash_support_h2' into 'master'
spi_flash: Allow clock frequency up to 64M on ESP32H2

See merge request espressif/esp-idf!22476
2023-03-10 19:13:03 +08:00
jingli
cb0f517fe3 soc/soc_caps: update soc caps for chips that support power-down of modem hardware
Closes WIFI-4424
2023-03-10 14:15:27 +08:00
Armando (Dou Yiwen)
1b4643d323 Merge branch 'refactor/create_mspi_timing_tuning_ll' into 'master'
mspi: create mspi timing tuning ll

Closes IDF-6638

See merge request espressif/esp-idf!21924
2023-03-10 14:14:23 +08:00
Cao Sen Miao
bc655a6890 spi_flash: Allow clock frequency up to 64M, and make it default on ESP32H2 2023-03-10 11:39:53 +08:00
Armando
36532aaea8 mspi: make mspi_timing_tuning.h available for all supported targets 2023-03-09 10:38:32 +00:00
Armando
99882ac2d1 mspi: mspi timing tuning ll 2023-03-09 10:38:32 +00:00
Sachin Parekh
ed0a1f7b52 esp32c6: Fix incorrect PMP configuration
- Enable pytest memprot tests for C6
2023-03-09 11:37:29 +05:30
Sachin Parekh
7bd5d93905 esp_hw_support: Move cpu protection in port files 2023-03-09 11:37:29 +05:30
Li Shuai
200f69e6eb auto beacon: support esp32c6 autobeacon (advanced DTIM sleep feature)
modem retention: Support esp32c6 wifi MAC and baseband sleep retention

sleep_modem: wifi MAC modem wakeup protect in modem state before PMU trigger sleep enable request

sleep modem: provide a interface to get whether the Modem power domain is allowed to power off during sleep

add i2c_ana master header file to project

auto beacon: release PMU's lock on root clock source (it is locked in the PLL)

wifi receiving beacon frame in PMU modem state strongly depends on the BBPLL
clock, PMU will forcibly lock the root clock source as PLL, when the root
clock source of the software system is selected as PLL, we need to release
the root clock source locking.

When it is judged that the PLL is locked by PMU after wakeing up from the PMU
modem state, switch the root clock source to the PLL in the sleep process (a
critical section).

auto beacon: fix the failure to receive broadcast/multicast frames in modem state

When the multicast field in the beacon frame received in the PMU modem state is
True, the PMU switches to the PMU active state (the PMU waits for the HP LDO to
stabilize and then restores the MAC context) and starts to receive
broadcast/multicast frames (Broadcast/Multicast frames will be sent after a
minimum delay of 48 us after the beacon frame), because the PMU waits for the HP
LDO to stabilize too long (~154 us), which will cause broadcast/multicast frame
reception to be missed.

auto beacon: select the PLL clock source as the REGDMA backup clock source when the PMU switches to ACTIVE from MODEM state

update Digital Peripheral (M2A switch) REGDMA restore time parameter

auto beacon: fix the issue that only channel 1 can connect to AP in modem state
2023-03-04 00:17:40 +08:00
wuzhenghui
6f7eadf1ea bugfix: fix wrong _ms suffix 2023-03-04 00:17:40 +08:00
wuzhenghui
9eae151f7c esp32c6: bringup deepsleep examples 2023-03-02 15:06:05 +08:00
wuzhenghui
d1d6b7349f pmu: pmu parameter adjustment 2023-03-02 15:06:05 +08:00
zhangwenxu
c07ec73201 efuse: fix esp_read_mac on esp32h2 2023-03-01 14:14:30 +08:00
Song Ruo Jing
1a66459b44 usb_serial_jtag: Improve the code for the issue of usb cdc device unable to work during sleep
1. Remove RTC_CLOCK_BBPLL_POWER_ON_WITH_USB Kconfig option
   During sleep, BBPLL clock always gets disabled
   esp_restart does not disable BBPLL clock, so that first stage bootloader log can be printed
2. Add a new Kconfig option PM_NO_AUTO_LS_ON_USJ_CONNECTED
   When this option is selected, IDF will constantly monitor USB CDC port connection status.
   As long as it gets connected to a HOST, automatic light-sleep will not happen.

Closes https://github.com/espressif/esp-idf/issues/8507
2023-02-27 12:10:49 +08:00
Armando (Dou Yiwen)
4452a3cf3e Merge branch 'feature/support_h2_adc' into 'master'
adc: support adc h2

Closes IDF-6124, IDF-6214, IDF-6543, IDF-6215, IDF-6664, and IDF-6695

See merge request espressif/esp-idf!22205
2023-02-24 14:28:33 +08:00
Armando
c2d5c19b28 adc: ll enum renaming 2023-02-23 11:48:31 +08:00
Armando
d0e4d36fb6 esp_adc: support h2 oneshot mode and continuous mode 2023-02-23 11:48:31 +08:00
jingli
4c3d1e24d7 codeclean: remove unused sleep related functions 2023-02-23 11:36:13 +08:00
Song Ruo Jing
2c2a62e323 clk_tree: Add basic clock support for esp32h2
- Support SOC ROOT clock source switch
- Support CPU frequency change
- Support RTC SLOW clock source switch
- Support RTC SLOW clock + RC FAST calibration

Remove FPGA build for esp32h2
2023-02-20 17:15:02 +08:00
wuzhenghui
a0492202b7 bugfix: unhold SPI CS pin in pd_top lightsleep 2023-02-15 11:46:41 +08:00
wuzhenghui
0b0da680d2 codeclean: turn on the regdma clock only once 2023-02-15 11:46:40 +08:00
Li Shuai
8c18393d23 regdma: add regdma link operation api support 2023-02-15 11:46:36 +08:00
Li Shuai
d3e0e3e3b6 pau: implement the pau regdma driver for esp32c6 2023-02-15 10:45:44 +08:00
morris
a3f887a1fe gpio: support glitch filter on esp32h2 2023-02-11 23:01:01 +08:00
Jing Li
409804f673 Merge branch 'feature/support_feature_depend_on_rtc_fast_mem_for_esp32c2' into 'master'
esp32c2: support feature(rtc time) depend on rtc fast mem

Closes IDF-3901, IDF-4239, IDF-5053, IDF-5060, and IDF-5131

See merge request espressif/esp-idf!19067
2023-02-07 15:16:01 +08:00
Song Ruo Jing
b72d759290 uart: Add support for esp32h2 2023-02-06 00:48:04 +08:00
jingli
af9c6e3175 esp32c2/rtc: fix 8md256 as rtc slow clk not work properly during deep sleep 2023-02-02 20:41:11 +08:00
jingli
f8cc2ec86d esp32c2: support rtc time feature depend on rtc memory, since c2 does not have rtc memory 2023-02-02 20:25:59 +08:00
Wu Zheng Hui
04987ac201 Merge branch 'feature/add_ram_loadable_app_support' into 'master'
feature: add ram loadable app support

See merge request espressif/esp-idf!19465
2023-02-02 10:28:13 +08:00