esp-idf/components/esp_hw_support
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
..
include freertos: Add portTRY_ENTRY_CRITICAL() and deprecate legacy spinlock fucntions 2021-11-22 13:28:39 +08:00
port clk: fix esp32h2 print wrong CPU frequency 2021-11-15 17:40:51 +08:00
test Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
clk_ctrl_os.c esp32h2: add rtc clock support 2021-08-26 11:25:39 +08:00
CMakeLists.txt IPC: Move ipc sources to esp_system 2021-11-11 10:30:01 +08:00
compare_set.c esp_hw_support: update copyright notice 2021-08-05 17:38:43 +02:00
cpu_util.c ESP8684: add spi_flash, efuse, hw_support support 2021-11-06 17:33:44 +08:00
esp_async_memcpy.c esp_hw_support: update copyright notice 2021-08-05 17:38:43 +02:00
esp_clk.c clk: fix esp32h2 print wrong CPU frequency 2021-11-15 17:40:51 +08:00
hw_random.c ESP8684: add spi_flash, efuse, hw_support support 2021-11-06 17:33:44 +08:00
intr_alloc.c ESP8684: add spi_flash, efuse, hw_support support 2021-11-06 17:33:44 +08:00
Kconfig light sleep: add software workaround for esp32s3 gpio reset issue 2021-10-20 11:36:22 +08:00
Kconfig.spiram.common Adjust the variable name & 2021-08-25 16:06:28 +08:00
linker.lf ESP8684: add spi_flash, efuse, hw_support support 2021-11-06 17:33:44 +08:00
mac_addr.c efuse: fix esp32h2 get ext_mac 2021-10-28 23:53:38 +08:00
project_include.cmake esp_hw_support: Clean up CMakeLists file 2021-07-16 20:14:28 +08:00
README.md esp_hw_support: create component 2020-10-28 07:21:29 +08:00
regi2c_ctrl.c esp_hw_support: update copyright notice 2021-08-05 17:38:43 +02:00
sdkconfig.rename light sleep: add software workaround for esp32s3 gpio reset issue 2021-10-20 11:36:22 +08:00
sleep_gpio.c light sleep: fix Flash leakage when its CS pin has no hardware pullup 2021-09-15 20:34:18 +08:00
sleep_mac_bb.c light sleep: separate sleep wifi/bt mac bb function 2021-08-23 10:25:04 +08:00
sleep_modes.c sleep: deep sleep does not need cpu and wifi/bt mac retention 2021-11-12 17:46:56 +08:00
sleep_retention.c light sleep: add i/d-cache tagmem retention support for esp32s3 2021-08-27 11:11:09 +08:00

esp_hw_support

This component contains hardware-related operations for supporting the system. These operations are one level above that of hal in that these(1) use system services such as memory allocation, logging, scheduling or (2) may be multi-step operations involving/affecting multiple parts of the SoC.

Implementations that don't fit other components cleanly, but are not worth creating a new component for (yet) may also be placed here as long as they don't pull dependencies other than the core system components.