Commit Graph

107 Commits

Author SHA1 Message Date
Marius Vikhammer d2567b6e45 Merge branch 'fix/lp_core_wake_stub_pmu_sw_int' into 'master'
fix(esp_hw_support): clear LP core SW interrupt in wake stub before sleep

Closes IDFGH-17328

See merge request espressif/esp-idf!46337
2026-03-11 13:35:52 +08:00
Marius Vikhammer cc9a929ea6 fix(esp_hw_support): clear LP core SW interrupt in wake stub before sleep
When ulp_lp_core_wakeup_main_processor() is called, it sets the
PMU_SW_INT_RAW bit on the HP side. The normal sleep path clears this
bit before re-entering sleep, but esp_wake_stub_sleep() did not, leaving
the wakeup cause sticky. This caused the PMU to immediately re-trigger a
wakeup as soon as sleep was requested from the wake stub, producing a
rapid re-wakeup loop that eventually triggered LP_WDT_SYS resets.

Add a test case that verifies the wake stub can return to sleep correctly
across multiple LP core wakeup cycles without the re-wakeup bug.

Closing https://github.com/espressif/esp-idf/issues/18308

Made-with: Cursor
2026-03-09 10:56:33 +08:00
Konstantin Kondrashov 74561963e1 feat(ulp): Improved ULP delay API accuracy and removed floating point operations
Closes https://github.com/espressif/esp-idf/issues/17494
Closes https://github.com/espressif/esp-idf/issues/16891
2026-03-05 10:39:34 +02:00
Wu Zheng Hui ad1f0f870b Merge branch 'feat/support_esp32s31_pmu_basic' into 'master'
feat(esp_hw_support): support esp32s31 pmu basic

Closes IDF-14642

See merge request espressif/esp-idf!45494
2026-02-24 14:11:27 +08:00
wuzhenghui 0b27301a09 feat(soc): support esp32s31 lp_aon & rtc_wdt & rtc_timer 2026-02-11 15:03:35 +08:00
Marius Vikhammer 5f914189c2 ci(core): removed common_components from core test-apps dependencies 2026-01-26 11:47:23 +08:00
igor.udot 4c26ab876b ci: update build-test-rules to use common_components 2026-01-23 10:14:09 +08:00
Sudeep Mohanty e0c7dc93e7 fix(lp_adc): Update ADC threshold values for LP core LP ADC test 2026-01-16 08:22:36 +01:00
Marius Vikhammer cc7ac472e6 ci(ulp): change depends_components for ULP tests and examples 2026-01-06 09:41:35 +08:00
Wu Zheng Hui dcca718908 Merge branch 'refactor/independent_rtc_timer_hal' into 'master'
feat(hal): graduate rtc_cntl_timer/lp_timer hal/ll  into a new component: esp_hal_rtc_timer and unify naming

Closes IDF-15045

See merge request espressif/esp-idf!44573
2025-12-31 05:22:06 +08:00
wuzhenghui 48ba430297 change(esp_hal_rtc_timer): unify lp_timer/rtc_timer naming to RTC_TIMER 2025-12-30 11:35:36 +08:00
Meet Patel 017ae532c0 fix(lp_adc): Fix LP ADC 1-byte read CI issue on ESP32P4
This is a follow up commit on top of below commit:
c061c781a3

This commit further increases the ADC_TEST_LOW_VAL threshold from 2165
to 2200, because some tests were found to be failing with ADC reading
values such as 2171, 2172, 2182 etc. Suspecting the ADC callibration or
surrounding temperature to cause such fluctuations which need higher
threshold to avoid test failures.
2025-12-29 13:26:14 +05:30
Meet Patel c061c781a3 fix(lp_adc): Fix LP ADC 1-byte read CI issue on ESP32P4
The low power ADC in ESP32P4 sometimes reads the data value as 2160,
2161 or a bit greater than that when running the CI test case named
esp32p4.defaults.test_lp_core -> LP ADC 1 raw read stress test. However,
the test only passes if value stays below the LOW_VAL threshold of 2160.
Hence, updated the LOW_VAL threshold to 2165 keeping some margin,
because ADC readings may differ slightly from board to board, so this
type of small variations in ADC values are expected.
2025-12-18 11:18:39 +05:30
laokaiyao e39c9781f3 feat(hal): graudate the adc/dac hal driver into a new component 2025-12-04 10:38:24 +08:00
Marius Vikhammer cd0e6ec2ca fix(lp-core): fixed rtc mem conflict on p4 eco5 between app and ULP 2025-11-20 17:03:23 +08:00
Marius Vikhammer d3ffbccfb8 Merge branch 'ci/ulp_fsm_i_wr_reg' into 'master'
test(ulp): added larger delay in ULP FSM I_WR_REG instruction test

Closes IDFCI-3495 and IDFCI-3334

See merge request espressif/esp-idf!43420
2025-11-18 09:30:25 +08:00
Marius Vikhammer da79b1989f test(ulp): added larger delay in ULP FSM I_WR_REG instruction test
Test is flakey, could possibly be due to the ULP occasionally needing
a bit more time to start up.
2025-11-17 16:03:21 +08:00
armando b25ba4a0c1 ci(p4): disable p4 rev3 invalid tests temporarily 2025-11-17 12:11:39 +08:00
Marius Vikhammer 865f0f4f0e ci(ulp): reset board between ulp-fsm tests 2025-10-24 10:15:35 +08:00
Chen Chen 4ac9954101 refactor(i2c): Add disclaimer for legacy driver 2025-10-20 11:38:26 +08:00
Chen Chen a4710cc206 refactor(driver): remove redundant driver dependencies
now the driver component only contains legacy code for i2c, twai and
touch sensor
2025-09-30 15:47:45 +08:00
Marius Vikhammer 0ac9dfbbe0 Merge branch 'feature/lp_core_exception_wake' into 'master'
feat(ulp): added lp-core exception as wake-up source

See merge request espressif/esp-idf!39159
2025-09-19 14:48:33 +08:00
Marius Vikhammer 04fdae2f67 feat(ulp): added lp-core exception as wake-up source 2025-09-18 11:14:02 +08:00
Meet Patel 93cbfcf139 refactor(lp_core_i2c): Modify lp_core_i2c header to support ESP32C5
lp_core_i2c.h header file has sda and scl pins hardcoded to GPIO6 and
GPIO7 which works only for ESP32C6. ESP32C5 uses GPIO2 and GPIO3 for
I2C SDA and SCL. Hence, added LP_I2C_SCL_IO and LP_I2C_SDA_IO macros
under conditional compilation in library header file, so there is no
need to hardcode I2C GPIO pins and any other test apps or examples
that are including the LP I2C header file can also use Macro directly.
2025-09-15 17:30:20 +05:30
Marius Vikhammer 5d98c9010b Merge branch 'bugfix/lp_core_array_bounds_p4' into 'master'
fix(lp_core): fixed array-bound warning when compiling on P4 with -Os

Closes IDFGH-16115

See merge request espressif/esp-idf!41583
2025-08-29 09:55:12 +08:00
Marius Vikhammer 140effda53 fix(lp_core): fixed array-bound warning when compiling on P4 with -Os
Closes https://github.com/espressif/esp-idf/issues/17054
2025-08-28 13:19:56 +08:00
Marius Vikhammer a791f7e85d ci(ulp): fixed default config not running in CI 2025-08-27 17:13:46 +08:00
Marek Fiala 9d35d63651 feat(cmake): Update minimum cmake version to 3.22 (whole repository) 2025-08-19 14:44:32 +02:00
Marius Vikhammer 4065fb20f3 Merge branch 'feature/esp_test_utils_component' into 'master'
change(test_utils): moved test_utils out of unit-test-app project

See merge request espressif/esp-idf!40678
2025-08-01 11:04:37 +08:00
Marius Vikhammer 9788d33351 ci(system): update system pytest apps to use SOC_CAPs 2025-07-31 19:05:58 +08:00
wanckl cb257ede27 ci(esp32c61): enable multi dut runner for c61 2025-07-22 17:10:55 +08:00
Marius Vikhammer bf84ab652a change(test_utils): moved test_utils component to tools/test_apps/components/ 2025-07-21 14:05:50 +08:00
Marius Vikhammer 914fc9f899 test(lp_core): re-enabled C5 lp-core test 2025-07-11 09:45:50 +08:00
wuzhenghui 879713d589 change(esp_hw_support): deprecate esp_sleep_get_wakeup_cause with esp_sleep_get_wakeup_causes 2025-06-27 16:18:10 +08:00
Sudeep Mohanty 0f45b6c6c3 change(lp-core): Update LP I2C and LP UART drivers to use raw interrupt status
This commit updates the LP I2C and LP UART drivers to use the raw
interrupt status without enabling the interrupts.
2025-05-13 15:43:39 +02:00
igor.udot daf2d31008 test: format all test scripts 2025-03-05 12:08:48 +08:00
Sudeep Mohanty 800b5f8072 fix(lp_uart): Fixed flaky LP UART unit tests
This commit fixes some flaky LP UART multi device tests. It also adds
code to put the HP core to light sleep for few tests.
2025-02-13 12:28:26 +01:00
igor.udot f742a05b28 feat: supports lp uart wakeup 2025-02-05 14:54:48 +08:00
Song Ruo Jing 486c95557a Merge branch 'bugfix/gpio_8_16_bit_access' into 'master'
feat(gpio): add gpio_config_as_analog() API

Closes IDF-10247 and IDFGH-12754

See merge request espressif/esp-idf!35856
2025-01-10 15:14:19 +08:00
Song Ruo Jing 52c0278361 feat(gpio): add gpio_config_as_analog API 2025-01-08 21:58:12 +08:00
Sudeep Mohanty 24d44e1696 fix(ulp): Added unit tests for ulp binary embed with prefix and misc fixes
This commit:
- Removes the link time symbol name clash detection.
- Extracts symbols of type NOTYPE for global identifiers defined in
  assembly files.
- Makes the prefix argument optional for ulp_add_build_binary_targets().
- Adds a unit test for the ulp binary embed with a prefix feature.
2025-01-08 14:55:58 +08:00
gaoxu cfa487b4e0 ci(adc): enable P4 ADC test and correct ADC performance thresh 2024-12-31 11:28:29 +08:00
Marius Vikhammer 8406735635 fix(lp_core): updated lp rom newlib API addresses 2024-10-24 10:45:55 +08:00
Armando 56af6b5fc4 test(sleep): vad wakeup hp core test 2024-10-16 17:27:27 +08:00
Armando 60c005d1dc test(vad): vad wakeup test 2024-10-16 17:27:27 +08:00
Marius Vikhammer 564d777018 Merge branch 'feature/lp_core_40_mhz' into 'master'
feat(system): support choosing xtal as rtc-fast clock src on P4 and C5

Closes IDF-10203

See merge request espressif/esp-idf!32450
2024-09-20 10:57:15 +08:00
Marius Vikhammer 00eb97725b feat(system): support choosing xtal as rtc-fast clock src on P4 and C5
With xtal as rtc-fast clock source the LP-Core can run at twice the default
clock frequency. 40 MHz as opposed to 20 MHz.
2024-09-19 17:30:44 +08:00
Wu Zheng Hui 6abe40e590 Merge branch 'feature/optimize_esp32p4_active_power_eco1' into 'master'
feat(system): Optimize esp32p4 active state  power consumption

Closes PM-103 and IDF-7688

See merge request espressif/esp-idf!32950
2024-09-11 23:15:29 +08:00
wuzhenghui c41d432397 fix(ulp): fix uart driver delete order in lp uart test case 2024-09-11 10:53:00 +08:00
Sudeep Mohanty 594880dae4 test(lp_adc): Added LP Core unit tests for testing LP ADC
Added a unit test to verify that LP ADC1 works and can be read from the
LP Core.
2024-09-10 08:45:11 +02:00