Commit Graph
125 Commits
Author SHA1 Message Date
Song Ruo Jing 9054cbd9db fix(uart): lp uart rx iomux pin was not working as expected
Introduced in 8818157e42
The workaround in the commit routes the signal to LP GPIO matrix first.
When uses LP IOMUX pin as UART RX, the signal did not bypass the matrix,
which caused the issue.

This commit adds rtc_gpio_iomux_input and rtc_gpio_iomux_output APIs
to align with existing GPIO driver APIs.
2026-04-21 16:55:31 +08:00
Song Ruo Jing 22c48ff2b7 fix(gpio): Revert the fix for RTCIO config should be written if LPIO clk exists
revert the main logic in acb49e9520
The fix causes deep sleep wakeup IO unable to reset back to GPIO after
waking up from deep sleep.
2026-04-20 12:09:22 +08:00
igor.udot e2a8bbe639 ci: update build-test-rules to use common_components 2026-03-20 15:53:26 +08:00
Jiang Jiang Jian dfa5e5d53a Merge branch 'bugfix/esp_idf_s3_deepsleep_dead_v6.0' into 'release/v6.0'
fix(hal): fix the issue of dual-core contention for RTC_CNTL regs(v6.0)

See merge request espressif/esp-idf!46180
2026-03-20 10:15:14 +08: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
hebinglin e2e1aa4502 fix(hal): fix the issue of dual-core contention for RTC_CNTL regs 2026-03-02 14:29:08 +08:00
wuzhenghui fc7cf9967a change(hal): deprecate 'gpio deep sleep wakeup' naming in hal
rename `gpio_hal_deepsleep_wakeup_enable/disable` to
       `gpio_hal_wakeup_enable/disable_on_hp_periph_powerdown_sleep`

rename `gpio_hal_deepsleep_wakeup_is_enabled` to
       `gpio_hal_wakeup_is_enabled_on_hp_periph_powerdown_sleep`

rename `gpio_ll_deepsleep_wakeup_enable/disable` to
       `gpio_ll_wakeup_enable/disable_on_hp_periph_powerdown_sleep`
2026-02-01 12:16:24 +08:00
wuzhenghui 1e6f39c685 change(esp_driver_gpio): deprecate gpio_deep_sleep_wakeup_enable/disable API
rename gpio_deep_sleep_wakeup_enable to gpio_wakeup_enable_on_hp_periph_powerdown_sleep
rename gpio_deep_sleep_wakeup_disable to gpio_wakeup_disable_on_hp_periph_powerdown_sleep
rename GPIO_IS_DEEP_SLEEP_WAKEUP_VALID_GPIO to GPIO_IS_HP_PERIPH_PD_WAKEUP_VALID_IO
2026-02-01 12:16:24 +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
wanckl d12f941787 feat(driver_spi): split spi hal component 2025-12-16 20:38:09 +08:00
morris 11ce7a9011 refactor(soc): remove soc_caps_full.h 2025-12-11 10:29:01 +08:00
Song Ruo Jing 4d3a9b0157 refactor(esp_hal_gpio): move some caps definitions to esp_hal_gpio 2025-12-08 14:33:26 +08:00
Song Ruo Jing 62899cbba6 refactor(gpio): split GPIO HAL into separate component
cleaned up some includes in GPIO peripheral files
2025-12-08 14:33:26 +08:00
Song Ruo Jing 490f21c643 fix(gpio): oe control by register only take effect when func sel is GPIO 2025-11-27 11:08:48 +08:00
morris 29fc0f8726 Merge branch 'feat/dedic_gpio_esp32h4_v6.0' into 'release/v6.0'
feat(gpio): support fast gpio driver on esp32h4 (v6.0)

See merge request espressif/esp-idf!43541
2025-11-21 14:40:03 +08:00
morris ca892b17b9 feat(gpio): support fast gpio driver on esp32h4 2025-11-20 15:50:58 +08:00
Song Ruo Jing 653e24f69f refactor(gpio): add esp_err_t return type to gpio_uninstall_isr_service
Closes https://github.com/espressif/esp-idf/issues/14114
2025-11-19 12:17:52 +08:00
Song Ruo Jing e28ff72154 feat(gpio): add IO hold support for Deep-sleep for ESP32-P4 ECO5 2025-11-12 22:28:03 +08:00
Zhang Shu Xian e8ce6566d5 Merge branch 'docs/update_reference_to_esp32_errata' into 'master'
docs: Update reference to the specific section in ESP32 Errata

Closes DOC-10080

See merge request espressif/esp-idf!42514
2025-10-20 17:54:19 +08:00
Zhang Shuxian 52aa593617 docs: Update reference to the specific section in ESP32 Errata 2025-10-16 10:08:16 +08:00
Chen Chen 29f8fcf7b7 fix(i2c/gpio): Add error checks to the i2c driver
Add more checks to i2c driver, as well as fixed some GPIO issues
together with it.
2025-10-15 10:38:59 +08:00
wuzhenghui 3e7892122e feat(esp_hw_support): support lightsleep and deepsleep on esp32h21 2025-09-26 14:02:55 +08:00
Song Ruo Jing e1aabf036a Merge branch 'bugfix/add_usb_phy1_io_support_esp32h4' into 'master'
fix(gpio): add USB PHY1 (USB OTG) pin support for ESP32H4

See merge request espressif/esp-idf!41727
2025-09-17 12:24:13 +08:00
Song Ruo Jing da785a8f71 fix(gpio): add USB PHY1 (USB OTG) pin support for ESP32H4 2025-09-16 11:59:04 +08:00
Song Ruo Jing 24a9cb7dde refactor(dedic_gpio): clean up dedic gpio soc caps 2025-09-16 11:18:10 +08:00
morris 09fce0cf2a Merge branch 'refactor/etm_driver_soc_caps' into 'master'
refactor(etm): clean up soc macros && enhance thread safety

Closes IDF-13634

See merge request espressif/esp-idf!41201
2025-08-21 10:19:19 +08:00
Marek Fiala 9d35d63651 feat(cmake): Update minimum cmake version to 3.22 (whole repository) 2025-08-19 14:44:32 +02:00
morris 661590940a refactor(etm): enhance thread safety and clean up soc macros 2025-08-18 14:58:24 +08:00
Sudeep Mohanty 11b80a7f11 Merge branch 'feat/freertos_in_flash_by_default' into 'master'
feat(freertos): Place FreeRTOS in flash by default

Closes IDF-12695

See merge request espressif/esp-idf!40579
2025-08-15 02:18:57 +02:00
Song Ruo Jing 451cfc91c3 Merge branch 'contrib/github_pr_17241' into 'master'
Refactor: Use enum values when assigning "pull_[up|down]_en" fields of "gpio_config" (GitHub PR)

Closes IDFGH-16192

See merge request espressif/esp-idf!41058
2025-08-11 12:08:16 +08:00
Sudeep Mohanty 26c19928a9 feat(freertos): Place FreeRTOS in flash by default
The following updates have been made in this commit:
- The commit places FreeRTOS code in flash memory by default.
- CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH has been removed.
- CONFIG_FREERTOS_IN_IRAM is unhidden and can be used to restore the
  previous memory placement.
- A test has been added for users to conduct performance impact testing
  based on memory placement configurations.
2025-08-07 19:56:30 +08:00
Darian Leung 5454499877 refactor: Use enum values for gpio pull up/down fields
Ensure that enum values are used When assigning `pull_up_en` and `pull_down_en`
fields of `gpio_config_t`. Helps avoid `invalid conversion` errors when
building those code snippets in C++.
2025-08-07 11:45:11 +08:00
Song Ruo Jing 9a2984b4c0 fix(gpio): fix ESP32 GPIO sleep mode handling
The previous workaround does not work, the backup/restore should apply to RTC IO registers.
Also moved the workaround to sleep_gpio.c to avoid gpio hal using kconfig.
2025-08-05 21:02:09 +08:00
Olivér Remény 9317ecb4ea fix(gpio): Avoid error message when calling reset on an input only pin.
The `gpio_reset_pin` function attempted to enable internal pullup on pins which does not have one. This change adds a guard to `gpio_reset_pin` for calling `gpio_pullup_en` - the same guard that makes `gpio_pullup_en` print the error.
2025-08-04 12:16:31 +08:00
Song Ruo Jing db1b7fc48c fix(ci): add ci test for gpio etm test cases 2025-07-29 21:59:20 +08:00
Song Ruo Jing 63050580f5 feat(lp_io): Add LP_IO support for ESP32H4 2025-07-28 11:17:32 +08:00
C.S.M 5812b19e91 Merge branch 'refactor/gpio_valid_2_soc' into 'master'
refactor(gpio): Move valid gpio_caps macro from driver layer to soc layer

Closes IDF-13564

See merge request espressif/esp-idf!40521
2025-07-18 13:18:46 +08:00
C.S.M 001d01f93a refactor(gpio): Move valid gpio_caps macro from driver layer to hal 2025-07-17 16:54:54 +08:00
Sudeep Mohanty c29f473a78 refactor(esptool_py): Remove elf variable dependencies
This commit updates all test_apps that have dependency on the elf
variable. Such test_apps now fetch the executable target from the build
properties.
2025-07-10 11:26:28 +02:00
morris c4d7b1cfce refactor(uart)!: deprcated esp_rom_uart.h 2025-07-08 18:56:17 +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
Song Ruo Jing 3e2945b595 fix(gpio): remove GPIO_OUTPUT_SET macro for ESP32P4
Use GPIO_OUTPUT_SET led to compilation error

Closes https://github.com/espressif/esp-idf/issues/16050
2025-06-11 20:56:12 +08:00
Song Ruo Jing 60bef64f5c feat(gpio): esp_rom_gpio_connect_in/out_signal now has their hal implementation 2025-06-11 20:41:37 +08:00
morris c63f51dcb3 refactor(drivers)!: remove unnecessary io_loop_back and pull up/down config option 2025-05-23 18:09:53 +08:00
Chen Jichang 91f92b0e57 fix(glithc_filter): only call esp_pm APIs when CONFIG_PM_ENABLE is enabled 2025-05-22 17:38:58 +08:00
Song Ruo Jing abc9c1fd55 test(gpio,gpio_ext,ppa): test with malloc from psram by default 2025-05-15 11:21:06 +08:00
morris 2b4aae2e3a refactor(gpio): public some private GPIO functions
like enable/disable open drain, enable/disable output capability
2025-05-14 10:14:07 +08:00
Song Ruo Jing 6994be3acd fix(gpio): add some detailed error log for gpio_pullup_en and gpio_pulldown_en 2025-04-18 19:03:16 +08:00
Song Ruo Jing ec5176e95a fix(gpio): IO7 is not a LP IO anymore on C5 ECO2 chip 2025-04-18 19:03:08 +08:00
Chen Jichang c34b4eb882 feat(esp32h4): enable ESP32H4 ci build 2025-03-28 14:41:28 +08:00