Commit Graph

425 Commits

Author SHA1 Message Date
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
Konstantin Kondrashov
708a9047e8 Merge branch 'feature/adds_funcs_to_read_efuses_from_cmake' into 'master'
esptool_py: Adds funcs to read eFuses from Cmake during a build stage

Closes IDFGH-8890

See merge request espressif/esp-idf!21585
2023-01-04 17:17:47 +08:00
KonstantinKondrashov
fd721c5b09 esptool_py: Adds funcs to read eFuses from Cmake during a build stage
Closes https://github.com/espressif/esp-idf/issues/10311
2023-01-04 00:30:38 +08:00
Michael (XIAO Xufeng)
57a9c67c01 index 2022-12-29 01:00:31 +08:00
Michael (XIAO Xufeng)
daa4af1b1f docs: split spi_flash api-reference documents to peripherals folder 2022-12-29 00:59:03 +08:00
Guillaume Souchere
a74ae7fba7 Merge branch 'feature/heap-trace-improve-spi-ram-support' into 'master'
heap_trace: improvements to formatting, code, comments of heap trace standalone

Closes IDFGH-8699

See merge request espressif/esp-idf!21506
2022-12-28 15:07:30 +08:00
Mahavir Jain
5b6cc09dce
docs: remove mention of DIS_BOOT_REMAP for chips other than ESP32-S2
Relevant: https://esp32.com/viewtopic.php?f=13&t=31188
2022-12-21 14:16:50 +05:30
Mo Fei Fei
6ec92de622 Merge branch 'docs/update_cn_trans_dec' into 'master'
Docs: update CN trans for sleep_modes.rst, misc_system_api.rst, migration_guides/peripherals.rst

Closes DOC-4272

See merge request espressif/esp-idf!21617
2022-12-20 10:35:50 +08:00
Mo Fei Fei
689c2f46e2 Docs: update CN trans for sleep_modes.rst, misc_system_api.rst, migration_guides/peripherals.rst 2022-12-20 10:35:49 +08:00
Harshit Malpani
45bcf572c2
docs: Update esp_https_ota docs to have information about OTA events 2022-12-16 10:26:15 +05:30
Chip Weinberger
9afc386dd2 [Heap Trace Standalone] improvements to formatting, code, comments 2022-12-08 00:47:02 -08:00
Mahavir Jain
175e5fc260 Merge branch 'feature/docs_security_overview_chapter' into 'master'
docs: add chapter about overall "security" area guide

Closes IDF-1565

See merge request espressif/esp-idf!21156
2022-11-25 16:56:02 +08:00
Mahavir Jain
11f2683c27 docs: add chapter about overall "security" area guide
List down considerations for the following areas:

- Hardware security
- Network security
- Product security

Also added brief explanation about "Security Policy" for ESP-IDF.

Closes IDF-1565
2022-11-25 03:17:05 +00:00
Guillaume Souchere
5dc0481d21 heap: add documentation about the function placement in IRAM and its usage in ISR
This commits adds a internal.md file in the heap directory to clarify the idea behind
which functions is placed in IRAM or in flash.

A section in mem_alloc.rst documentation is added to specify which functions from the
heap component API can be used in interrupt handlers.
2022-11-24 10:31:14 +01:00
morris
4019e307f1 doc: add api reference for etm driver 2022-11-23 15:32:34 +08:00
Konstantin Kondrashov
618572c139 Merge branch 'feature/efuse_c6' into 'master'
efuse(esp32-c6): Update efuse_table and rs coding error func

Closes IDF-5919 and IDF-5341

See merge request espressif/esp-idf!21163
2022-11-22 21:50:42 +08:00
KonstantinKondrashov
f40aed1fe0 doc: Update efuse doc 2022-11-22 16:09:10 +08:00
Linda
a8ae91dd96 docs: update the usage of MALLOC_CAP_32BIT on ESP32 chips 2022-11-22 10:05:28 +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
Sudeep Mohanty
ac99c0ad6b Merge branch 'feature/freertos_remove_untested_fn_feature' into 'master'
freertos: Removed CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION kconfig option

Closes IDF-5298

See merge request espressif/esp-idf!21000
2022-11-16 10:28:42 +08:00
Guillaume Souchere
abe56e2bbe docs: add section in ram-uasge.rst to clarify DRAM limitations on esp32.
The sections details that only 160KB of DRAM can be used for statically allocated data.
Reference this new section in mem_alloc.rst and memory-types.rst.
2022-11-15 07:40:25 +01: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
Sudeep Mohanty
0744f4d5a5 freertos: Removed CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION kconfig option
This commit removes the unused FreeRTOS kconfig option
CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION.
2022-11-09 08:14:16 +01:00
morris
aeaef08f0e doc: update twai api reference for esp32c6 2022-11-04 17:40:29 +08:00
KonstantinKondrashov
1f9260d790 all: Apply new version logic (major * 100 + minor) 2022-11-03 08:36:23 +00:00
Sudeep Mohanty
b3755b751e pthread: Remove pthread TLS cleanup dependency on FreeRTOS Static Task Cleanup Hook
This commit removes the need to define the vTaskCleanupTCB hook in
pthread to cleanup the thread-specific data before a thread is deleted.
2022-11-02 09:52:28 +01:00
Marius Vikhammer
099b0b6421 Merge branch 'feature/c6_doc_build' into 'master'
docs: add support for building C6 docs

Closes IDF-5829

See merge request espressif/esp-idf!19721
2022-10-18 09:37:30 +08:00
Sudeep Mohanty
a28791dbed ulp: fix incorrect bit-width operator while reading RTC_CNTL_LOW_POWER_ST_REG during wakeup
This commit fixes a bug wherein an incorrect bit-width of 0 was being
used while reading the RTC_CNTL_LOW_POWER_ST_REG in ulp_fsm example code
while judging whether the system is ready for wakeup. The correct value
should be a bit-width of 1 to read bit#27 (RTC_CNTL_MAIN_STATE_IDLE) of
the RTC_CNTL_LOW_POWER_ST_REG register on esp32.
2022-10-17 10:59:26 +02:00
Marius Vikhammer
ca4ad3ce7c docs: add support for building C6 docs 2022-10-13 04:39:16 +00:00
Ivan Grokhotkov
8048d596a2
docs: remove duplicate "the" articles 2022-10-05 11:58:23 +02:00
Ivan Grokhotkov
12f4ea94aa
docs: async_memcpy: use real function names in the example code 2022-10-05 11:58:22 +02:00
Ivan Grokhotkov
93c332155d
docs: system: mention how to obtain esp_app_desc_t 2022-10-03 12:01:57 +02:00
Omar Chebib
6798bfc4b0 TWDT: the Kconfig option ESP_TASK_WDT_EN is now used to enable Task Watchdog 2022-09-15 14:37:59 +08:00
Omar Chebib
53c7dd4efc WDT: implement interrupt wdt and task wdt for ESP32-C2
ESP32-C2 has a single group timer, thus it will use it for the interrupt watchdog,
which is more critical than the task watchdog. The latter is implement in
software thanks to the `esp_timer`component.
2022-09-15 14:37:59 +08:00
Mo Fei Fei
7edf5090ab Docs: Update cn trans for migration-guides/system.rst and api-reference/system/ulp-risc-v.rst 2022-09-14 21:33:50 +08:00
Alexey Lapshin
a9bd454529 tools: update esp32ulp-elf to v2.35_20220830
Closes https://github.com/espressif/esp-idf/issues/6432
Closes https://github.com/espressif/binutils-esp32ulp/issues/23
2022-09-13 12:55:48 +04:00
Sudeep Mohanty
751bca40f7 Merge branch 'docs/update_ulp_shift_ops_description' into 'master'
docs: Updated description of ULP FSM shift operations

Closes IDFGH-7237

See merge request espressif/esp-idf!20025
2022-09-12 16:26:35 +08:00
Sudeep Mohanty
445b1c0f7a docs: Updated description of ULP FSM shift operations
This commit updates the documentation for ULP FSM LSH and RSH
operations.

Closes https://github.com/espressif/esp-idf/issues/8831
2022-09-07 14:16:39 +02:00
Sudeep Mohanty
afbea0a04c ulp: Updated ULP docs and ulp_fsm example for wakeup when SoC is not in sleep mode.
This commit updates the ULP documentation and the ulp_fsm example with
the scenario when a wakeup is triggered from the ULP coproc when the
main CPU is not in sleep mode.

Closes https://github.com/espressif/esp-idf/issues/8341
Closes https://github.com/espressif/esp-idf/issues/5254
2022-09-06 10:32:05 +02:00
Marius Vikhammer
7d629e8c84 docs: reorder content in mem_alloc section
We should avoid hiding sections between long lists of API documentation.
2022-09-02 16:16:02 +08:00
Marius Vikhammer
e1f27cf31b heap: remove misleading info about malloc being equivalent to heap_caps_malloc(p, MALLOC_CAP_8BIT)
The actual memory allocated for malloc() depends on a lot of factors, see heap_caps_malloc_default()

Closes https://github.com/espressif/esp-idf/issues/7659
2022-09-01 11:39:34 +08:00
Mahavir Jain
166cb88efe Merge branch 'bugfix/docs_app_image_format_update' into 'master'
docs: update app image format for secure boot v2 signature consideration

See merge request espressif/esp-idf!19730
2022-08-24 10:58:07 +08:00
Marius Vikhammer
8bf4af572b Merge branch 'docs/c2_storage_update' into 'master'
docs: update storage and sleep docs for C2

Closes IDF-4207

See merge request espressif/esp-idf!19453
2022-08-23 23:56:56 +08:00
Mahavir Jain
64a88e995b
docs: update app image format description for secure boot v2 signature 2022-08-23 20:52:46 +05:30
Zim Kalinowski
f54972d95d Merge branch 'feature/ulp_mutex' into 'master'
ulp-riscv: mutex/lock

Closes IDF-5754

See merge request espressif/esp-idf!19377
2022-08-21 16:27:53 +08:00
Laukik Hase
ae932c8c4e
docs: Added migration guide for app_update
- Deprecated functions and alternatives
2022-08-17 10:59:31 +05:30
Marius Vikhammer
26dc5fe188 docs: update storage and sleep docs for C2 2022-08-15 07:04:28 +00:00
daiziyan
d422e2e7fa docs: updated trans for ulp-risc-v,fatfs and sleep_modes 2022-08-10 16:53:51 +08:00
Marius Vikhammer
ffed60cc93 ulp-riscv: added lock API to provide mutual exclusion when sharing variables between the main CPU and the ULP. 2022-08-05 18:16:31 +08:00
KonstantinKondrashov
3f6a1625bb efuse: Adds missing header 2022-08-02 22:43:12 +08:00
Marius Vikhammer
5d23a757d6 Merge branch 'feature/ulp_uart' into 'master'
ulp-riscv: uart print

See merge request espressif/esp-idf!19229
2022-08-02 09:14:48 +08:00
Marius Vikhammer
32efa1e92d Add ULP-RISCV print and bitbanged UART tx API
Add example to demonstrate the use of this API.
2022-07-29 12:18:01 +08:00
Marius Vikhammer
9d599c207f docs: update api-ref system docs for C2 2022-07-27 16:12:26 +08:00
Wang Fang
83a0cd33ce docs: updated documents related to wakeup source, ulp, flash-encryption and memory types 2022-07-25 10:57:40 +08:00
morris
741b031e83 soc: added SOC_TOUCH_SENSE_SUPPORTED macro 2022-07-22 00:12:36 +00:00