Mahavir Jain
8203d40fc3
esp32h2: add support for SHA peripheral
...
Closes IDF-6275
2023-01-30 10:08:58 +05:30
Guillaume Souchere
a5d6f62e7e
heap: Prevent alloc from IRAM to call dram_alloc_to_iram() on esp32c6 target
...
Since DRAM and IRAM are superposed on esp32c6 it is not necessary to convert a freshly allocated
DRAM addr to its IRAM equivalent when MALLOC_CAP_EXEC is passed to heap_caps_malloc(). Instead,
proceed with a default allocation since the address returned by multi_heap_malloc() already belongs
to the IRAM region.
Applies for esp32c6 and every boards with superposed DRAM and IRAM addresses.
2023-01-23 07:42:20 +01:00
Song Ruo Jing
2c9aa4559c
clk_tree: Add a general API to get the frequency of different clocks
...
Add basic clk_tree driver and hal implementation.
2023-01-17 11:30:24 +08:00
Armando (Dou Yiwen)
d1b8da74d8
Merge branch 'refactor/improve_adc_power_maintanance' into 'master'
...
adc: improve adc power maintanance
Closes IDF-6114 and IDF-6318
See merge request espressif/esp-idf!21151
2023-01-12 20:30:36 +08:00
morris
f7c3d791a2
Merge branch 'feature/systimer_support_esp32h2' into 'master'
...
systimer: assign counter and alarm in esp_hw_support
Closes IDF-6484, IDF-5323, and IDF-6230
See merge request espressif/esp-idf!21984
2023-01-12 11:01:17 +08:00
morris
1f3507eac0
Merge branch 'feature/gdma_support_h2' into 'master'
...
gdma: support esp32h2
Closes IDF-6222 and IDF-6238
See merge request espressif/esp-idf!21932
2023-01-11 14:04:14 +08:00
morris
6c1d98d556
systimer: assign counter and alarm in esp_hw_support
2023-01-10 17:05:49 +08:00
jiangguangming
51ec91c637
add example deep sleep wake stub
2023-01-10 17:03:50 +08:00
morris
d0b7f3214a
gdma: correct the dma trigger of uart
...
GDMA trigger actually is not assigned to UART controller, but for UHCI
controller
2023-01-10 16:37:01 +08:00
Armando
5be3c21cfc
adc: improve power logic
2023-01-09 17:10:04 +08:00
Armando
b46cfd15a2
mspi: move timing tuning to esp_hw_support
2023-01-06 14:41:20 +08:00
morris
cb7e957cc4
Merge branch 'feature/io_mux_use_pll80_c6' into 'master'
...
io_mux: support change clock source to PLL_F80M
Closes IDF-6342 and IDF-6345
See merge request espressif/esp-idf!21613
2022-12-29 22:06:52 +08:00
morris
672ac58ad5
io_mux: can set different clock source
2022-12-29 14:46:16 +08:00
Cao Sen Miao
4713a9a7f2
ESP32H2: Introduce new chip target esp32h2, hello_world example supported
2022-12-29 12:29:14 +08:00
Li Shuai
63af1e9631
modem clock(driver): implemented the modem clock driver for esp32c6
2022-12-27 21:31:59 +08:00
wuzhenghui
aa20825659
soc_caps: rename ESP_PD_DOMAIN_RTC8M to ESP_PD_DOMAIN_FOSC
2022-12-27 21:31:21 +08:00
Li Shuai
17f9285524
esp32c6: add SOC_MODEM_CLOCK_IS_INDEPENDENT soc_cap and more pd_caps
2022-12-27 21:31:21 +08:00
Mahavir Jain
078835e358
Merge branch 'contrib/github_pr_10391' into 'master'
...
[Docs] specify Digital Signature byte order, and esp_ds_sign() clarification (GitHub PR)
Closes IDFGH-8978
See merge request espressif/esp-idf!21712
2022-12-21 13:59:00 +08:00
Chip Weinberger
d43dd9246f
[Docs] specify Digital Signature byte order, and esp_ds_sign() clarification
2022-12-19 21:30:03 -08:00
morris
7064b668c6
Merge branch 'feature/etm_api_update' into 'master'
...
etm: introduce config structure for event/task new functions
See merge request espressif/esp-idf!21483
2022-12-12 13:12:09 +08:00
Jakob Hasse
b36c0e823f
Merge branch 'feature/linux_esp_hw_support' into 'master'
...
linux target: add support for building esp_hw_support, soc and hal components for linux target
See merge request espressif/esp-idf!21502
2022-12-12 09:59:31 +08:00
Marius Vikhammer
4ddbaa4166
linux target: add support for building esp_hw_support, soc and hal components for linux target
2022-12-09 13:59:39 +08:00
Song Ruo Jing
9402ab427b
ledc: Add basic support for esp32c6
2022-12-07 18:40:50 +08:00
morris
5c06e9cf40
etm: update etm event task new API
2022-12-07 15:43:20 +08:00
Sachin Parekh
2a01e66b25
esp32s3/memprot: Set permission for Icache region
2022-11-30 13:46:53 +00:00
Aditya Patwardhan
22ad083ccd
Merge branch 'refactor/merge_esp_ds_code_between_targets' into 'master'
...
Merge esp_ds and hmac_hal layers for different targets
Closes IDF-3803, IDF-6144, and DOC-3973
See merge request espressif/esp-idf!21187
2022-11-25 03:59:18 +08:00
Aditya Patwardhan
aa27abb39b
esp_hw_support/esp_ds: Improve documentation for esp_ds_sign and esp_ds_encrypt_params API
2022-11-24 16:03:30 +05:30
Aditya Patwardhan
ac1f4a263b
esp_hw_support: Merge esp_ds.h file for different targets into one
2022-11-24 16:03:30 +05:30
C.S.M
28b2deaf24
Merge branch 'feature/add_target_esp32h2' into 'master'
...
ESP32-H2: Introduce new target for ESP32H2
See merge request espressif/esp-idf!21190
2022-11-24 18:31:19 +08:00
morris
356c6bb528
gdma: support etm extension
2022-11-23 15:32:34 +08:00
morris
fb26d0e11f
etm: added etm channel allocator
2022-11-23 15:31:33 +08:00
Cao Sen Miao
86aa4df5b5
ESP32-H2: Introduce new target for ESP32H2
2022-11-23 14:38:05 +08:00
Konstantin Kondrashov
55578295db
Merge branch 'feature/api_to_define_user_mac_addres' into 'master'
...
esp_hw_support: Adds APIs to define user own MAC addresses without generation from the base MAC address
Closes IDFGH-5534 and IDFGH-8022
See merge request espressif/esp-idf!21036
2022-11-17 15:26:35 +08:00
KonstantinKondrashov
244cf14ea8
esp_hw_support: Adds APIs to define user own MAC addresses without generation from the base MAC address
...
Closes https://github.com/espressif/esp-idf/pull/7261
Closes https://github.com/espressif/esp-idf/issues/9531
2022-11-16 19:23:10 +08:00
Jakob Hasse
7fd27f338a
Merge branch 'bugfix/esp_ds_encrypt_param_doc' into 'master'
...
esp_ds: remove requirement of aligned and DMA capable buffer from docs
See merge request espressif/esp-idf!21012
2022-11-14 23:17:35 +08:00
Song Ruo Jing
d0a7dc3e9f
gpio: Fix IO hold function related problems
...
1. Fix deep sleep wakeup IOs can not be unhold issue
2. Correct hold related APIs' description
3. Fix gpio_force_hold_all API
docs: Add GPIO wakeup source to sleep_modes doc for ESP32C3 and C2
2022-11-11 20:39:04 +08:00
Mahavir Jain
b168ba98ae
esp_ds: remove requirement of aligned and DMA capable buffer
...
API `esp_ds_encrypt_params` do not require aligned and DMA capable
output buffer for C3/S3/H2/C6. Implementation in ROM code has been
updated to remove usage of DMA mode.
This commit updates the API documentation.
2022-11-09 15:24:36 +05:30
laokaiyao
8677216576
esp32h2: renaming esp32h2 to esp32h4
2022-11-08 17:05:33 +08:00
Marius Vikhammer
1d5d624605
intr_alloc: fixed freed interrupt sources not being able to be allocated again with different flags
...
Mark the vector descriptor source as freed.
2022-11-04 06:39:00 +00:00
Armando
260ee86c37
rtc: united sar peripheral control
2022-10-27 16:51:25 +08:00
Aditya Patwardhan
f9565fd31d
soc/esp_ds.h: Unify esp_ds error codes for all targets
2022-10-27 11:09:25 +05:30
Aditya Patwardhan
a5f1820120
esp_hw_support: Merge esp_hmac.h file for different targets into one
2022-10-27 10:59:54 +05:30
Jiang Jiang Jian
f191b2f034
Merge branch 'bugfix/fix_xtal_related_rtc_params_for_esp32' into 'master'
...
esp32/rtc: fix xtal unstable in some cases when sleep
Closes ESPCS-869
See merge request espressif/esp-idf!20425
2022-10-26 15:57:48 +08:00
jingli
b903a2253b
esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep
2022-10-11 12:11:28 +08:00
jingli
0a44d09f4f
esp32/rtc: fix xtal unstable in some cases when sleep
...
1. add xtal buf wait to fix high temperature restart issue
2. add min sleep value to fix xtal stop due to too short sleep time issue
2022-10-09 19:58:58 +08:00
wuzhenghui
fca7d70e05
esp32c6: add minimal ci support
...
- enable build_template_app
- enable check public headers
- enable g0 components dependency check
2022-09-26 20:32:13 +08:00
wuzhenghui
fbc19fad70
memory_utils: Modify esp_ptr_in_diram_iram to be compatible with esp32c6
2022-09-26 20:32:13 +08:00
wuzhenghui
23e37393a7
esp32c6: add esp_hw_support
2022-09-26 20:32:13 +08:00
Linda
4723974419
docs: update gpios serving as wakeup source in esp32s2 and esp32s3
2022-09-16 11:23:53 +00:00
wuzhenghui
82ffe7e438
replacing reset by register operations with ROM interfaces to decouple the effects of register name changes
2022-08-31 01:59:36 +00:00
Michael (XIAO Xufeng)
bc0ccd9b6d
Merge branch 'bugfix/rtc_periph_ulp_touch' into 'master'
...
sleep_modes: allow using touch/ULP with RTC_PERIPH domain (including EXT0 wakeup source)
Closes IDF-4528
See merge request espressif/esp-idf!19209
2022-08-25 12:27:29 +08:00
Michael (XIAO Xufeng)
aff90b9853
sleep_modes: allow using touch/ULP with RTC_PERIPH domain (including EXT0 wakeup source)
2022-08-25 12:27:28 +08:00
Marius Vikhammer
7a900bad7f
docs: fix documentation wrongly stating ESP_SLEEP_WAKEUP_GPIO is light sleep only
...
ESP_SLEEP_WAKEUP_GPIO is also a valid deep sleep wakeup cause on targets
with SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP
Closes https://github.com/espressif/esp-idf/issues/9567
2022-08-23 16:16:43 +08:00
songruojing
304a8f142d
esp32c6: introduce the target
...
Add esp32c6 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32c6`
2022-08-19 11:13:02 +08:00
Darian Leung
a73dd07d12
esp_hw_support: Fix esp_light_sleep_start() deadlock
...
esp_light_sleep_start() will stall the other CPU via esp_ipc_isr_stall_other_cpu(). After stalling the other CPU,
will call esp_clk_... API which themselves take locks. If the other stalled CPU is holding those locks, this will
result in a deadlock.
This commit adds a workaround calling esp_clk_private_lock() to take the lock before stalling the other CPU.
2022-08-10 18:52:32 +08:00
jingli
ee3423834e
kconfig: refactor xtal freq kconfig to common configuration item
2022-08-05 19:12:29 +08:00
Jiang Jiang Jian
b885499c74
Merge branch 'refactor/move_common_adc_part_to_hw_support' into 'master'
...
esp_adc: move esp_adc out of g1 dependency list
Closes IDF-5637
See merge request espressif/esp-idf!19159
2022-08-01 15:39:45 +08:00
wuzhenghui
7cb9304b65
Clean IRAM and DRAM address space conversion macros
2022-07-29 17:07:39 +08:00
Armando
5e6a16380a
esp_adc: move adc common hw related code into esp_hw_support
2022-07-28 03:49:48 +00:00
morris
5e50ec1d66
systimer: add helper functions to convert between tick and us
2022-07-25 16:08:52 +08:00
Darian
c8ee369a7c
Merge branch 'feature/deprecate-old-cpu-api' into 'master'
...
HAL: Deprecate old CPU/SoC/Interrupt Controller HAL API
Closes IDF-4919 and IDF-5032
See merge request espressif/esp-idf!18987
2022-07-23 00:37:33 +08:00
morris
741b031e83
soc: added SOC_TOUCH_SENSE_SUPPORTED macro
2022-07-22 00:12:36 +00:00
Guillaume Souchere
0bac33ed41
esp_system: Remove deprecate section from esp_cpu.h
...
- Remove esp_cpu_in_ocd_mode() from esp_cpu.h. Users should call esp_cpu_dbgr_is_attached() instead.
- Remove esp_cpu_get_ccount() from esp_cpu.h. Users should call esp_cpu_get_cycle_count() instead.
- Remove esp_cpu_set_ccount() from esp_cpu.h. Users should call esp_cpu_set_cycle_count() instead.
- Other IDF components updated to call esp_cpu_dbgr_is_attached(), esp_cpu_get_cycle_count() and esp_cpu_set_cycle_count() as well.
2022-07-22 00:06:06 +08:00
Guillaume Souchere
dcae121d80
hal: Deprecate soc_hal.h and soc_ll.h interface
...
This commit marks all functions in soc_hal.h and soc_ll.h as deprecated.
Users should use functions from esp_cpu.h instead.
Also added missing wrap funcions for esp_cpu_stall() in test_panic.c files.
2022-07-22 00:06:06 +08:00
Guillaume Souchere
6005cc9163
hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces
...
This commit marks all functions in interrupt_controller_hal.h, cpu_ll.h and cpu_hal.h as deprecated.
Users should use functions from esp_cpu.h instead.
2022-07-22 00:06:06 +08:00
Darian Leung
781d06af73
esp_hw_support: Remove compare_set.h API
...
This function removes the following legacy atomic CAS functions:
From compare_set.h (file removed):
- compare_and_set_native()
- compare_and_set_extram()
From portmacro.h
- uxPortCompareSet()
- uxPortCompareSetExtram()
Users should call esp_cpu_compare_and_set() instead as this function hides the details
of atomic CAS on internal and external RAM addresses.
Due to the removal of compare_set.h, some missing header includes are also fixed in this commit.
2022-07-22 00:06:06 +08:00
Darian Leung
d37fa7e244
esp_hw_support: Update spinlocks to use esp_cpu_compare_and_set()
...
esp_cpu_compare_and_set() abstracts the atomic compare-and-set instruction by
hiding the details of whether the target variable is in internal or external
RAM. This commit updates "spinlocks.h" as follows:
- esp_cpu_compare_and_set() is now called instead of "compare_set.h"
- Refactored spinlock logic to be more optimized and have more stringent sanity checks
2022-07-22 00:06:06 +08:00
Darian Leung
64117a0c59
esp_system: Fix esp_cpu_compare_and_set()
...
This commit fixes esp_cpu_compare_and_set() in the following ways
- Removed call to esp_ptr_external_ram() as it incurred > 80 CPU cycles (due to multiple nested
function calls, and those functions not being in IRAM). We now check manually if the pointer
is in external RAM for increased speed.
- Fixed infinite wait when attempting to get the external_ram_cas_lock. The function should
return immediatley if any part of the compare and set call fails.
- The preprocessor conditions of esp_cpu_compare_and_set() to depend on CONFIG_SPIRAM instead
of SOC_SPIRAM_SUPPORTED. Even if the target supports SPIRAM, we only need the external RAM
compare and set feature if SPIRAM is enabled.
Also fixed incorrect inclusion of esp_intr_alloc.h in esp_cpu.h
2022-07-22 00:06:06 +08:00
Ivan Grokhotkov
02f28ef32a
Merge branch 'bugfix/esp_error_check_func_addr' into 'master'
...
esp_err: two minor issues
Closes IDFGH-7530
See merge request espressif/esp-idf!18665
2022-07-14 04:14:16 +08:00
Jiang Jiang Jian
b610b47a83
Merge branch 'feature/esp32s3_memprot_additional_improvements' into 'master'
...
[System/Security] Memprot after-merge improvements (v5.0)
Closes IDF-5263 and IDF-5208
See merge request espressif/esp-idf!18893
2022-07-13 15:48:20 +08:00
Ivan Grokhotkov
ca7c9947fc
esp_system: fix address printed by ESP_ERROR_CHECK
...
...to point to the calling function, not to _esp_error_check_failed.
2022-07-12 17:01:47 +02:00
Marius Vikhammer
6cc871d793
Merge branch 'feature/ulp_riscv_adc' into 'master'
...
ulp-riscv: add support for using ADC as well as an example show-casing it.
Closes IDFGH-7564 and IDF-1714
See merge request espressif/esp-idf!18767
2022-07-11 12:30:31 +08:00
Marius Vikhammer
e8b5096f52
ulp-riscv: add support for using ADC as well as an example show-casing it.
2022-07-11 09:31:22 +08:00
Martin Vychodil
0c87ae2a91
System/Security: Memprot API unified (ESP32S3)
...
Added missing features and improvements
2022-07-09 22:57:51 +02:00
Michael (XIAO Xufeng)
a58362a429
Merge branch 'feature/efuse_rev_major_minor' into 'master'
...
efuse: Adds major and minor versions
See merge request espressif/esp-idf!18255
2022-07-07 11:48:54 +08:00
Marius Vikhammer
cf41c255bb
Merge branch 'bugfix/cache_disabled_log_c3' into 'master'
...
esp_hw_support: always inline cpu_hal_set_vecbase to avoid issues at -O0
See merge request espressif/esp-idf!18630
2022-07-06 09:55:20 +08:00
KonstantinKondrashov
0f8ff5aa15
efuse: Adds major and minor versions and others
2022-07-05 14:38:27 +08:00
Martin Vychodil
ee9aa9a302
System/Security: fix missing checks for CPU-count sensitive Memprot APIs (ESP32S3)
...
Some of the Memory Protection (internal) API functions dealing with per-CPU operations were missing appropriate handling of the CPU count actually configured by CONFIG_FREERTOS_UNICORE. The flaw was fixed across all the places found in the code as the issue was of general type
2022-07-02 20:12:56 +00:00
Aditya Patwardhan
c6fe3ba7c6
esp_hmac: Fix documentation for API and Programming Guide
2022-06-28 12:47:28 +00:00
morris
7fd9a91034
dma: move from driver to hw_support
2022-06-28 14:17:12 +08:00
Marius Vikhammer
a8e9c6b8b2
esp_hw_support: always inline cpu_hal_set_vecbase
2022-06-28 05:53:27 +00:00
Cao Sen Miao
2c0651a671
Add regi2c enable/disable reference count
2022-06-23 15:36:44 +08:00
Marius Vikhammer
7e60e07a0a
Merge branch 'feature/esp8684_sha' into 'master'
...
mbedtls: enable hw support for SHA on C2
Closes IDF-3830 and IDF-5141
See merge request espressif/esp-idf!18531
2022-06-23 14:18:49 +08:00
Marius Vikhammer
f4c79687f8
SHA: added hardware support for SHA on C2.
2022-06-23 11:01:16 +08:00
Martin Vychodil
339fcbf14d
System/Security: Memprot API unified (ESP32S3)
...
Unified Memory protection API for all PMS-aware chips - ESP32S3 port
2022-06-20 02:36:44 +00:00
Armando (Dou Yiwen)
0b80546f8e
Merge branch 'feature/new_esp_psram_component' into 'master'
...
esp_psram: new esp psram component
Closes IDF-4318, IDF-4382, IDF-4841, and IDFGH-7192
See merge request espressif/esp-idf!18050
2022-06-15 19:16:56 +08:00
Jiang Jiang Jian
20e5a989a2
Merge branch 'feature/esp32c2_support_ble_sleep' into 'master'
...
Support ESP32C2 BLE modem sleep and lightsleep
See merge request espressif/esp-idf!18432
2022-06-15 15:39:55 +08:00
laokaiyao
621d0aa942
i2s: Introduced a brand new driver
2022-06-15 10:29:06 +08:00
Darian
e213e66ba3
Merge branch 'refactor/esp_hw_support_cpu' into 'master'
...
esp_hw_support: Add new esp_cpu.h abstraction
Closes IDF-4769
See merge request espressif/esp-idf!17091
2022-06-14 21:11:30 +08:00
zwj
fd90341138
support ble modem sleep and light sleep
2022-06-14 19:52:50 +08:00
Armando
38e5043ae8
esp_psram: new psram component
2022-06-14 15:44:27 +08:00
Darian Leung
a8a3756b38
hal: Route CPU and Interrupt Controller HAL/LL to esp_cpu calls
...
This commit makes changes to cpu_ll.h, cpu_hal.h, and interrupt_controller_hal.h:
- Moved to esp_hw_support in order to be deprecated in the future
- HAL/LL API now route their calls to esp_cpu.h functions instead
Also updated soc_hal.h as follows:
- Removed __SOC_HAL_..._OTHER_CORES() macros as they dependend on cpu_hal.h
- Made soc_hal.h and soc_ll.h interfaces always inline, and removed soc_hal.c.
This commit also updates the XCHAL_ERRATUM_572 workaround by
- Removing it's HAL function and invoking the workaround it directly the bootloader
- Added missing workaround for the ESP32-S3
2022-06-14 14:40:03 +08:00
Darian Leung
61eb7baa6b
esp_hw_support: Add esp_cpu.h abstraction and API
...
This commit updates the esp_cpu.h API. The new API presents a new
abstraction of the CPU where CPU presents the following interfaces:
- CPU Control (to stall/unstall/reset the CPU)
- CPU Registers (to read registers commonly used in SW such as SP, PC)
- CPU Interrupts (to inquire/allocate/control the CPUs 32 interrupts)
- Memory Port (to configure the CPU's memory bus for memory protection)
- Debugging (to configure/control the CPU's debugging port)
Note: Also added FORCE_INLINE_ATTR to the DoxyFile in order to pass doc
builds for esp_cpu.h
2022-06-14 14:30:58 +08:00
songruojing
c8752cee6a
clk_tree: Refactor rtc_clk.c by adding HAL layer for clock subsystem
2022-06-13 17:47:50 +08:00
Armando
44f771c713
psram: support s3 copy flash to psram
2022-06-10 10:39:29 +08:00
Marius Vikhammer
486316f222
spinlock: fixed spinlocks not working on S3 if placed in PSRAM
...
The compare and set instruction (S32C1I) cannot be used when
lock is not in internal memory.
Closes https://github.com/espressif/esp-idf/issues/9120
2022-06-08 14:31:16 +08:00
Cao Sen Miao
895a3e1bb2
esp_intr: Split RTC interrupt, making some of signals can be triggered with cache disabled
2022-06-02 10:38:55 +08:00
KonstantinKondrashov
ac4c7d99fe
dport: Move DPORT workaround to G0
2022-05-31 13:44:18 +08:00
jingli
93a5087e58
add PM related soc caps about power down rtc slow/fast mem
...
Supporting rtc slow/fast mem does not mean supporting
rtc slow/fast mem power down.
2022-05-30 15:26:50 +08:00
Marius Vikhammer
0687daf2c8
kconfig: move remaining kconfig options out of target component
...
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
Marius Vikhammer
c8617fe965
docs: fix all doxygen warnings
...
Doxygen warnings would previously not result in a failed pipeline.
Fixed this as well as all current warnings.
2022-05-12 14:50:03 +08:00
zlq
6336f8191e
C2 rtc code
2022-05-09 17:50:54 +08:00
morris
9ab4abfb46
hw_support: move rtc_ctrl from driver to hw_support
2022-04-29 14:28:09 +08:00
Ivan Grokhotkov
871375cae3
Merge branch 'bugfix/bootloader_support_public_req' into 'master'
...
esp_hw_support: remove public dependency on bootloader_support
See merge request espressif/esp-idf!17792
2022-04-27 17:04:07 +08:00
Marius Vikhammer
45c1d1cba2
Merge branch 'feature/move_target_kconfig_2' into 'master'
...
system: move kconfig options out of target component
See merge request espressif/esp-idf!17321
2022-04-24 13:29:43 +08:00
Marius Vikhammer
d2872095f9
soc: moved kconfig options out of the target component.
...
Moved the following kconfig options out of the target component:
* CONFIG_ESP*_DEFAULT_CPU_FREQ* -> esp_system
* ESP*_REV_MIN -> esp_hw_support
* ESP*_TIME_SYSCALL -> newlib
* ESP*_RTC_* -> esp_hw_support
Where applicable these target specific konfig names were merged into
a single common config, e.g;
CONFIG_ESP*_DEFAULT_CPU_FREQ -> CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ
2022-04-21 12:09:43 +08:00
Armando
f8249550f8
psram: support .bss on psram on esp32s3
2022-04-19 19:48:00 +08:00
Ivan Grokhotkov
85cb079838
esp_hw_support: remove public dependency on bootloader_support
...
In c4bcf111
, soc_memory_types.h header was moved from soc to
esp_hw_support. Since some of the functions are also used in
bootloader and because esp_hw_support is not part of the bootloader
build, part of the functions were moved into bootloader_support.
To make these functions available to the app, bootloader_support was
added as a public dependency of esp_hw_support.
Since esp_hw_support is in common requirements list, this has added
bootloader_support as a public requirement to every component in the
build. Adding new public requirements outside of common components
is undesirable, since components may accidentally include headers
from bootloader_support without explicitly declaring it as a
requirement.
This commit reverts this addition. Until a better solution is found,
some part of esp_memory_utils.h is duplicated into
bootloader_memory_utils.h. A CI check is added to make sure these
files stay in sync.
2022-04-16 10:50:12 +02:00
Armando
c4bcf1117c
esp_hw_support: move soc_memory_types.h helper functions into esp_hw_support
2022-04-08 11:46:10 +08:00
Michael (XIAO Xufeng)
f3adbf9953
esp_phy: use spinlock to avoid regi2c access conflicts
2022-04-01 10:49:29 +08:00
Marius Vikhammer
36b83fcb98
Merge branch 'docs/cpp_function_ref_fixes' into 'master'
...
docs: fix broken references to misc API functions and types.
Closes IDF-3184 and DOC-2806
See merge request espressif/esp-idf!17569
2022-03-31 16:22:23 +08:00
morris
29e9b5b46a
hw_support: move periph_ctrl from driver to hw_support
2022-03-29 11:53:31 +08:00
Marius Vikhammer
a6543f0d21
docs: fix broken references to misc API functions and types.
2022-03-27 16:46:57 +08:00
Mahavir Jain
f7fc3e2d88
esp_hw_support: cleanup crypto lock APIs for ESP32-C2
2022-03-22 02:06:30 +00:00
Michael (XIAO Xufeng)
d5bdf95580
hw_support: fixed regi2c not protected by lock on ESP32S2
2022-03-13 00:24:08 +08:00
Sudeep Mohanty
a9fda54d39
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
...
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Omar Chebib
96b362d1da
RTC WDT: Use target name instead of caps for rtc wdt
2022-03-03 13:47:22 +08:00
Omar Chebib
dbba26643f
RTC WDT: refactor code to remove duplicated code
2022-03-03 13:47:22 +08:00
morris
ef00bd59dc
esp_rom: extract int matrix route and cpu ticks getter
2022-02-09 13:52:20 +08:00
Aditya Patwardhan
bb7be628a0
Digital Signature (ds):) Update the documentation for esp_ds_sign and
...
esp_ds_start_sign with additional information.
ii) Updated the DS docs for signature calculation.
Closes https://github.com/espressif/esp-idf/issues/8242
2022-02-07 12:44:06 +08:00
laokaiyao
cf049e15ed
esp8684: rename target to esp32c2
2022-01-19 11:08:57 +08:00
Armando
7240ad2b3a
psram: refactor spiram.c on esp32s2
2022-01-13 11:07:57 +08:00
morris
113cbb88a6
hw_support: remove deprecated header files
2022-01-04 14:16:17 +08:00
Sudeep Mohanty
6a2a6e4220
Merge branch 'feature/remove-depricated-cpu-util-functions' into 'master'
...
esp_hw_support: Removed deprecated CPU util functions
Closes IDF-2868
See merge request espressif/esp-idf!16391
2021-12-29 16:44:17 +00:00
laokaiyao
4f28b33bbc
apll: add lock for apll
2021-12-29 10:13:13 +08:00
Sudeep Mohanty
e22b4007d3
esp_hw_support: Removed deprecated CPU util functions
...
The following files were deleted:
- components/esp_hw_support/include/soc/cpu.h
- components/soc/esp32s3/include/soc/cpu.h
The following functions are deprecated:
- get_sp()
The following functions declared in soc/cpu.h are now moved to esp_cpu.h:
- esp_cpu_configure_region_protection()
The following functions declared in soc/cpu.h are now moved to components/xtensa/include/esp_cpu_utils.h:
- esp_cpu_process_stack_pc()
All files with soc/cpu.h inclusion are updated to include esp_cpu.h instead.
Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2021-12-28 16:58:37 +05:30
Martin Vychodil
dd938eb952
System/Security: Memprot API unified (ESP32C3)
...
Unified Memory protection API for all PMS-aware chips (ESP32C3)
Closes JIRA IDF-3849
2021-12-21 01:50:36 +01:00
Armando
9a6f894046
psram: add octal psram ECC feature
2021-12-13 20:24:52 +08:00
Cao Sen Miao
eddc196081
esp_clk: refactor target/clk.h to private/esp_clk.h
2021-11-26 14:56:30 +08:00
Darian Leung
9b3796d2f1
freertos: Add portTRY_ENTRY_CRITICAL() and deprecate legacy spinlock fucntions
...
Add TRY_ENTRY_CRITICAL() API to all for timeouts when entering critical sections.
The following port API were added:
- portTRY_ENTER_CRITICAL()
- portTRY_ENTER_CRITICAL_ISR()
- portTRY_ENTER_CRITICAL_SAFE()
Deprecated legacy spinlock API in favor of spinlock.h. The following API were deprecated:
- vPortCPUInitializeMutex()
- vPortCPUAcquireMutex()
- vPortCPUAcquireMutexTimeout()
- vPortCPUReleaseMutex()
Other Changes:
- Added portMUX_INITIALIZE() to replace vPortCPUInitializeMutex()
- The assembly of the critical section functions ends up being about 50 instructions longer,
thus the spinlock test pass threshold had to be increased to account for the extra runtime.
Closes https://github.com/espressif/esp-idf/issues/5301
2021-11-22 13:28:39 +08:00
Simon
197d6c05b6
Merge branch 'feature/support_new_psram' into 'master'
...
PSRAM: Add ESP32-D0WDR2-V3 support
Closes IDF-4308
See merge request espressif/esp-idf!15875
2021-11-15 03:43:59 +00:00
Cao Sen Miao
ce1ee3d8ae
psram: add ESP32-D0WD-R2-V3 support
2021-11-12 13:52:24 +08:00
Shang Zhou
1669504614
docs: Update punctuation and syntax error for esp_err_tesp_sleep_enable_ext1_wakeup
2021-11-11 17:25:45 +08:00
Cao Sen Miao
3934e24d22
ESP8684: add spi_flash, efuse, hw_support support
2021-11-06 17:33:44 +08:00
Jiang Jiang Jian
f5ae8b0533
Merge branch 'feature/ledc_use_rtc8m_or_xtal_lightsleep' into 'master'
...
support RTC8M and XTAL power domain in light sleep mode
Closes IDF-3419
See merge request espressif/esp-idf!15152
2021-09-27 04:02:29 +00:00
Li Shuai
b59902f4d1
Merge branch 'bugfix/esp32s3_lightsleep_psram_leakage_current' into 'master'
...
fix SPIRAM leakage when its CS pin has no hardware pullup
See merge request espressif/esp-idf!14730
2021-09-16 04:07:58 +00:00
chenjianqiang
9b53e18c44
add flash and PSRAM CS IO acquire function
2021-09-15 20:34:17 +08:00
Ivan Grokhotkov
e21e5aac64
esp_hw_support: update esp32s3 chip ID to the MP version
...
- Update 7.2.5 chip ID (4) to 7.2.8 chip ID (9).
- Remove TODO in espcoredump regarding this mismatch.
2021-09-13 15:16:45 +02:00
Li Shuai
e44ead5356
Power Management: add RTC8M power domain to control whether internal 8m oscillator is powered down during sleep
2021-09-13 17:36:54 +08:00
Sachin Parekh
fd5a7df404
esp32h2: Replicated HMAC JTAG downstream enable mode implementation
2021-09-06 11:06:50 +05:30
Sachin Parekh
fa2707f1f3
hmac: Added Downstream JTAG enable mode for esp32c3 and esp32s3
...
If JTAG is disabled temporarily by burning SOFT_DIS_JTAG, it can be
re-enabled temporarily through esp_hmac_jtag_enable API
2021-09-06 11:06:50 +05:30
Jiang Jiang Jian
316988bd2d
Merge branch 'feature/support_esp32s3_cpu_tagmem_retention' into 'master'
...
support esp32s3 cpu + tagmem retention
See merge request espressif/esp-idf!14579
2021-09-06 03:47:44 +00:00
Sachin Billore
f80d6f8c21
Digital Signature support for S3
...
Closes IDF-1791
2021-09-02 11:59:24 +05:30
Martin Vychodil
58aed7df98
ESP32S2: No assert()/abort() in Memprot API, use esp_err_t instead
...
JIRA IDF-3634
2021-08-26 09:20:00 +02:00
Li Shuai
15fc449793
light sleep: separate sleep retention function
2021-08-24 11:54:47 +08:00
Li Shuai
90a0a83c0f
light sleep: separate sleep wifi/bt mac bb function
2021-08-23 10:25:04 +08:00
Li Shuai
b0757dfcfa
light sleep: separate sleep gpio function
2021-08-23 10:22:12 +08:00
Zim Kalinowski
dcff1baab5
Merge branch 'bugfix/fix_esp32s2_deep_sleep_timer_wake_up_fail' into 'master'
...
rtc: fix esp32s2 fall into sleep forever when deep-sleep time is set to 0
Closes IDF-2712
See merge request espressif/esp-idf!12438
2021-08-19 03:20:15 +00:00
Jakob Hasse
1c3be690ed
[esp_hw_support]: HMAC upstream support for S3
2021-08-13 12:01:06 +08:00
Jan Brudný
db41f2efdd
esp_hw_support: update copyright notice
2021-08-05 16:30:10 +02:00
Konstantin Kondrashov
f00c204fbc
Merge branch 'feature/adds_custom_mac_address' into 'master'
...
efuse: Add CUSTOM_MAC address for ESP32-C3/-S2/-S3/-H2
Closes IDF-1326
See merge request espressif/esp-idf!14417
2021-08-04 06:35:29 +00:00
Konstantin Kondrashov
4972605b16
esp_common: Add API for IPC to run small pieces of code on the other CPU, in the context of the level 4 interrupt
2021-08-03 14:35:29 +08:00
KonstantinKondrashov
40c360a096
efuse: Add CUSTOM_MAC address for ESP32-C3/-S2/-S3/-H2
2021-08-02 14:43:27 +05:00
morris
21067a0455
spiram: add getter function to check psram initialization state
2021-07-30 11:23:26 +08:00
Shu Chen
dadaf30d17
Merge branch 'feature/add_eui64_for_esp32h2_efuse' into 'master'
...
efuse: add mac extension address for esp32h2
See merge request espressif/esp-idf!14363
2021-07-21 03:46:58 +00:00
zhangwenxu
d5b9078e23
efuse: add mac extension address for esp32h2
2021-07-20 12:03:17 +08:00
Chen Yi Qun
835c0ca32c
fix esp32s2 fall into sleep forever when deep-sleep time is set to 0
2021-07-19 14:43:47 +08:00
Omar Chebib
a7b6ec85b8
Merge branch 'feature/move_memory_layout_to_heap' into 'master'
...
G0: Memory layouts are now part of heap components
Closes IDF-1264
See merge request espressif/esp-idf!14028
2021-07-19 06:23:19 +00:00
Michael (XIAO Xufeng)
59195b6fb3
Merge branch 'bugfix/update_gdma_soc' into 'master'
...
gdma: alignment setting for PSRAM transfer
Closes IDF-1524
See merge request espressif/esp-idf!13976
2021-07-17 14:04:03 +00:00
Angus Gratton
9d6366f290
esp_hw_support: Move rtc.h header from target components
2021-07-16 20:14:28 +08:00
Angus Gratton
f0471b18b2
esp32h2: Move from target component to esp_hw_support (new structure)
2021-07-16 20:14:27 +08:00
Renz Bagaporo
844af01eb4
esp32: move spiram, himem
2021-07-16 20:14:26 +08:00
Renz Bagaporo
452bfda367
esp32: move dport_access
2021-07-16 20:14:26 +08:00
Renz Bagaporo
702e41e1c8
esp32s2: move crypto related functions
2021-07-16 20:14:26 +08:00
Renz Bagaporo
ea2aafbb7a
esp32s2: move memprot api
2021-07-16 20:14:26 +08:00
morris
d9819bc7ae
gdma: set transfer ability
2021-07-16 14:47:09 +08:00
Omar Chebib
c4f57af6c9
G0: Memory layouts are now part of heap components
2021-07-15 11:38:23 +10:00
Shu Chen
5e3689ae0f
esp32h2: update esp_system and esp_hw_support to support esp32h2
2021-07-01 19:53:11 +08:00
Shu Chen
7d4b2617e1
esp32h2: copy esp_system and esp_hw_support from esp32c3
...
Copy the esp32c3 code without any change:
* components/esp_hw_support/include/soc/esp32h2
* components/esp_hw_support/port/esp32h2
* components/esp_system/port/soc/esp32h2
2021-07-01 19:53:11 +08:00
Angus Gratton
5c812742c6
docs: Add description for Linux getrandom() function
2021-05-20 17:08:17 +10:00
Angus Gratton
e14edecf5f
docs: Add random number generation to the API Reference System section
2021-05-18 16:05:42 +10:00
Angus Gratton
4d4e094d81
esp_hw_support: Clarify the documentation about hardware RNG entropy
2021-05-06 16:59:02 +10:00
ninh
f1ee8aa14f
esp_wifi: fix nolightsleep after wifi init
2021-04-29 18:50:28 +08:00
Angus Gratton
7cb83c8787
system doc: Re-structure description of MAC addresses, especially on newer chip targets
...
Includes a note about calculating the Ethernet MAC on platforms with no built-in
Ethernet, and removes documentation for esp_efuse_mac_get_custom() on targets
other than ESP32
2021-04-22 16:08:55 +10:00
Angus Gratton
c8cb803378
system: Simplify esp_derive_local_mac() function
...
Previously this function included a loop but would never run more
than one iteration of it.
2021-04-22 12:22:46 +10:00
Renz Bagaporo
586023790e
esp_system: move sleep modes to esp_hw_support, power down light sleep to esp_pm
2021-04-07 17:53:37 +08:00
Renz Bagaporo
c112bd8b57
esp_system: move intr_alloc
2021-04-07 17:53:37 +08:00
Renz Bagaporo
8762bfebde
esp_system: move asysnc memcpy to esp_hw_support
2021-04-07 17:53:37 +08:00
Renz Bagaporo
1b4e4c37b7
esp32: remove deprecated esp_intr.h
2021-03-31 19:17:33 +08:00
Renz Bagaporo
e6edf34e82
esp32: move esp_clk functions
2021-03-31 19:17:33 +08:00
Renz Bagaporo
4a08264e7a
esp_system: split esp_system.h header
2021-03-31 19:13:03 +08:00
Renz Bagaporo
0f03f450ff
esp_hw_support: create esp_cpu
...
Create a esp_cpu header that contains CPU-related functions and
utilities.
2021-02-26 13:34:29 +08:00
Renz Bagaporo
349f0cad3e
esp_common: other movements
2021-02-24 12:16:37 +08:00
Renz Bagaporo
5e8799bbfe
esp_common: move some headers
2021-02-24 12:16:37 +08:00
Renz Bagaporo
ae15c81dbe
esp_common: move to esp_hw_support
2021-02-24 12:16:37 +08:00
KonstantinKondrashov
dada7cd035
global: Uses CCOUNT API instead of XTHAL macro
2021-01-12 16:24:23 +08:00
Cao Sen Miao
e338a2e3df
rtc: add function to en/disable the rtc clock
2020-12-23 09:53:24 +11:00
Angus Gratton
b696d2917e
esp_hw_support: Add initial ESP32-C3 support
...
From internal commit 7761d6e8
2020-11-30 15:23:15 +11:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Renz Bagaporo
6b0a5af73e
soc: move implementations to esp_hw_support
2020-10-28 22:38:50 +08:00
Renz Bagaporo
988be69466
esp_hw_support: create component
2020-10-28 07:21:29 +08:00