Commit Graph

698 Commits

Author SHA1 Message Date
morris
8e5718fd0c Merge branch 'bugfix/bod_intr_v5.0' into 'release/v5.0'
brownout: Disable the hardware BOD when BOD interrupt is enabled(backport v5.0)

See merge request espressif/esp-idf!24693
2023-07-28 10:32:19 +08:00
Lou Tianhao
3727d56c82 Change: rewrite EXT1 triggle mode all_low to any_low when not esp32 2023-07-25 17:53:33 +08:00
gaoxiaojie
805f3bc557 fix(cache): add lock to protect cache sync operation 2023-07-24 10:51:23 +08:00
Cao Sen Miao
e2925cde68 brownout: Disable the hardware BOD when BOD interrupt is enabled 2023-07-11 14:46:30 +08:00
Armando
757f58c3ba fix(mm): correct mmap reserved irom and drom size
Prior to this commit, we don't consider the offset of the irom vaddr
start.

If the offset + size is bigger than the MMU page size, for example:
MMU page size: 0x10000
irom vaddr: 0x4200_0800, so offset = 0x800
irom size: 0xF900
offset + size = 0x10100

Under this condition, the 0x4200_0000 ~ 0x4202_0000, two MMU pages are
used.

With this commit, when reserving the irom and drom, we take the offset
into consideration as well.

Closes https://github.com/espressif/esp-idf/issues/2561
2023-07-07 10:45:26 +00:00
Jiang Jiang Jian
bd90408cc1 Merge branch 'feature/esp_ipc_isr_fix_v5.0' into 'release/v5.0'
esp_system: Fix a race-condition in esp_ipc_isr (in QEMU env) (v5.0)

See merge request espressif/esp-idf!23992
2023-06-15 00:56:24 +08:00
Jiang Jiang Jian
838850abab Merge branch 'feature/example_deep_sleep_wake_stub_backport_v5.0' into 'release/v5.0'
example: add deepsleep_wake stub example (backport v5.0)

See merge request espressif/esp-idf!23414
2023-06-12 11:07:59 +08:00
Marius Vikhammer
e77e6eb963 Merge branch 'bugfix/use_safe_noreturn_attr_v5.0' into 'release/v5.0'
compiler: replaced noreturn by __noreturn__ in header files (v5.0)

See merge request espressif/esp-idf!23812
2023-06-01 10:17:58 +08:00
Paul Guyot
051cb8dc5f esp_system: Fix a race-condition in esp_ipc_isr (in QEMU env)
The race condition is very unlikely on real hardware but can be observed with
qemu under heavy load.
Also add missing `memw` instructions which are generated by the C compiler but
absent in the assembly code.

Signed-off-by: Paul Guyot <pguyot@kallisys.net>
Signed-off-by: KonstantinKondrashov <konstantin@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/11447
Closes https://github.com/espressif/esp-idf/issues/11433
2023-05-30 23:04:14 +08:00
Jakob Hasse
fa099f23f3 compiler: replaced noreturn by __noreturn__ in header files
* noreturn may be replaced by third-party macros,
  rendering it ineffective

* Closes https://github.com/espressif/esp-idf/issues/11339
2023-05-30 13:21:17 +08:00
morris
858199506d mcpwm: reset peripheral in restart, panic and halt
mcpwm is commonly used in power eletronic area, when restart happens,
make sure the mcpwm generator is not working.

closes https://github.com/espressif/esp-idf/issues/11324
2023-05-18 04:56:34 +00:00
Marius Vikhammer
3720ea91c3 ci: re-enable reset reason tests for all targets except H2. 2023-05-15 09:58:16 +08:00
Marius Vikhammer
0722386585 esp-system: fixed int WDT reset reason being reported as task WDT on C2 2023-05-15 09:53:18 +08:00
KonstantinKondrashov
861a5fb863 esp_system: Do not rely on bootloader cache settings, do cache settings unconditionally at startup app
It makes multicore app runnable by unicore bootloader

Closes https://github.com/espressif/esp-idf/issues/10714
2023-05-11 05:55:32 +00:00
jiangguangming
af7223727d ld: fix rtc.data rtc.bss section issues
1. rtc.data section: should include sbss srodata in rtc_wake_stub*.*
2. rtc.bss section: move rtc .bss .bss.* from rtc.data to rtc.bss
2023-05-04 16:46:15 +08:00
jiangguangming
72676d230a use LL function to get wakeup cause 2023-05-04 16:46:15 +08:00
Marius Vikhammer
f1070229f8 system: fixed USE_FIXED_STATIC_RAM_SIZE option
The USE_FIXED_STATIC_RAM_SIZE was not actually causing the heap to start
at a fixed address.

Closes https://github.com/espressif/esp-idf/issues/10270
Closes https://github.com/espressif/esp-idf/issues/10271
2023-03-24 12:33:14 +08:00
Song Ruo Jing
27f9ee66d5 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
2023-03-17 14:44:29 +08:00
Zim Kalinowski
2a804de4b7 Merge branch 'staging/rename_twdt_config_examples_v5.0' into 'release/v5.0'
TWDT: Use the new TWDT Kconfig options in the examples and tests (Backport v5.0)

See merge request espressif/esp-idf!22631
2023-03-08 16:09:58 +08:00
morris
a77d7d2343 Merge branch 'bugfix/timg0_disable_v5.0' into 'release/v5.0'
esp_system: Fix TIMG0 still enabled after Timer is freed (v5.0)

See merge request espressif/esp-idf!22630
2023-03-07 11:56:50 +08:00
Omar Chebib
83907aaa20 TWDT: Use the new TWDT Kconfig options in the examples and tests 2023-03-07 10:23:43 +08:00
Gustavo Henrique Nihei
aab0a5a4a8 esp_system: Fix TIMG0 still enabled after Timer is freed
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-07 10:02:06 +08:00
Gustavo Henrique Nihei
24484887a9 esp_system: Ensure TIMG0 clock is always enabled during normal operation
If the TimerGroup 0 clock is disabled and then reenabled, the watchdog
registers (Flashboot protection included) will be re-enabled, and some
seconds later, will trigger an unintended reset.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-07 10:02:06 +08:00
jingli
cb64ff74fc system/test: use TEST_ESP_OK instead of ESP_ERROR_CHECK 2023-03-06 11:56:56 +08:00
jingli
38c25ebceb konfig: make rtc fast mem related kconfig depend on SOC_RTC_FAST_MEM_SUPPORTED 2023-03-06 11:53:35 +08:00
Armando
fbe7d6fca9 ld: fixed bootloader and app potential overlap issue 2023-03-02 10:45:40 +08:00
Jiang Jiang Jian
335ad04cba Merge branch 'feature/support_feature_depend_on_rtc_fast_mem_for_esp32c2_backport_v5.0' into 'release/v5.0'
esp32c2: support feature(rtc time) depend on rtc fast mem(backport v5.0)

See merge request espressif/esp-idf!22224
2023-02-27 15:06:31 +08:00
Armando
ac86ef31c1 g0: resolve MMU_PAGE_SIZE not defined in g0 build issue 2023-02-23 12:35:52 +08:00
jingli
eb27e688fb UT/esp32c2: reenable pm and sleep related UT 2023-02-16 10:54:11 +08:00
jingli
e109c5f998 esp32c2: support rtc time feature depend on rtc memory, since c2 does not have rtc memory 2023-02-16 10:52:59 +08:00
Jiang Jiang Jian
42bf734139 Merge branch 'bugfix/esp32s3_int_wdt_v5.0' into 'release/v5.0'
system: disable interrupts in esp_restart_noos_dig to fix infinite int_wdt on ESP32-S3 (v5.0)

See merge request espressif/esp-idf!21769
2023-01-12 16:19:27 +08:00
Jiang Jiang Jian
96db537020 Merge branch 'feature/apply_new_version_logic_v5.0' into 'release/v5.0'
all: Apply new version logic (major * 100 + minor) (v5.0)

See merge request espressif/esp-idf!20941
2023-01-12 16:18:23 +08:00
KonstantinKondrashov
823024c10c all: Apply new version logic (major * 100 + minor) 2023-01-06 02:00:52 +08:00
Ivan Grokhotkov
35135d7b29
system: disable interrupts in esp_restart_noos_dig 2022-12-22 11:34:38 +01:00
Jiang Jiang Jian
c541b9082e Merge branch 'contrib/github_pr_10027_v5.0' into 'release/v5.0'
[Panic] also print to secondary USB Serial/JTAG Console (GitHub PR) (v5.0)

See merge request espressif/esp-idf!21021
2022-12-21 17:15:04 +08:00
Zim Kalinowski
83e2cf1a68 Merge branch 'staging/riscv_wrapper_freertos_tasks_v5.0' into 'release/v5.0'
RISC-V: Create a wrapper around FreeRTOS Tasks to detect the ones returning (backport v5.0)

See merge request espressif/esp-idf!21202
2022-12-20 16:34:13 +08:00
Jiang Jiang Jian
c173845ff3 Merge branch 'feature/tlsf-dynamic-control-size_v5.0' into 'release/v5.0'
heap: Update to the new tlsf implementation of dynamic metadata size (backport v5.0)

See merge request espressif/esp-idf!20774
2022-12-20 13:51:07 +08:00
Chip Weinberger
12f8e55d7c
[Panic] also print to secondary USB Serial/JTAG Console 2022-12-16 14:40:00 +01:00
Guillaume Souchere
87a738962e esp_system: fix placement of __stack_chk_fail from flash to RAM
When stack check is enabled, certain functions (sometimes placed in RAM)
are being decorated with stack guards and a call to __stask_chk_fail() in
case ofr stack corruption. For this reason, __stack_chk_fail() must be
placed in RAM too.

Add stack check config in heap tests on all targets to find eventual flash to RAM
calls due to stack checks when running callgraph_check.py
2022-12-14 12:37:23 +01:00
wuzhenghui
c280d4b56e bugfix: unstall other cpu on core reset
- Closes https://github.com/espressif/esp-idf/issues/10320
2022-12-08 15:40:56 +08:00
Zim Kalinowski
759f7ec13d Merge branch 'feature/add_int_task_wdt_esp32c2_v5.0' into 'release/v5.0'
WDT: implement interrupt wdt and task wdt for ESP32-C2 (backport v5.0)

See merge request espressif/esp-idf!20980
2022-12-05 16:38:35 +08:00
Jiang Jiang Jian
b48971317f Merge branch 'bugfix/fix_part_of_modem_not_reset_when_power_on_backport_v5.0' into 'release/v5.0'
Coexistence: fix part of modem module not reset when power up(backport v5.0)

See merge request espressif/esp-idf!20807
2022-12-02 20:25:21 +08:00
Jiang Jiang Jian
fb519f3bb5 Merge branch 'bugfix/fix_esprv_intc_int_set_type_err_parameter_backport_v5.0' into 'release/v5.0'
bugfix: esprv_intc_int_set_type should not use bitmap parameter(backportv5.0)

See merge request espressif/esp-idf!20610
2022-12-02 19:51:34 +08:00
jingli
18fef64089 wifi/bt: fix part of modem module not reset when power up 2022-12-01 21:08:57 +08:00
Omar Chebib
3e9701205c esp_timer: add a function to restart timer
Timers, periodic or not, can now be restarted thanks to esp_timer_restart function.
This is done atomically, which can be used to feed a periodic timer, or simply change the period.
2022-12-01 10:45:35 +00:00
Omar Chebib
6b4e1619d8 TWDT: the Kconfig option ESP_TASK_WDT_EN is now used to enable Task Watchdog 2022-12-01 10:45:35 +00:00
Omar Chebib
1840c48538 TWDT: refactor the TWDT to be driver agnostic
This refactoring brings a private API for the TWDT implementation, which
can now use a hardware timer (Timer Group) or a software timer (esp_timer)
2022-12-01 10:45:35 +00:00
Omar Chebib
b675bb2a4d 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-12-01 10:45:35 +00:00
Omar Chebib
96346c1eed RISC-V: Create a wrapper around FreeRTOS Tasks to detect the ones returning 2022-11-23 15:44:44 +08:00
wuzhenghui
76817e6d76 bugfix: fix redefined _iram_end 2022-11-18 19:53:19 +08:00