Commit Graph

400 Commits

Author SHA1 Message Date
Sudeep Mohanty
81109e8bdd fix(panic_handler): Updated panic handler to use RTC WDT
This commit updates the following:
- Updates the panic handler to use only the RTC WDT to reset the system.
- Refactors some of the panic handler code.
- Updates Bluetooth files where in they now feed the WDTs instead of
  reconfiguring them.
- Removes some unnecessary configuration of WDTs from various files.
- Added a unit test to verify that the system does not lock up when the
  panic handler is stuck.
- Updates the memprot unit tests to work with the refactored panic
  handler.

Closes https://github.com/espressif/esp-idf/issues/15166
Closes https://github.com/espressif/esp-idf/issues/15018
Closes https://github.com/espressif/esp-idf/issues/10110
2025-03-06 09:13:17 +01:00
Omar Chebib
209cfa313b fix(esp_hw_support): make the NMI interrupts available for the main application
Closes https://github.com/espressif/esp-idf/issues/13629

NMI interrupt level has been freed for all the Xtensa targets, making it possible
for the main application to use it. An example has been added to show how to
proceed.
2025-02-26 10:06:44 +08:00
Martin Vychodil
2c26a7e11e fix(security): Fixed ESP32S2 memory protection check for Peri1 RTCSLOW interrupt
- fixes the issue found in https://github.com/espressif/esp-idf/issues/15359
- extends debug printouts in the related tests
2025-02-21 16:29:04 +08:00
laokaiyao
a137775d11 fix(i2s): fixed i2s_std initializer order for cpp compiler
Closes https://github.com/espressif/esp-idf/issues/15405
2025-02-18 15:06:51 +08:00
Erhan Kurubas
e9161c62d0 test(coredump): collect all expected uart data first, then process lazily 2025-02-03 15:11:27 +01:00
Marius Vikhammer
4531d056e9 fix(interrupt): fixed wrongly reserved interrupt for wifi on H2 2025-01-02 16:44:05 +08:00
Chen Yudong
5fd9ee23d3 ci: add build test for eco versions 2024-12-19 21:02:49 +08:00
Erhan Kurubas
b63cafb1a6 test(system): mark gdb test runners properly 2024-12-11 18:50:09 +01:00
Erhan Kurubas
dfc248d66d change(tools): enhance expect_reg_dump to support any or specific core values 2024-12-09 16:23:39 +01:00
Erhan Kurubas
ef14d7ab64 test(coredump): fix failed core dump tests 2024-12-09 15:52:59 +01:00
Erhan Kurubas
5f3d3f5e92 ci(panic): extend extram_stack tests 2024-12-09 15:52:59 +01:00
Erhan Kurubas
c753271de1 ci(panic): add coredump tcb corrupted test 2024-12-09 15:52:58 +01:00
Alexey Lapshin
3af39a0ab0 feat(debugging): move gdbinit generation to CMake
This feature is useful for 3rd-party software to run GDB with predefined
options that described in project_description.json file

allow to pass custom options to "idf.py gdb":

  --gdb-commands: command line arguments for gdb. (without changes)
  -ex: pass command to gdb.
  -x: pass gdbinit file to gdb. Alias for old --gdbinit command
2024-12-06 05:07:52 +08:00
Mahavir Jain
bfd037e87e feat: add compiler config for not merging const sections
Probably GCC-13.x and on-wards uses "-fmerge-constants" to merge
the const section (string/floating-point) across compilation units.
This makes it difficult to properly analyze the size output of rodata
section across libraries, the merged section (big in size) is showed
across a single library.

The config option added here can help to disable this compiler behavior
and help to provide better size analysis. It can be used during
development phase only as it increases rodata section size.
2024-10-15 13:35:35 +08:00
Alexey Lapshin
2f8f397d6b fix(test): reduce gdb_loadable_elf binary size 2024-10-10 10:12:31 +08:00
Erhan Kurubas
67e49f542a test(esp-coredump): add test for the soft sha config 2024-10-01 10:07:04 +02:00
Chen Jichang
c9430ed953 ci(esp32c5,esp32c61): stop building c5 and c61 on 5.3 2024-09-13 19:39:29 +08:00
Alexey Gerenkov
e74ca2811a Merge branch 'coredump_fixes_v5.3' into 'release/v5.3'
Coredump fixes v5.3

See merge request espressif/esp-idf!31104
2024-09-05 17:49:00 +08:00
Jiang Jiang Jian
038a86fc5f Merge branch 'task/add_ldgen_exception_for_freertos_v5.3' into 'release/v5.3'
fix(freertos): Added freertos and ringbuf fragments to the exception list of ldgen mapping checks (v5.3)

See merge request espressif/esp-idf!33215
2024-09-05 10:35:36 +08:00
Sudeep Mohanty
c3a79c301d test(freertos): Added build test for function in flash with -Os optimation
This commit adds a build test for when FreeRTOS and esp_ringbuf functions
are placed in flash and the compiler optimizes for code size.
2024-08-30 09:15:15 +02:00
Erhan Kurubas
d72b765404 fix(coredump): fix buffer overflow inside esp_core_dump_get_summary
Closes https://github.com/espressif/esp-idf/issues/13754
2024-08-26 12:17:25 +03:00
Erhan Kurubas
8dd40eeeda ci(panic): add flash encrypted coredump tests 2024-08-26 12:17:18 +03:00
Xiao Xufeng
a26af847b7 ci(mmu): add unicore test 2024-08-16 11:51:58 +08:00
Konstantin Kondrashov
3f82f6e93b feat(esp_system): Print backtrace for both CPUs when cache error does not determine CPU 2024-07-30 19:35:35 +08:00
Jiang Jiang Jian
5325cac7e6 Merge branch 'coredump_save_all_regions_v5.3' into 'release/v5.3'
Save .bss, .data and .heap sections in to the coredump (v5.3)

See merge request espressif/esp-idf!30438
2024-07-26 11:11:22 +08:00
Marius Vikhammer
8957785f4d Merge branch 'feat/cache_panic_p4_v5.3' into 'release/v5.3'
cache:cache panic p4 (v5.3)

See merge request espressif/esp-idf!32110
2024-07-25 18:56:39 +08:00
Island
638577b0bf Merge branch 'bugfix/fix_some_ble_bugs_cjh_v5.3' into 'release/v5.3'
Fixed some BLE bugs 240620 (backport v5.3)

See merge request espressif/esp-idf!31646
2024-07-25 16:54:55 +08:00
morris
0903bcca1b Merge branch 'fix/lcd_build_error_in_cpp_v5.3' into 'release/v5.3'
fix(lcd): build errors with deprecated lcd types in cpp (v5.3)

See merge request espressif/esp-idf!31676
2024-07-25 16:38:17 +08:00
Armando
22f1d28533 feat(cache): supported cache panic on p4 2024-07-15 10:16:54 +08:00
Marius Vikhammer
f3a5160e2c ci(qemu): increase timeout for esp_intr_dump test 2024-06-28 14:24:44 +08:00
chenjianhua
ad31f4f029 fix(bt): Update bt lib for ESP32-C3 and ESP32-S3(eca46a0)
- Fixed adv data buffer free after restart adv
- Fixed BLE interrupt allocation using esp API
2024-06-26 17:23:29 +08:00
morris
fe2b23b93a fix(i2c_lcd): using function overloading to keep esp_lcd_new_panel_io_i2c
becuase _Generic is not available in C++

Closes https://github.com/espressif/esp-idf/issues/14037
2024-06-24 10:52:28 +08:00
morris
8d8d8cbf18 fix(lcd): build errors with deprecated lcd types in cpp
Closes https://github.com/espressif/esp-idf/issues/14029
2024-06-24 10:52:28 +08:00
Aditya Patwardhan
e819b8c0b9 Merge branch 'fix/incorrect_pma_config_esp32p4_v5.3' into 'release/v5.3'
fix(esp_hw_support): Fix incorrect PMA configuration for ESP32-P4 (v5.3)

See merge request espressif/esp-idf!31431
2024-06-13 00:06:26 +08:00
Michael (XIAO Xufeng)
5c618745fe Merge branch 'feat/brownout_support_p4_v5.3' into 'release/v5.3'
feat(brownout): Add brownout detector support on esp32p4 (backport v5.3)

See merge request espressif/esp-idf!31094
2024-06-11 21:21:10 +08:00
harshal.patil
0868604664 fix(esp_hw_support): Fix incorrect PMA configuration for ESP32-P4
- As the PMA entry that made some memory regions cacheable was
assigned the highest priority, some intermediate inaccessible
memory regions bypassed protection.

- Added tests for the same

- Verified that even after changing the priority of the PMA entry,
a write operation at SOC_IRAM_LOW + 0x40 (a random RAM cached address)
still needs the same number (29) of CPU cycles.
2024-06-11 12:23:06 +05:30
Jeroen Domburg
df4195062d change(system): heap_caps_alloc returns aligned memory if caps indicate a need for it
The implicit promise of heap_alloc_caps() and friends is that the memory it
returns is fit for the purpose as requested in the caps field. Before
this commit, that did not happen; e.g. DMA-capable memory wass returned
from a correct region, but not aligned/sized to something the DMA subsystem
can handle.

This commit adds an API to the esp_mm component that is then used by the
heap component to adjust allocation alignment, caps and size dependent on
the hardware requirement of the requested allocation caps.
2024-05-30 16:02:03 +08:00
C.S.M
5a7a9c0638 test(esp_intr_dump): Fix the esp intr dump expected output because the changes happened in brownout 2024-05-27 16:41:18 +08:00
Erhan Kurubas
0f96e51146 ci(coredump): fix capture dram tests 2024-05-22 06:25:04 +02:00
Erhan Kurubas
617f5a7052 feat(coredump): save .bss, .data and .heap sections to the elf file 2024-05-22 06:25:01 +02:00
Alexey Lapshin
6f2de1fb23 fix(system): esp32p4: fix mepc when load/store failure occurred 2024-04-18 19:49:19 +04:00
Marius Vikhammer
842b6a1dc4 Merge branch 'bugfix/p4_ulp_wakeup' into 'master'
fix(ulp): fixed lp-core not booting during sleep

Closes IDF-9407

See merge request espressif/esp-idf!30296
2024-04-18 16:23:16 +08:00
Marius Vikhammer
1fa59c442b fix(ulp): fixed lp-core not booting during sleep
LP core was unable to boot when system was in deepsleep.
This was due to lp uart init in LP rom using XTAL as clk source,
which is normally powered down during sleep.

This would cause lp uart to get stuck while printing ROM output,
and the app would never boot.

Also fixed wrong wakeup cause used by HP core for ULP wake up
2024-04-18 11:36:30 +08:00
Ivan Grokhotkov
545203f1c8 change(ci): split test_apps build-test-rules, add missing code owners 2024-04-17 11:54:33 +02:00
Marius Vikhammer
4533f16c34 fix(rtc_memory): fix conflict between LP-ROM and RTC reserved 2024-04-17 13:37:56 +08:00
Mahavir Jain
024b040300 test(memprot): enable memory protection tests for P4 2024-04-14 21:16:42 +05:30
Erhan Kurubas
483b4cd65b ci(coredump): enable custom stack tests for riscv chips 2024-04-09 13:36:30 +08:00
Kevin (Lao Kaiyao)
432864e917 Merge branch 'ci/enable_c5_mp_ci_jobs' into 'master'
ci(esp32c5mp): enable esp32c5 build on CI

See merge request espressif/esp-idf!29895
2024-04-08 12:16:16 +08:00
laokaiyao
65b1fd33d3 ci(esp32c5mp): disable the unsupported tests 2024-04-07 12:13:29 +08:00
Chen Yudong
7d13f8210f ci: fix pytest generic env markers 2024-04-03 18:10:43 +08:00