Commit Graph

491 Commits

Author SHA1 Message Date
morris
e8847a176f refactor(intr): add namespace for intr_cpu_id_t
previously the intr_types.h doesn't have a namespace,
it has the risk of introduing conflict in user's project.
2023-09-06 09:50:41 +08:00
Wang Zi Yan
ca334f2cea docs: Provide CN trans for sub power mode docs 2023-09-04 13:07:10 +08:00
Marius Vikhammer
eb8883cc20 Merge branch 'feature/p4_wdt' into 'master'
feat(core-system/wdt): added support for watchdogs on P4

Closes IDF-8135 and IDF-7750

See merge request espressif/esp-idf!25584
2023-08-31 10:14:19 +08:00
Marius Vikhammer
8ecbd1f59b feat(core-system/wdt): added support for watchdogs on P4 2023-08-30 11:04:02 +08:00
Adam Múdry
087de4c77a docs(storage): Add supported data partition subtypes 2023-08-29 11:28:28 +02:00
Darian
f1c71b75fa Merge branch 'refactor/freertos_task_snapshot_option' into 'master'
refactor(freertos): Remove option for Task Snapshot

See merge request espressif/esp-idf!25610
2023-08-29 14:19:55 +08:00
Darian Leung
659ec67967 refactor(freertos): Remove option for Task Snapshot
Previously, Task Snapshot could be conditionally built based on the
CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT option. However, there is no overhead
with always enabling Task Snapshot functions, as the linker will remove any
functions if they are not called.

This commit...

- removes all ESP-IDF dependencies on the CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT
option so that Task Snapshot functions are always available.
- Makes CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT a hidden option to maintain
compatibility with user code.
- adds documentation regarding Task Snapshot.
2023-08-28 20:11:27 +08:00
Sudeep Mohanty
ec4cd2bb19 docs(freertos): Updated FreeRTOS documentation for ESP32-P4 2023-08-28 10:07:43 +08:00
morris
54febcae0e fix(adc): invalid assertion on the adc_unit 2023-08-23 18:36:02 +08:00
Alexey Gerenkov
3247253671 Merge branch 'feature/newlib_getentropy' into 'master'
feat(newlib): Implement getentropy() function

Closes IDFGH-10746 and IDF-7383

See merge request espressif/esp-idf!25192
2023-08-18 23:43:29 +08:00
Michael (XIAO Xufeng)
026c155c9c Merge branch 'feat/compatibility_revisions' into 'master'
doc: add documentation for compatibility between IDF version and chip revision

See merge request espressif/esp-idf!23973
2023-08-16 15:09:32 +08:00
Marius Vikhammer
f83c29f242 Merge branch 'feature/esp32p4_docs_build' into 'master'
ESP32-P4 build docs

Closes IDF-7520 and IDF-7773

See merge request espressif/esp-idf!25026
2023-08-16 11:49:43 +08:00
Marius Vikhammer
27baef2424 docs(esp32p4): added building docs for ESP32-P4 2023-08-16 10:13:47 +08:00
Xiao Xufeng
d0dcf2da00 doc: add documentation for compatibility between IDF version and chip revision 2023-08-14 17:34:16 +08:00
Xiao Xufeng
e79857b866 docs(sleep_modes): Add docs for sub power modes on S2, S3, C2, C3. 2023-08-11 17:20:16 +08:00
Alexey Gerenkov
f8e020b1d7 feat(newlib): Implement getentropy() function
Closes https://github.com/espressif/esp-idf/issues/11963
2023-08-08 18:06:58 +03:00
morris
fd3d1aa101 feat(async_memcpy): refactor driver code to support different DMA backen
To support AHB and AXI DMA memory copy for the same target (esp32p4).
2023-08-03 12:02:09 +08:00
Cai Xin Ying
03c15adc94 docs: update format issues for EN and CN files under api-reference/system and... 2023-08-03 11:32:07 +08:00
Lou Tian Hao
3f6be5938b Merge branch 'docs/rewrite_all_low_to_any_low_when_not_esp32' into 'master'
Docs: rewrite_all_low_to_any_low_when_not_esp32

See merge request espressif/esp-idf!24997
2023-08-01 20:56:36 +08:00
Lou Tianhao
f33188fb35 docs(pm/sleep): rewrite_all_low_to_any_low_when_not_esp32 2023-08-01 11:53:14 +08:00
Zim Kalinowski
35cfcdbbf7 Merge branch 'bugfix/fix-stacktype-in-doc' into 'master'
docs: Use StackType_t instead of portSTACK_TYPE

See merge request espressif/esp-idf!25046
2023-07-29 19:45:05 +08:00
Ivan Grokhotkov
cfa1896780 Merge branch 'contrib/github_pr_11535' into 'master'
Replace deprecated flushregs alias with full gdb command (GitHub PR)

Closes IDFGH-10272

See merge request espressif/esp-idf!24752
2023-07-28 22:40:22 +08:00
Zim Kalinowski
0e8d2b9550 docs: Use StackType_t instead of portSTACK_TYPE 2023-07-28 14:55:13 +08:00
Ivan Grokhotkov
375ebb1a41
docs(system): add a section on interrupt allocation debugging
Related to https://github.com/espressif/esp-idf/issues/6709
Related to https://github.com/espressif/esp-idf/issues/7767
Related to https://github.com/espressif/esp-idf/issues/9880
Related to https://github.com/espressif/esp-idf/issues/11462
2023-07-19 16:47:41 +02:00
Armando (Dou Yiwen)
2d4dabda25 Merge branch 'feature/added_cache_msync_behaviour_per_direction' into 'master'
feat(cache): added direction selection to esp_cache_msync API

Closes IDF-7674

See merge request espressif/esp-idf!24614
2023-07-17 18:04:42 +08:00
Daniel Mangum
647e7a2a71
fix: Replace deprecated flushregs alias with full gdb command
Usage of `flushregs` in gdb will result in the following warning:

```
Warning: 'flushregs', an alias for the command 'maintenance flush register-cache', is deprecated.
Use 'maintenance flush register-cache'.
```

This patch updates to use the recommend command.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
Merges https://github.com/espressif/esp-idf/pull/11535
2023-07-13 09:26:47 +02:00
Armando
3625db723c doc(mm): added cache msync API direction related descriptions 2023-07-11 11:19:10 +08:00
xiongweichao
d26ad599c4 docs(sleep_modes): Updated Wi-Fi/Bluetooth and Sleep Modes in docs 2023-07-11 11:14:31 +08:00
Song Ruo Jing
ea48030514 Merge branch 'refactor/rtcio_caps_responsibility' into 'master'
refactor(driver/rtcio): Re-wrap RTCIO APIs with more accurate soc_caps

Closes IDF-7406

See merge request espressif/esp-idf!24522
2023-07-07 14:25:47 +08:00
Song Ruo Jing
4985caa38f refactor(driver/rtcio): Re-wrap RTCIO APIs with more accurate soc_caps 2023-07-05 11:47:51 +08:00
Jakob Hasse
197e919d74 refactor(examples/console): Warn if secondary console is active
Having a secondary serial console is not useful when applications
use a REPL console type, hence we warn for it in examples.

Closes https://github.com/espressif/esp-idf/issues/11731
2023-07-03 13:42:35 +08:00
Lou Tianhao
63d32ab620 Power Management: support DFS and PMU feature for esp32h2 2023-06-26 20:57:55 +08:00
Zhang Xiao Yan
3d110437b9 Merge branch 'docs/update_interrupt_number_esp32h2' into 'master'
docs: update the number of interrupts for esp32h2

See merge request espressif/esp-idf!24081
2023-06-09 14:07:11 +08:00
Marius Vikhammer
3cabd18133 Merge branch 'docs/h2_timer_docs' into 'master'
docs: updated misc docs with H2 specific information.

Closes IDF-6682, IDF-6683, and IDF-6694

See merge request espressif/esp-idf!24068
2023-06-09 12:12:58 +08:00
Linda
b7a6655bdc docs: update the number of interrupts for esp32h2 2023-06-07 19:12:27 +08:00
Marius Vikhammer
ccda256058 Merge branch 'docs/ulp_lp_core' into 'master'
ulp: add lp core docs

Closes IDF-5816

See merge request espressif/esp-idf!24013
2023-06-07 10:43:23 +08:00
Marius Vikhammer
d19600e0a7 ulp/lp-core: added docs describing the lp core 2023-06-06 17:42:03 +08:00
Marius Vikhammer
aeeee67164 docs: updated misc docs with H2 specific information. 2023-06-06 09:48:47 +08:00
Michael (XIAO Xufeng)
c5d4abfba1 Merge branch 'docs/sleep_modes_refactor' into 'master'
doc_sleep: refactor the documentation of power modes

See merge request espressif/esp-idf!23146
2023-06-05 23:34:15 +08:00
Cai Xin Ying
e93672bc7b docs: Provide CN translation for api-reference/system/heap_debug.rst 2023-06-05 11:12:19 +08:00
Xiao Xufeng
3de91820d7 doc_sleep: refactor the documentation of power modes 2023-06-03 01:50:24 +08:00
Cai Xin Ying
4df1319ecb Provide Chinese Translation for api-reference/system/esp_event.rst 2023-06-01 17:45:22 +08:00
Marius Vikhammer
9f31c65458 Merge branch 'feature/c6_ulp_gpio' into 'master'
ulp: added gpio API for lp core

Closes IDF-6834

See merge request espressif/esp-idf!23766
2023-06-01 09:50:33 +08:00
Marius Vikhammer
3da38a603a docs: updated misc C6 programming guide docs with minor changes. 2023-05-31 11:17:24 +08:00
Marius Vikhammer
dacc51dd2b ulp/lp-core: added gpio API for lp core as well as an example showcasing it. 2023-05-29 11:13:47 +08:00
Konstantin Kondrashov
1cf46bd0f0 Merge branch 'doc/update_efuse_info' into 'master'
doc: Update all efuse info files

Closes IDF-5919

See merge request espressif/esp-idf!23824
2023-05-23 14:47:52 +08:00
Cai Xin Ying
60a1f8b5b9 docs: provide CN translation for api-reference/system/esp_err and api-reference/bluetooth/esp_gatts 2023-05-22 11:13:48 +08:00
KonstantinKondrashov
8817760628 doc: Update efuse info files 2023-05-19 15:13:21 +08:00
Cai Xin Ying
21f5cb8144 Provided Chinese translation for api-reference/system/mem_alloc.rst 2023-05-16 20:05:04 +08:00
Mahavir Jain
6e11e49cec Merge branch 'bugfix/docs_fix_typo_in_custom_mac_api' into 'master'
docs: fix reference to custom mac address API

See merge request espressif/esp-idf!23750
2023-05-16 12:41:47 +08:00
Mahavir Jain
0970fc7e0d
docs: fix reference to custom mac address API 2023-05-15 11:30:24 +05:30
KonstantinKondrashov
69838403f9 esp_bootloader_format: Adds bootloader description structure to read bootloader version from app
Closes https://github.com/espressif/esp-idf/issues/8800
Closes https://github.com/espressif/esp-idf/issues/9132
2023-05-10 21:39:52 +08:00
morris
c176e05ae2 Merge branch 'docs/update_cn_trans_ulp-risc-v_bootloader' into 'master'
Docs: update CN translation for ulp-risc-v.rst and bootloader.rst

Closes DOC-5159

See merge request espressif/esp-idf!23644
2023-05-10 11:33:27 +08:00
Mo Fei Fei
83d6754f8b Docs: update CN translation for ulp-risc-v.rst and bootloader.rst 2023-05-10 11:33:26 +08:00
Zim Kalinowski
3010fd3aa9 Merge branch 'doc/jthread_limitation' into 'master'
doc: Note down C++ std::jthread limitation

Closes IDF-6769 and IDFGH-9280

See merge request espressif/esp-idf!23570
2023-05-09 19:29:25 +08:00
Cai Xin Ying
af872cc079 docs:provide translation for api-reference/system/esp_timer.rst 2023-05-09 12:02:12 +08:00
Wang Fang
0bfffa0160 Merge branch 'docs/add_more_information_about_c3_gpio0_gpio5' into 'master'
Add more information about which GPIOs of ESP32-C3/ESP32-C2/ESP32-H2 can wake up the chip from Deep-sleep mode

Closes DOC-4899

See merge request espressif/esp-idf!23279
2023-05-05 12:56:21 +08:00
Wang Fang
719b75da9b docs: provide more information about ESP32-C3 GPIO0~GPIO5 which can be used to wake up the chip from Deep-sleep mode 2023-05-05 11:04:02 +08:00
Jakob Hasse
bb9912cc57 doc: Added C++ std::jthread limitation 2023-05-05 10:17:51 +08:00
Zim Kalinowski
4a647d08de Merge branch 'feature/c6_ulp_sleep' into 'master'
ulp: added sleep support for lp core

Closes IDF-7012

See merge request espressif/esp-idf!23103
2023-04-25 22:40:52 +08:00
Jakob Hasse
550ecbe37a feat(freertos): added POSIX/Linux simulator port to FreeRTOS SMP
* Added a POSIX/Linux simulator that is compatible with the Amazon
  FreeRTOS SMP API. Note that the simulator itself is still
  single core, like the IDF FreeRTOS POSIX/Linux simulator.
2023-04-25 13:58:57 +08:00
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