Commit Graph

493 Commits

Author SHA1 Message Date
Omar Chebib
a79c6f7f67 fix(esp_hw_support): clear reserved interrupts that are not applicable for each target 2024-03-27 16:21:25 +08:00
harshal.patil
9cd10e196b
feat(hal/sha): use RCC atomic block to enable/reset the SHA peripheral 2024-03-27 11:23:30 +05:30
Lou Tianhao
bd4147b5ef fix(ci): add sdkconfig head and change some macro 2024-03-26 19:59:00 +08:00
Lou Tianhao
f5487c72ab change(pm): move the modem_clock-related code outside SOC_PM_SUPPORT_PMU_MODEM_STATE 2024-03-26 19:55:06 +08:00
morris
3bb51ae975 refactor(ldo): remove legacy private ldo driver
as esp-idf has introduced a new public one: esp_ldo_regulator.h

Note, this is not a breaking change as the legacy driver doesn't exist
on any release branch.
2024-03-26 11:36:54 +08:00
morris
cf59c00564 change(mpll): clean up mpll clock acquire with ldo driver 2024-03-25 22:03:49 +08:00
Armando
ec44556a07 feat(sd): added power control driver and implementation layer with ldo 2024-03-25 11:32:56 +08:00
wuzhenghui
bbc8fd5c9c
feat(esp_hw_support): support esp32p4 sleep cpu retention 2024-03-15 18:13:25 +08:00
Mahavir Jain
cd47cf46dc Merge branch 'esp32p4/add_aes_support' into 'master'
feat: add AES support for ESP32-P4

Closes IDF-6519

See merge request espressif/esp-idf!26429
2024-03-15 11:43:22 +08:00
morris
79d8057a8c Merge branch 'feat/rmt_support_esp32c5' into 'master'
Basic RMT driver support on esp32c5

See merge request espressif/esp-idf!29215
2024-03-14 11:52:01 +08:00
Wu Zheng Hui
bb25cc1234 Merge branch 'feature/esp32p4_sleep_support' into 'master'
feat(esp_hw_support): esp32p4 sleep support (Stage 1: support basic pmu sleep function 💤)

Closes IDF-7528 and IDF-7527

See merge request espressif/esp-idf!28196
2024-03-14 10:17:32 +08:00
harshal.patil
e8268d8b6b
feat(hal/aes): use RCC atomic block to enable/reset the AES peripheral 2024-03-13 15:22:07 +05:30
morris
9b8fd65221 feat(rmt): basic driver support on esp32c5 2024-03-13 17:37:47 +08:00
Mahavir Jain
fd6c710b27
fix: cleanup memprot files for C6/H2/P4
There is no separate permission control peripheral in C6/H2/P4.
Memory protection is achieved using built-in PMA/PMP and hence
removing permission control specific files.
2024-03-11 17:10:40 +05:30
wuzhenghui
129bfce02e feat(esp_hw_support): support esp32p4 pll start/stop event callback 2024-03-10 10:51:28 +08:00
wuzhenghui
856f043331 feat(esp_hw_support): add esp32p4 pmu initial support 2024-03-10 10:51:28 +08:00
morris
c952cfb673 feat(gpio): reserve gpio output atomically 2024-03-09 10:33:58 +08:00
Omar Chebib
eeb5e2f080 Merge branch 'refactor/cpu_interrupt_table' into 'master'
refactor(Core System/Interrupts): changed reserved interrupt functions to be now defined per SoC

Closes IDF-5728

See merge request espressif/esp-idf!29020
2024-03-06 11:26:17 +08:00
Wan Lei
3459db1bbb Merge branch 'feat/c6lite_c61_introduce_step1_target' into 'master'
feat(esp32c61): introduce target esp32c61 (1/8) 🌱

See merge request espressif/esp-idf!29238
2024-03-05 11:36:17 +08:00
wanlei
ee02b71f1c feat(esp32c61): introduce target esp32c61 2024-03-01 21:12:25 +08:00
Cao Sen Miao
2b2b3be98f feat(temperature_sensor): Add new support for temperature sensor ETM on ESP32C6/H2 2024-03-01 18:52:39 +08:00
Sudeep Mohanty
e4f167df25 Merge branch 'fix/freertos_optimize_critical_sections' into 'master'
fix(riscv): Updated RISC-V functions to set interrupt threshold for CLIC targets

Closes IDFCI-2033, IDFCI-2034, IDF-8090, and IDF-8117

See merge request espressif/esp-idf!29055
2024-03-01 17:51:14 +08:00
laokaiyao
1b91e84544 feat(esp32c5): add esp32c5 mp target 2024-03-01 10:13:45 +08:00
Sudeep Mohanty
459ff8348f fix(riscv): Added RISC-V functions to set interrupt threshold for CLIC targets
This commit added the RISC-V utility functions to set the interrupt
threshold for CLIC targets by using direct register value writes.
This makes the functions more efficient during run-time.
This is done to improve the critical section enter and exit performance on esp32p4.
2024-02-28 08:51:37 +01:00
Omar Chebib
c1849df791 refactor(esp_hw_support): changed reserved interrupt functions to be now defined per SoC 2024-02-28 15:21:10 +08:00
fl0wl0w
90d1dcfd76 feat(freertos): Introduced new Kconfig option CONFIG_FREERTOS_NUMBER_OF_CORES
This commit replaces the use of portNUM_PROCESSORS and configNUM_CORES
macros in all of ESP-IDF. These macros are needed to realize an SMP
scenario by fetching the number of active cores FreeRTOS is running on.
Instead, a new Kconfig option, CONFIG_FREERTOS_NUMBER_OF_CORES, has been
added as a proxy for the FreeRTOS config option, configNUMBER_OF_CORES.
This new commit is now used to realize an SMP scenario in various places
in ESP-IDF.

[Sudeep Mohanty: Added new Kconfig option CONFIG_FREERTOS_NUMBER_OF_CORES]

Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2024-02-09 09:11:28 +01:00
laokaiyao
ea14b24048 ci(esp32c5): fix the build of the template app 2024-02-05 12:39:35 +08:00
laokaiyao
c0c6af99e9 fix(esp32c5): fixed the lack of crosscore ll on c5 2024-02-05 12:39:35 +08:00
wuzhenghui
0c2f811ca8
feat(esp_hw_support): support gdma register context sleep retention 2024-02-02 11:21:40 +08:00
Wu Zheng Hui
55f04b3326 Merge branch 'feature/clean_up_retention_context_definitions' into 'master'
refactor(esp_hw_support): move sleep retention context definition to soc target folder

Closes PM-10

See merge request espressif/esp-idf!26753
2024-01-24 20:24:02 +08:00
Aditya Patwardhan
4dc2ace0b7
fix(esp_hw_support): Update key manager support
1) Added new Key Manager APIs
    2) Added crypto locking layer for Key Manager
    3) Remove support for deploying known key
    4) Format key manager support
    5) Fix build header error
    6) Updated the key_mgr_types.h file
    7) Added key manager tests
2024-01-23 10:24:39 +05:30
Aditya Patwardhan
5a1726c18c
feat(hal): Update HAL layer for Key manager
1)Added new clk related changes
2024-01-23 10:24:37 +05:30
Aditya Patwardhan
3eabb62850
feat(esp_hw_support): Add support for Key Manager 2024-01-23 10:24:35 +05:30
wuzhenghui
9b3dc69908
refactor(esp_hw_support): move regdma structure defination to soc components 2024-01-23 11:51:44 +08:00
Omar Chebib
102d5bbf72 refactor(riscv): added a new API for the interrupts 2024-01-18 16:36:53 +08:00
Ondrej Kosta
ce388a4111 feat(esp_eth): Added support of internal EMAC for ESP32P4
Refactored internal EMAC DMA access.

Added MPLL acquire to manage access to the MPLL by multiple periphs.
2024-01-16 14:29:25 +01:00
Armando
8f097a4629 feat(csi): added csi bridge share control code 2024-01-16 09:57:52 +08:00
morris
ed8d805554 fix(dw_gdma): write back the link list items after creation 2024-01-15 16:56:28 +08:00
Armando
80e18811db feat(psram): support 200mhz psram, experimental feature for now 2024-01-10 11:52:28 +08:00
morris
ad7b34f258 Merge branch 'test/dw_gdma_psram2sram_memset' into 'master'
test(dw_gdma): add a case to test memset from psram to sram

See merge request espressif/esp-idf!28120
2024-01-09 19:25:23 +08:00
laokaiyao
11e19f40b9 feat(esp32c5): support to build hello world on esp32c5 beta3 2024-01-09 13:11:11 +08:00
morris
002467d0f6 fix(dw_gdma): free the interrupt handle when deleting the channel 2024-01-09 10:20:24 +08:00
Armando (Dou Yiwen)
7f8d0256c2 Merge branch 'change/ldo_id_start_from_1' into 'master'
ldo: make ldo driver unit_id start from 1 (same as datasheet)

See merge request espressif/esp-idf!28318
2024-01-08 16:06:31 +08:00
Armando
1adea4ab66 change(ldo): make ldo driver unit_id same as datasheet
Prior to this commit, we expect passing ldo_unit_t to esp_ldo driver
`ldo_unit` field. And ldo_unit_t will alias the LDO unit to values
starting from 0, e.g. LDO_UNIT_1 is actually value 0.

With this commit, esp_ldo driver `ldo_unit` field will start with 1,
which is aligned with the datasheet. So LDO_UNIT_1 is in value 1,
meanwhile setting 1 to `ldo_unit` will work as well.
2024-01-08 10:52:11 +08:00
Cao Sen Miao
b84434b39d fix(tsens,adc): Fix issue that disable adc will make temperature sensor crash,
Closes https://github.com/espressif/esp-idf/issues/12921
2024-01-05 12:10:30 +08:00
Armando (Dou Yiwen)
dbe1df8cde Merge branch 'feature/esp32p4_sdmmc_on_real_chip' into 'master'
sdmmc: p4 sdmmc on real chip (relies ldo on real chip)

Closes IDF-6502

See merge request espressif/esp-idf!27762
2024-01-05 11:43:30 +08:00
Armando
a9a36512a8 bugfix(dma): fixed wrong esp_dma_is_buffer_aligned result for psram on s3 2024-01-05 09:56:08 +08:00
Armando
2a5343b2e0 change(ldo): added ldo_types.h 2024-01-04 15:34:59 +08:00
Xiao Xufeng
c204f418ef fix(rtc): fixed bbpll not calibrated from bootloader issue 2024-01-04 03:23:20 +08:00
laokaiyao
a48f4760d2 feat(esp32c5): add system related supports 2024-01-02 11:17:11 +08:00
Song Ruo Jing
7f2b85b82b feat(clk): add basic clock support for esp32p4
- Support CPU frequency 360MHz
- Support SOC ROOT clock source switch
- Support LP SLOW clock source switch
- Support clock calibration
2023-12-29 00:37:26 +08:00
Armando
71202c701f change(ldo): do vddpst ldo init in early stage 2023-12-26 11:43:33 +08:00
Armando
27b1e4dc87 feat(mpll): supported mpll configure ll api 2023-12-21 16:26:03 +08:00
Jiang Jiang Jian
73de93d55e Merge branch 'bugfix/wait_tvsl_after_non_pd_top_lightsleep_for_esp32c6' into 'master'
fix(esp_hw_support/sleep): wait flash ready after non-pd_top lightsleep for esp32c6

Closes IDF-6930

See merge request espressif/esp-idf!27726
2023-12-19 14:01:45 +08:00
Lou Tian Hao
fedb3d9f9d Merge branch 'change/change_regdma_power_issue_macro' into 'master'
change(pm): change name SOC_PM_RETENTION_HAS_REGDMA_POWER_BUG

Closes PM-45

See merge request espressif/esp-idf!27934
2023-12-19 11:19:51 +08:00
Lou Tianhao
d8b1f7207a change(pm): change macro SOC_PM_RETENTION_HAS_REGDMA_POWER_BUG 2023-12-15 15:04:06 +08:00
Armando (Dou Yiwen)
30a0d847f3 Merge branch 'feature/esp32p4_base_ldo_support' into 'master'
ldo: new ldo driver on P4

Closes IDF-8808

See merge request espressif/esp-idf!27728
2023-12-15 12:31:17 +08:00
morris
d875d021e1 Merge branch 'feature/gdma_etm_esp32p4' into 'master'
feat(gdma): support ETM sub-driver on esp32p4

See merge request espressif/esp-idf!27719
2023-12-15 12:24:06 +08:00
wuzhenghui
7de2728733 fix(esp_hw_support/sleep): wait flash ready after non-pd_top lightsleep for esp32c6 2023-12-14 08:57:06 +00:00
Armando
9143a9dc90 feature(ldo): ldo driver 2023-12-14 12:46:51 +08:00
morris
bf00021b37 feat(dw_gdma): channel allocator driver 2023-12-12 03:35:05 +00:00
morris
a7577f88bd feat(gdma): support ETM subsystem on esp32p4 2023-12-06 18:02:43 +08:00
Darian
e3191df37a Merge branch 'change/deprecate_legacy_xtensa_include_path' into 'master'
change(xtensa): Deprecate legacy include paths

Closes IDF-7230

See merge request espressif/esp-idf!26725
2023-12-05 15:05:29 +08:00
Darian
cc34c4fc08 Merge branch 'contrib/github_pr_12481' into 'master'
Many places in the ESP_SYSTEM are using CONFIG_FREERTOS_UNICORE instead of CONFIG_ESP_SYSTEM_SINGLE_CORE_MODE (GitHub PR)

Closes IDFGH-11333

See merge request espressif/esp-idf!27435
2023-12-01 19:33:19 +08:00
Darian Leung
2204c8e137 change(xtensa): Deprecate ".../xtensa_api.h" include path
This commit deprecates the "freertos/xtensa_api.h" and "xtensa/xtensa_api.h"
include paths. Users should use "xtensa_api.h" instead.

- Replace legacy include paths
- Removed some unnecessary includes of "xtensa_api.h"
- Replaced some calls with "esp_cpu_..." equivalents
- Add warning to compatibility header
2023-11-30 21:58:52 +08:00
laokaiyao
bb0879b3f8 feat(esp32c5): introduce target esp32c5 2023-11-28 16:14:17 +08:00
fl0wl0w
d149c1b26f Use configuration option instead of in components not related to FreeRTOS
Mergeshttps://github.com/espressif/esp-idf/pull/12481
2023-11-28 07:49:20 +00:00
Wu Zheng Hui
581824d1f2 Merge branch 'feature/reinitialize_icg_map_in_modem_module_enable' into 'master'
fix(esp_hw_support): re-initialize icg map in modem_clock_module_enable

Closes WIFI-6312

See merge request espressif/esp-idf!27168
2023-11-23 11:55:34 +08:00
Jiang Jiang Jian
275a7ec2a2 Merge branch 'fix/esp32c6_sleep_pll_issue' into 'master'
fix(pm): add mac/bb power down/up prepare for fix esp32c6 pll issue

Closes BLERP-105, BLERP-213, and BLERP-234

See merge request espressif/esp-idf!26208
2023-11-22 10:29:48 +08:00
morris
106baac0bc Merge branch 'feature/rmt_receive_partial_callback' into 'master'
feat(rmt): support partial receive if the incoming packet is very long

Closes IDF-6579

See merge request espressif/esp-idf!27033
2023-11-22 06:37:46 +08:00
Lou Tian Hao
cde12242b4 Merge branch 'feature/support_ext1_clear_spec_pins' into 'master'
feat: support ext1 add or remove spec pin for chips which support ext1 wakeup

Closes IDFGH-11440

See merge request espressif/esp-idf!26999
2023-11-21 11:29:33 +08:00
Marius Vikhammer
4bb8f5c577 Merge branch 'feature/remove_esp_spi_g1' into 'master'
refactor(spi): moved spi hw sharing func to hw support

Closes IDF-8503

See merge request espressif/esp-idf!27110
2023-11-21 10:26:55 +08:00
xiaqilin
a0ecd49725 feat(pm): change power up/down register callback name 2023-11-21 10:18:55 +08:00
cjin
e98e291601 fix(pm): switch root clk src to PLL for modem reg opt and added callback 2023-11-21 10:18:32 +08:00
xiaqilin
f428f9d8c0 fix(pm): remove unuse extra_refs related code 2023-11-21 10:18:03 +08:00
xiaqilin
b9baf49782 fix(pm): add mac/bb power down/up prepare for fix esp32c6 pll issue 2023-11-21 10:18:03 +08:00
Lou Tianhao
ea7cfc40ae change(pm/ext1): replace esp_sleep_clear_ext1_wakeup_io by esp_sleep_disable_ext1_wakeup_io 2023-11-20 19:30:50 +08:00
morris
2f72b3578a feat(gdma): distinguish abnormal and normal eof in the gdma event data 2023-11-20 17:25:57 +08:00
Lou Tianhao
8db9f79bd2 change(pm/ext1): replace esp_sleep_set_ext1_wakeup_io by esp_sleep_enable_ext1_wakeup_io 2023-11-20 16:04:01 +08:00
Marius Vikhammer
52e3f09b32 refactor(spi): moved spi hw sharing func to hw support
Common spi functionality for sharing the SPI bus between modules is moved from esp_driver_spi to
a more fitting location in esp_hw_support (shared HW resource control).

This also allows us to decouple the spi_flash driver from esp_driver_spi, removing
esp_driver_spi and esp_ringbuf from G1 builds.
2023-11-20 12:07:54 +08:00
Lou Tianhao
a02f72bb81 change(pm/ext1): replace deprecated ext1 func 2023-11-17 16:20:54 +08:00
Lou Tianhao
cc0e73a11f feat(pm/ext1): support esp_sleep_enable_io_ext1_wakeup and esp_sleep_disable_io_ext1_wakeup
squash! feat(pm/ext1): support esp_sleep_enable_io_ext1_wakeup and esp_sleep_disable_io_ext1_wakeup
2023-11-17 16:20:38 +08:00
wuzhenghui
6661e11203
fix(esp_hw_support): re-initialize icg map in modem_clock_module_enable 2023-11-17 14:05:23 +08:00
wuzhenghui
783059a592 fix(riscv): supports 1 byte and larger than 64byte range watchpoint setting 2023-11-16 18:11:57 +08:00
Jiang Jiang Jian
97e33fbb75 Merge branch 'bugfix/fix_lightsleep_current_leakage_on_usj_pad' into 'master'
fix(esp_hw_support): fix lightsleep current leakage on usb pad

Closes IDF-6154 and PM-18

See merge request espressif/esp-idf!26470
2023-11-14 11:17:29 +08:00
Marius Vikhammer
d293ad94bd feat(pm): removed dependency on driver component 2023-11-13 15:49:12 +08:00
wuzhenghui
0ab0d2182e fix(esp_hw_support): fix lightsleep current leakage on usb-phy controlled pad 2023-11-11 13:00:55 +08:00
Wu Zheng Hui
a9ea49cba2 Merge branch 'bugfix/clear_ulp_wake_intr_in_wake_source_enable' into 'master'
fix(esp_hw_support): clear all type ULP wakeup intr status at ulp wakeup source enable

Closes PM-14

See merge request espressif/esp-idf!26674
2023-11-07 16:58:38 +08:00
morris
d78750306d refactor(emac): use clock_output driver for configuring RMII reference clock 2023-10-31 14:24:48 +08:00
wuzhenghui
18f984fd9c fix(esp_hw_support): clear all type ULP wakeup intr status at ulp wakeup source enable 2023-10-30 11:18:01 +08:00
Lou Tianhao
13a405a32b change(pm): Change sleep callback implement 2023-10-23 08:13:47 +00:00
wuzhenghui
7195bf19df feat(esp_hw_support): support one-to-many signal-gpio mapping output 2023-10-20 14:55:06 +08:00
wuzhenghui
6a436286dc feat(esp_hw_support): add api to gpio driver to support output internal clock on GPIO 2023-10-20 14:35:26 +08:00
Armando (Dou Yiwen)
471f1f61ae Merge branch 'feature/support_sdmmc_ver2_on_p4' into 'master'
sdmmc: esp32p4 support

Closes IDF-6502

See merge request espressif/esp-idf!25405
2023-10-19 22:00:40 +08:00
Jiang Jiang Jian
a94bb6201b Merge branch 'bugfix/deep_sleep_force_to_sleep' into 'master'
fix(esp_hw_support): Return deep sleep APIs to the original behavior

Closes IDFGH-11192, PM-11, and IDF-7600

See merge request espressif/esp-idf!26341
2023-10-19 14:27:02 +08:00
Armando
7879b29b0c feat(dma): added a helper api to check buffer is dma aligned 2023-10-18 11:57:55 +00:00
Michael (XIAO Xufeng)
2308292ca3 Merge branch 'bugfix/revert_pvt' into 'master'
Revert "feat(volt): chip auto adjust volt for esp32c6 & esp32h2"

See merge request espressif/esp-idf!26425
2023-10-16 12:53:07 +08:00
Mahavir Jain
dbc33ca7aa Merge branch 'feature/add_intr_priority_config_option' into 'master'
feat(mbedtls): Add config for interrupt priority in AES and RSA

Closes IDF-7963 and IDF-7964

See merge request espressif/esp-idf!26190
2023-10-16 11:33:03 +08:00
Mahavir Jain
6b62065b92 Merge branch 'fix/crypto_periphs_use_rcc_atomic_blocks' into 'master'
Use rcc atomic blocks to enable/reset crypto peripherals

See merge request espressif/esp-idf!25811
2023-10-13 22:37:58 +08:00
Xiao Xufeng
28ba080c5e Revert "feat(volt): chip auto adjust volt for esp32c6 & esp32h2"
This reverts commit b221f87e00.
2023-10-12 14:51:54 +08:00