Commit Graph

380 Commits

Author SHA1 Message Date
Marius Vikhammer
359b237cc5 ulp: added sleep support for lp core
Added support for running LP core while hp core sleeps, as well
as waking up the hp core.
2023-04-25 11:51:35 +08:00
Darian Leung
948010dc0b freertos: Add task creation with caps functions
This commit adds the corresponding CreateWithCaps functions for tasks:

- xTaskCreatePinnedToCoreWithCaps()
- xTaskCreateWithCaps()
- vTaskDeleteWithCaps()

Documentation and migraiton guide have been updated accordingly.

Closes https://github.com/espressif/esp-idf/issues/11216
2023-04-21 15:43:08 +08:00
Zim Kalinowski
db6ba5155c Merge branch 'feature/heap-trace-perf-improvment' into 'master'
heap: Allow for hashmap placement in external memory

Closes IDFGH-9845

See merge request espressif/esp-idf!23184
2023-04-20 04:37:52 +08:00
Guillaume Souchere
6ce1ccd964 heap: Add trace configuration to allow hash map placement in external RAM bss section when possible
- Remove the size limit for the hash_map array from the CONFIG_HEAP_TRACE_HASH_MAP_SIZE
- Add test case for heap tracing using hashmap
- Update heap_debug.rst to document the newly added configurations in the heap component

Closes https://github.com/espressif/esp-idf/issues/11172
2023-04-19 10:30:59 +02:00
Wang Zi Yan
d7cdcfb76b docs: update out-of-sync api reference docs 2023-04-18 08:00:39 +00:00
Jakob Hasse
e7312cccea pthread: added pthread_rwlock_tryrd/wrlock()
Closes https://github.com/espressif/esp-idf/issues/9229
2023-04-17 16:16:11 +08:00
Darian Leung
4e7cd2e706 freertos: Add wrapper functions to create objects with capabilities
This commit adds various ...WithCaps() functions to create FreeRTOS objects
with specific memory capabilities.
2023-04-12 12:00:53 +08:00
Mahavir Jain
f4334e0318
docs: add a note regarding EFuse Block9 key purpose quirk for some chips 2023-04-05 14:20:07 +05:30
Jakob Hasse
13a8ba8967 esp_event: Clarify event handler un-registering
Related to https://github.com/espressif/esp-idf/issues/10848
2023-04-03 10:02:25 +08:00
Jiang Jiang Jian
5898953156 Merge branch 'doc/update_doc_for_pd_periph_config' into 'master'
esp_pm: update help doc  for PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP

See merge request espressif/esp-idf!22888
2023-03-31 18:11:41 +08:00
wuzhenghui
fcf0498da8 esp_pm: update doc for PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP 2023-03-30 10:33:47 +08:00
Sudeep Mohanty
88e4c06028 ulp-riscv-i2c: Updated ULP RISC-V I2C driver to abort when met with errors
The current ULP RISC-V RTC I2C driver got stuck in an infinite loop if
there is a I2C transaction error. This commit amends the driver flow to
abort the read/write operation if met with errors. It also adds a loop
timeout to avoid getting stuck in an infinite loop.The commit also
updates the default bus timing parameters for RTC I2C to be faster.
This commit also adds documentation help to guide users when they meet
with issues while working with the RTC I2C driver on the ULP RISC-V coprocessor.
2023-03-29 13:25:46 +02:00
Zim Kalinowski
ee842a1386 Merge branch 'feature/fix_load_efuses_from_flash_when_real_fe_is_on' into 'master'
efuse(virtual mode): Fix load_efuses_from_flash when FE is on

Closes IDFGH-9580

See merge request espressif/esp-idf!22793
2023-03-28 17:32:11 +08:00
Mahavir Jain
55fd7d43c1 Merge branch 'feature/heap-alloc-free-callbacks' into 'master'
heap: Add allocation and free function hooks.

Closes IDFGH-9424

See merge request espressif/esp-idf!22456
2023-03-24 10:55:11 +08:00
KonstantinKondrashov
88ef0d8aeb efuse: Fix load_efuses_from_flash when FE is on
esp_efuse_utility_load_efuses_from_flash() read emul_efuse
as an encrypted partition, but that is not correct,
this partition was never encrypted.
Need to read it as not encrypted partition.

Fxed the case: If FE is already on then EFUSE VIRT mode can work with it.

Closes https://github.com/espressif/esp-idf/issues/10929
2023-03-23 16:20:43 +08:00
Marius Vikhammer
8f26d66b62 Merge branch 'docs/add_wdt_panic_note' into 'master'
docs: add note about configuring panic/system reset for task WDT

Closes IDFGH-9651

See merge request espressif/esp-idf!22785
2023-03-23 14:37:50 +08:00
Guillaume Souchere
2f982107dc heap: Wrap the function hook feature under a configuration
also update heap_debug.rst and mem_alloc.rst to provide information about the feature
2023-03-23 04:50:49 +00:00
Armando (Dou Yiwen)
7905961053 Merge branch 'docs/esp_mm_programming_guide' into 'master'
docs: mmu supported memory management programming guide

Closes IDF-7006

See merge request espressif/esp-idf!22851
2023-03-23 10:41:07 +08:00
Jakob Hasse
6382fc3d6b Merge branch 'feature/pthread_semaphore' into 'master'
pthread: POSIX unnamed semaphore

Closes IDF-6936

See merge request espressif/esp-idf!22585
2023-03-22 19:03:12 +08:00
Armando
abb03b8dc4 doc: added memory management programming guides 2023-03-22 16:33:52 +08:00
Jakob Hasse
45c8b8ba10 pthread: Implemented POSIX unnamed semaphore 2023-03-21 10:23:58 +08:00
Jakob Hasse
a44671c11a doc: remove left-over legacy event loop docs 2023-03-17 15:37:26 +08:00
Marius Vikhammer
86c647e93f docs: add note about configuring panic/system reset for task WDT
Closes https://github.com/espressif/esp-idf/issues/10995
2023-03-16 09:52:04 +08:00
Sudeep Mohanty
9b81e2b189 freertos: Schedule tasks unblocked by an ISR on a core with scheduler running if core affinity matches
FromISR APIs would put an unblocked task on the pending ready list if
the scheduler is suspended on the current core, irrespective of the
task's core affinity and the state of the scheduler on the other core.
This commit updates this behavior by allowing tasks to get scheduled on
a core which has the scheduler running as long as the task's core
affinity allows it.
2023-03-15 07:43:33 +00:00
Omar Chebib
2f4c32afac Apply 1 suggestion(s) to 1 file(s) 2023-03-13 14:47:09 +08:00
Sudeep Mohanty
ce796ffaf9 docs: Updated incorrect description for ULP FSM JUMPR and JUMPS instructions
This commit updates the incorrect description for the JUMPR and JUMPS
instructions for ULP FSM on esp32/s2/s3.

Closes https://github.com/espressif/esp-idf/issues/10923
2023-03-11 08:10:10 +01:00
daiziyan
9ba9dc04b0 docs: updated flash-encryption, startup, memory-types and misc_system_api 2023-03-07 18:06:52 +08:00
Darian Leung
e21ab0332b freertos(IDF): Refactor port heap functions
Vanilla FreeRTOS expects applications to use one of the heap implementations
provided by FreeRTOS (i.e., heap_x.c), where functions such as pvPortMalloc()
and vPortFree() are defined in the heap implementation.

However, ESP-IDF already provides its own heap implementation
(i.e., esp_heap_caps.h). Thus, the pvPortMallc()/vPortFree() functions were
previously overriden by macro to call esp_heap functions directly.

This commit refactors the FreeRTOS port's heap as such:

- Added a heap_idf.c that implements all of the heap related functions required
  by FreeRTOS source
- All dynamic memory allocated by FreeRTOS is from internal memory. Thus, the
  FreeRTOS heap is the internal memory subset of the ESP-IDF heap.
- Removed some old macros to reduce diff from upstream source code.
2023-03-06 16:00:29 +08:00
Wu Zheng Hui
2066977b48 Merge branch 'feature/bringup_esp32c6_deepsleep_support_master' into 'master'
esp32c6: bringup deepsleep examples

Closes IDF-6051, IDF-6052, IDF-5349, IDF-5924, and WIFI-5352

See merge request espressif/esp-idf!22300
2023-03-03 23:53:10 +08:00
wuzhenghui
709adaaa37 soc_caps: since esp32c6 only support one ext wakeup src, split SOC_PM_SUPPORT_EXT_WAKEUP
Close IDF-5924
2023-03-02 15:06:05 +08:00
Wang Zi Yan
c490c3a183 docs: update CN for index/spi_slave/system_time 2023-03-02 07:04:49 +00:00
Darian Leung
443d87c2ff esp_ringbuf: Replace internal semaphores with task event lists
This commit replaces the existing TX/RX semaphores with FreeRTOS task event
lists (similar to how FreeRTOS queues implement task blocking). Using task
event lists allows the ring buffer object to be smaller and various ring buffer
functions to be faster. The ring buffer queue set impelementation was also
updated as a result.
2023-02-28 23:56:45 +08:00
Sudeep Mohanty
6c1a544782 Merge branch 'docs/ulp_docs_incorrect_notes' into 'master'
docs: Ulpdated ULP docs to have the correct notes directive

Closes IDF-2522

See merge request espressif/esp-idf!22415
2023-02-24 18:17:31 +08:00
jingli
8f415a7f44 refactor: power management component use unified esp_pm_config_t 2023-02-23 11:36:07 +08:00
Sudeep Mohanty
449ea7cab7 docs: Ulpdated ULP docs to have the correct notes directive
This commit updates the ULP .rst files to have the correct notes
directive format. The notes directives were missing a colon.
2023-02-17 12:55:25 +01:00
Sudeep Mohanty
372d2310c9 docs: Updated api_guides/performance chapters for esp32c6 and esp32h2
This commit updates the api_guides/performance chapters for esp32c6 and
esp32h2.
2023-02-16 09:08:46 +01:00
Darian Leung
3b638b12ad freertos: Update ESP-IDF FreeRTOS and FreeRTOS Additions documentation
This commit updates the ESP-IDF FreeRTOS and FreeRTOS Additions to account for
the fact that there are now two implementations of SMP FreeRTOS (i.e., IDF SMP
vs Amazon SMP).
2023-02-15 12:42:18 +08:00
Darian Leung
bec82aa0cf freertos: Update FreeRTOS overview document
This commit updates "freertos.rst" to act as an overview document of FreeRTOS
in ESP-IDF, outlining the different FreeRTOS implementations (IDF vs Amazon)
and various supplemental features. The details of each implementation will be
separated to their own documents.
2023-02-15 12:42:18 +08:00
Darian Leung
69433a9660 freertos: Rename SMP changes document to ESP-IDF FreeRTOS
This commit renames "freertos-smp" docuemnt to "freertos_idf". This fits better
with the current dual FreeRTOS implementation (i.e., IDF FreeRTOS and Amazon
SMP FreeRTOS), both of which are SMP capable.
2023-02-15 12:42:04 +08:00
Roland Dobai
4bd5ebb4a1 Merge branch 'tools/monitor_move' into 'master'
Tools(idf_monitor): Move idf_monitor to separate repo

Closes IDF-4109

See merge request espressif/esp-idf!22050
2023-02-07 19:47:46 +08:00
Sudeep Mohanty
371fe114bc docs: Updated chip independednt api-reference chapters for c6 and h2 2023-02-03 15:00:27 +01:00
Peter Dragun
3e3533f918 feat(idf_monitor): move idf_monitor to separate repo 2023-02-03 11:20:15 +01:00
Marius Vikhammer
c7a41fb860 docs: update system api guides and intr chapters for C6 and H2 2023-01-29 16:15:36 +08:00
Marius Vikhammer
5e9e8c396f wdt: add support for WDTs on C6 2023-01-19 12:58:26 +08:00
David Čermák
2f1d30d155 Merge branch 'bugfix/lwip_core_locking' into 'master'
esp_netif/lwip: Fix core-locking config

Closes IDFGH-8445, IDFGH-9098, and IDFGH-9063

See merge request espressif/esp-idf!20840
2023-01-18 20:31:25 +08:00
Wang Zi Yan
9d80d981b5 docs: CN translation for system_time.rst and migration-guides: 5.1/networking.rst 2023-01-17 16:16:03 +01:00
David Cermak
a71fa82177 esp_netif/lwip: Fix core-locking config
* Fix thread safety issues in non-core locking
* Add option to verify thread safety issues in lwip (core-lock assertion)
* Make esp_sntp.h thread safe API
* Fix sntp examples
* Fix openthread libs

Closes https://github.com/espressif/esp-idf/issues/9908
Closes https://github.com/espressif/esp-idf/issues/10502
Closes https://github.com/espressif/esp-idf/issues/10466
2023-01-17 16:15:58 +01:00
Marius Vikhammer
70d1dbccd8 Merge branch 'docs/enable_h2_build' into 'master'
docs: add support for building H2 docs

Closes IDF-6259

See merge request espressif/esp-idf!21933
2023-01-17 12:11:29 +08:00
Marius Vikhammer
7100b7d1ff docs: add support for building H2 docs 2023-01-17 10:04:26 +08:00
Wang Zi Yan
1568f9b7ef
docs: remove outdated section on custom toolchain for 64-bit time_t
Co-authored-by: Ivan Grokhotkov <ivan@espressif.com>
2023-01-16 14:19:56 +08:00