Commit Graph

102 Commits

Author SHA1 Message Date
Konstantin Kondrashov
3f89072af1 feat(all): Use PRIx macro in all logs 2024-03-12 11:15:53 +02:00
Omar Chebib
9046bf1645 fix(espcoredump): Reconfigure the stack guard when using custom coredump stack 2024-03-08 17:25:42 +08:00
Erhan Kurubas
434b096c72 refactor(espcoredump): simplify uart/flash write flow 2024-03-07 16:10:50 +08:00
Erhan Kurubas
91586bbc85 refactor(espcoredump): replace uart and flash callbacks with aliases 2024-03-07 16:10:50 +08:00
Erhan Kurubas
18fc19faf2 refactor(espcoredump): keep checksum context in coredump stack 2024-03-07 16:10:50 +08:00
Erhan Kurubas
f4acf0b378 refactor(espcoredump): format coredump component with astyle 2024-02-19 21:57:28 +01:00
Erhan Kurubas
0d22b99946 feat(coredump): move esp_core_dump_init into component 2024-02-07 19:39:36 +08:00
Erhan Kurubas
f1d5f97719 feat(coredump): use SHA ROM functions for all targets except ESP32
For ESP32, continue using mbedtls due to a required ROM patch for the SHA implementation.
For other targets, we can now leverage the ROM functions.
2024-01-25 15:13:56 +01:00
Erhan Kurubas
029a0582e1 feat(coredump): improve the probability of accessing healthy TCBs 2024-01-22 00:18:28 +08:00
Erhan Kurubas
c3916927c9 feat(esp-coredump): add esp32p4 chip support and doc update 2024-01-03 12:05:34 +01:00
Erhan Kurubas
58ee206c99 feat(coredump): save twdt panic output to coredump elf file 2023-12-05 13:28:51 +01:00
Darian Leung
a5d5ee7445 change(xtensa): Deprecate ".../xtensa_context.h" include path
This commit deprecates the "freertos/xtensa_context.h" and "xtensa/xtensa_context.h"
include paths. Users should use "xtensa_context.h" instead.

- Replace legacy include paths
- Removed some unnecessary includes of "xtensa_api.h"
- Add warning to compatibility header
2023-11-30 21:58:52 +08:00
Erhan Kurubas
a7bbf0d3aa feat(coredump): save isr context to coredump elf file 2023-11-27 16:46:42 +01:00
Sudeep Mohanty
d38f100223 change(freertos/idf): Deprecate some FreeRTOS IDF addition functions
This commit deprecates xTaskGetAffinity(), xTaskGetCurrentTaskHandleForCPU()
and xTaskGetIdleTaskHandleForCPU() APIs for IDF-FreeRTOS kernel.
Instead, users are directed to use alternatives. All other
components in IDF using these functions have been updated accordingly.
2023-11-03 14:54:06 +01:00
Omar Chebib
ff2a492002 Merge branch 'staging/espcoredump_move_strings_flash' into 'master'
change(espcoredump): save RAM space by placing constants in flash

See merge request espressif/esp-idf!26872
2023-11-03 12:20:25 +08:00
Omar Chebib
8ac4b48b2f change(espcoredump): save RAM space by placing constants in flash
All the log messages of espcoredump component used to be in DRAM, which would
lower the available RAM space for the user application. Since the cache is always
enabled after an exception, constants can be put in flash.
2023-11-02 19:09:57 +08:00
Simon Arlott
1feb3c9f9b espcoredump: Support for not overwriting existing core dump in flash
If there's an unattended boot loop or a crash that causes another crash on
the next boot, it needs to be possible to avoid overwriting a saved core
dump with another core dump.

Add an option to do this and skip writing core dumps if the partition isn't
empty.

Fixes #12027.

Mergeshttps://github.com/espressif/esp-idf/pull/12105
2023-11-02 06:58:47 +00:00
Rahul Tank
d2e9314c24 fix(espcoredump): fixed compilation warning
Added conditional compilation for logging stack usage only when CONFIG_ESP_COREDUMP_LOGS is
enabled.

Closes: https://github.com/espressif/esp-idf/issues/12318
2023-10-19 16:48:28 +05:30
Alexey Lapshin
2585e53d54 Merge branch 'feature/update-toolchain-to-esp-13.1.0_new_newlib' into 'master'
Update toolchain to esp-13.2.0_20230919

Closes GCC-250, GCC-322, GCC-324, GCC-327, GCC-330, and IDF-8287

See merge request espressif/esp-idf!25073
2023-10-10 08:18:33 +08:00
Alexey Lapshin
8bbcc224dd fix(espcoredump): fix gcc 13.1.0 warnings 2023-10-09 12:13:02 +04:00
Darian Leung
9968a48c36 refactor(freertos/task_snapshot): Make task snapshot private
Task snapshot API were never intended to be called from user code. This commit
makes task snapshot a private API thus moves `#include "freertos/task_snapshot.h"`
to `#include "esp_private/freertos_debug.h"`.

Task snapshot related Kconfig options have also been hidden.

Note: Added 'freertos_common' mapping to ldgen mapping execptions lists due to
inlining of 'freertos_debug.h' functions.
2023-10-07 13:14:55 +08:00
Erhan Kurubas
4714521b21 feat(coredump): add panic details to the elf file 2023-08-24 10:20:56 +02:00
Mahavir Jain
3befd5fff7 Merge branch 'contrib/github_pr_11869' into 'master'
bugfix: avoid warning in espcoredump when log disabled (GitHub PR)

Closes IDFGH-10636

See merge request espressif/esp-idf!25134
2023-08-10 02:19:32 +08:00
Aleksei Apaseev
ba51b09cb2 coredump: added the chip_rev field into the coredump header 2023-07-26 10:53:28 +08:00
Erhan Kurubas
912f5afefa fix(coredump): Fix strncpy error in core_dump_elf.c
core_dump_elf.c:504:5: error: 'strncpy' specified bound 66 equals
destination size [-Werror=stringop-truncation]
2023-07-22 02:22:58 +02:00
Christoph Baechler
88aa0d61c6 bugfix: avoid warning in espcoredump when log disabled 2023-07-14 08:42:54 +02:00
Song Ruo Jing
921713fff4 uart: Support LP_UART port with UART driver on esp32c6 2023-06-16 07:31:40 +00:00
KonstantinKondrashov
b605404b06 esp_app_format: IRAM space optimization 2023-05-17 23:40:59 +08:00
Omar Chebib
42b2169542 coredump: add support for stacks in external RAM
Tasks having their stacks in SPIRAM can now be part of the coredump written to flash
2022-12-22 12:47:22 +01:00
Omar Chebib
1ff8a68c21 Merge branch 'bugfix/support_coredump_stack_xtensa' into 'master'
coredump: custom core dump stack is now supported on Xtensa targets

See merge request espressif/esp-idf!21335
2022-12-19 18:02:15 +08:00
Mahavir Jain
12b977dba6
coredump: add partition encrypted flag check for flash encryption case
Ref: https://esp32.com/viewtopic.php?f=13&t=30752
2022-12-02 17:15:01 +05:30
Omar Chebib
301cb74890 coredump: custom core dump stack is now supported on Xtensa targets 2022-12-02 12:01:19 +08:00
Armando
aba9f80cd2 partition: use esp_partition_munmap instead of spi_flash_munmap 2022-11-09 20:15:17 +08:00
Harshit Malpani
8fba04638b
espcoredump: Add support for esp32c2
This commit puts some code under SOC_RTC_MEM_SUPPORTED. This enables use of coredump in targets with no RTC memory support.
2022-09-28 20:41:00 +05:30
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
Laukik Hase
0071ea498f
esp_app_format: Fixed build errors and resolved dependencies 2022-08-17 10:59:31 +05:30
Omar Chebib
e25cda2c40 Task WDT: Interuptee task stack is now used for backtracing, regardless of the CPU core
For RISC-V and Xtensa targets, in case a panic needs to happen when
Task WDT is triggered (ESP_TASK_WDT_PANIC), the interruptee's stack
is now used for printing the backtrace.
Abort after Task Watchdog is triggered can happen on APP CPU (second core).
2022-08-02 12:41:14 +08:00
Guillaume Souchere
6005cc9163 hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces
This commit marks all functions in interrupt_controller_hal.h, cpu_ll.h and cpu_hal.h as deprecated.
Users should use functions from esp_cpu.h instead.
2022-07-22 00:06:06 +08:00
Cao Sen Miao
a690a87829 spi_flash: Remove legacy spi_flash drivers 2022-07-01 11:01:34 +08:00
simon.chupin
45482bd1c0 components: Change copyright in components files 2022-06-17 16:59:56 +02:00
Anton Maklakov
45f267390b espcoredump: fix unsigned arithmetic 2022-05-30 11:21:30 +07:00
Anton Maklakov
57785e5eca espcoredump: suppress -Waddress-of-packed-member warning 2022-05-30 11:21:30 +07:00
Marius Vikhammer
0fbae992dd config: removed references to non-existing kconfig options 2022-03-15 18:32:22 +08:00
Aditya Patwardhan
4582af75b8 mbedtls: Update licenses of files updated in mbedtls-3.1 update 2022-03-04 05:18:58 +00:00
Laukik Hase
3925365351 ci: Fix pre-check stage failing tests
- Updated license headers
- Re-enabled public headers and static analysis checks
- Fix public header file check failure

Co-authored-by: Aditya Patwardhan <aditya.patwardhan@espressif.com>
2022-03-03 01:37:10 +05:30
Aditya Patwardhan
45122533e0 mbedtls-3 update:
1) Fix build issue in mbedtls
2) skip the public headers check in IDF
3)Update Kconfig Macros
4)Remove deprecated config options
5) Update the sha API according to new nomenclature
6) Update mbedtls_rsa_init usage
7) Include mbedtls/build_info.h instead of mbedtls/config.h
8) Dont include check_config.h
9) Add additional error message in esp_blufi_api.h
2022-03-03 01:37:10 +05:30
Darian Leung
57fd78f5ba freertos: Remove legacy data types
This commit removes the usage of all legacy FreeRTOS data types that
are exposed via configENABLE_BACKWARD_COMPATIBILITY. Legacy types can
still be used by enabling CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY.
2022-02-09 23:05:45 +08:00
Sudeep Mohanty
e22b4007d3 esp_hw_support: Removed deprecated CPU util functions
The following files were deleted:
- components/esp_hw_support/include/soc/cpu.h
- components/soc/esp32s3/include/soc/cpu.h

The following functions are deprecated:
- get_sp()

The following functions declared in soc/cpu.h are now moved to esp_cpu.h:
- esp_cpu_configure_region_protection()

The following functions declared in soc/cpu.h are now moved to components/xtensa/include/esp_cpu_utils.h:
- esp_cpu_process_stack_pc()

All files with soc/cpu.h inclusion are updated to include esp_cpu.h instead.

Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2021-12-28 16:58:37 +05:30
Shubham Patil
8ad9daea7d espcoredump: Parse bt for instruction fetch prohibited cause 2021-09-29 23:08:54 +05:30