Commit Graph
100 Commits
Author SHA1 Message Date
Omar Chebib a2ee6c914f fix: wrong name in the README file for advanced heap tracing example
Closes https://github.com/espressif/esp-idf/issues/17233
2026-01-16 14:26:26 +08:00
Omar Chebib 8db6882503 fix(heap): fix a bug where the biggest heap would be NULL on boot
Closes https://github.com/espressif/esp-idf/issues/17232
2026-01-16 14:26:26 +08:00
Omar Chebib 56c71ffc0d ci: re-enable cxx tests_apps and examples for the ESP32-P4 2025-11-27 11:20:35 +05:30
Omar Chebib a5bce887ab ci: re-enable eh_frame for the ESP32-P4 2025-11-26 11:40:01 +05:30
Omar Chebib 1bbf16c5bc fix(esp_system): fix potential warnings related to array size in .eh_frame parser 2025-11-05 11:26:24 +08:00
Omar Chebib cc0a98a3c4 fix(esp_system): prevent .eh_frame-based unwinding from looping indefinitely 2025-11-05 10:04:00 +08:00
Omar Chebib 1b698f0997 fix(hal): make CLIC interrupt routing function to only write related bits 2025-06-23 17:45:08 +08:00
Omar Chebib 20ec15edff fix(esp_system): fix RTC reserved area alignment in the linker script
Make sure the size of the RTC reserved area complies with the alignment requirement.

Closes https://github.com/espressif/esp-idf/issues/13082
2025-06-18 20:11:47 +08:00
Omar Chebib d3fd64d6c0 Merge branch 'bugfix/hwlp_coproc_saving_master' into 'master'
fix(freertos): workaround a hardware bug related to HWLP coprocessor

See merge request espressif/esp-idf!37246
2025-03-19 11:58:13 +08:00
Omar Chebib 0bc169e735 fix(freertos): optimize HWLP context switch by disabling it when unused 2025-03-13 11:11:24 +08:00
Omar Chebib c26879d29e fix(freertos): workaround a hardware bug related to HWLP coprocessor
This commit manually sets the HWLP context to dirty when a Task that needs it is scheduled it.
2025-03-13 11:11:24 +08:00
Omar Chebib a99753d293 fix(esp_hw_support): clear the memory protection interrupt status on boot
Fixes https://github.com/espressif/esp-idf/issues/15359
2025-02-25 18:06:38 +08:00
Omar Chebib 7559275fef Merge branch 'bugfix/freertos_wcaps_coproc' into 'master'
fix(freertos): fix a bug in `prvTaskDeleteWithCaps` related to coprocessors

Closes IDF-12202

See merge request espressif/esp-idf!36890
2025-02-19 09:39:05 +08:00
Omar Chebib c95a12658e fix(freertos): fix a bug in prvTaskDeleteWithCaps related to coprocessors
When a coprocessor is used, the stack pointer is altered. It must be restored
before freeing the memory allocated to the task.
2025-02-18 11:59:04 +08:00
Omar Chebib 8dfcafa1b2 Merge branch 'feat/intr_alloc_force_intrno' into 'master'
feat(esp_hw_support): add the possibility to allocate two sources to the same interrupt line

Closes IDF-9552

See merge request espressif/esp-idf!35473
2025-01-20 09:43:00 +08:00
Omar Chebib cf278e8060 docs(esp_hw_support): add Chinese translation for the shared interrupts documentation 2025-01-15 13:13:34 +08:00
Omar Chebib 16b8a2ea3b feat(esp_hw_support): two interrupts sources can now be mapped to the same interrupt line 2025-01-15 13:13:24 +08:00
Omar Chebib f3af70530e fix(esp_hw_support): fix a bug in the interrupt allocator related to shared interrupts
On RISC-V targets, when allocating a shared interrupt, the provided level would
override the current level of the allocated interrupt. As such, a medium level
interrupt could become a low level one and vice versa.
2025-01-15 12:03:18 +08:00
Omar Chebib e546ce3f15 fix(esp_hw_support): fix the interrupt allocator test app's CMakeLists.txt 2025-01-15 12:03:18 +08:00
Omar Chebib 52b558d218 Merge branch 'feature/enable_fp_backtracing' into 'master'
feat(riscv): implement frame pointer option for backtracing

See merge request espressif/esp-idf!32342
2025-01-13 18:11:49 +08:00
Omar Chebib d6cd339e46 fix: take into account MR comments 2025-01-09 11:57:02 +08:00
Omar Chebib ead2c8655e feat(esp_system): TaskWDT can now use frame pointer to print the backtrace 2025-01-09 11:57:02 +08:00
Omar Chebib 1e0cdcbd13 feat(heap): enable heap tracing for the RISC-V targets
When the frame pointer is enabled, it is possible for RISC-V targets to now
possible to enable and generate heap call traces.
2025-01-09 11:57:02 +08:00
Omar Chebib 980cf269c7 feat(riscv): implement frame pointer option for backtracing 2025-01-09 11:57:02 +08:00
Omar Chebib 776049660a Merge branch 'bugfix/esp32p4_linker_script' into 'master'
fix(esp_system): add missing `array` attribute in the ESP32-P4 linker script

Closes IDF-11936

See merge request espressif/esp-idf!36067
2024-12-31 16:19:13 +08:00
Omar Chebib 414c7056a2 fix(esp_system): add missing aaray attribute in the ESP32-P4 linker script 2024-12-30 18:36:58 +08:00
Omar Chebib 55955a5cd6 Merge branch 'feat/bootloader_multiboot' into 'master'
feat(bootloader): add an example that implements multiboot

Closes IDF-9409

See merge request espressif/esp-idf!35606
2024-12-26 16:26:26 +08:00
Omar Chebib 6540208f5a Merge branch 'fix/panic_arch_size' into 'master'
fix(esp_system): fix cache error size message

Closes IDF-11769

See merge request espressif/esp-idf!35112
2024-12-26 14:58:22 +08:00
Omar Chebib 4c8056882b fix(esp_system): fix cache error size message 2024-12-26 10:45:42 +08:00
Omar Chebib 840eef31ce feat(bootloader): add an example that implements multiboot
Add a new example for the bootloader that shows how to override it to implement multiboot.
2024-12-25 12:41:15 +08:00
Omar Chebib 28f1b18675 fix(bootloader): add a new property that contains the default linker scripts 2024-12-25 12:41:15 +08:00
Omar Chebib ff12ccfd10 Merge branch 'fix/ulp_riscv_interrupt_bug' into 'master'
fix(ulp): fix ULP RISC-V interrupt handler corrupting the stack

Closes IDFGH-14126

See merge request espressif/esp-idf!35154
2024-11-26 15:40:38 +08:00
Omar Chebib 46959b28d3 fix(ulp): fix ULP RISC-V interrupt handler corrupting the stack
* Closes https://github.com/espressif/esp-idf/issues/14930
2024-11-25 12:16:53 +08:00
Omar Chebib d5f244c5f7 Merge branch 'feat/psram_qemu_16_32_mb_qpi' into 'master'
feat(esp_psram): add support for QEMU 16MB and 32MB QPI PSRAM

See merge request espressif/esp-idf!34832
2024-11-14 12:04:22 +08:00
Omar Chebib fe93c990e6 feat(esp_psram): add support for QEMU 16MB and 32MB QPI PSRAM 2024-11-14 10:24:43 +08:00
Omar Chebib 3ec05583b2 Merge branch 'contrib/github_pr_14771' into 'master'
fix(example/system/console): Add 'info' to log_level command description (GitHub PR)

Closes IDFGH-13933

See merge request espressif/esp-idf!34413
2024-11-11 10:56:56 +08:00
Omar Chebib 50ac90b489 Merge branch 'fix/nmi_not_triggering_on_s3' into 'master'
fix(examples): fix NMI interrupt example to work on ESP32-S3

Closes IDFCI-2475

See merge request espressif/esp-idf!34267
2024-11-06 10:09:57 +08:00
Omar Chebib 569222488e Merge branch 'feature/bootloader_extra_dir' into 'master'
feat(bootloader): add the possibility to specify extra components directories

See merge request espressif/esp-idf!33433
2024-11-01 16:58:01 +08:00
Omar Chebib 729c55b790 docs: changed bootloader extra component to a property in build-system.rst 2024-11-01 13:52:01 +08:00
Omar Chebib e33bcaa6d3 feat(bootloader): use idf property to specify extra components directories 2024-11-01 13:52:01 +08:00
Omar Chebib 775c65a6b7 feat(bootloader): add the possibility to specify extra components directories 2024-11-01 13:52:01 +08:00
Omar Chebib f6d154e761 fix(examples): fix NMI interrupt example to work on ESP32-S3 2024-11-01 10:17:09 +08:00
Omar Chebib 66f6364bb1 Merge branch 'staging/esp32c61_bootloader_support' into 'master'
fix(bootloader_support): remove temporary notice in build test rule for ESP32-C61

Closes IDF-9260

See merge request espressif/esp-idf!33781
2024-10-31 17:38:58 +08:00
Omar Chebib 908e1e670a test(bootloader_support): enable analog super wdt reset for the ESP32-C61 2024-10-31 10:11:44 +08:00
Omar Chebib 4e4b6c1680 Merge branch 'fix/esp_hiram_heap' into 'master'
fix(esp_psram): fix a bug in PSRAM heap registration

Closes IDF-11288

See merge request espressif/esp-idf!33923
2024-10-21 10:01:05 +08:00
Omar Chebib d327186ddd fix(esp_psram): fix a bug in PSRAM heap registration
This commit fixes a bug in the PSRAM heap initialization that didn't take into
account the reserved himem area when registering the PSRAM virtual space as a heap.
2024-10-15 11:55:28 +08:00
Omar Chebib 72f83c3441 Merge branch 'staging/esp32c61_reset_reason' into 'master'
fix(soc): add missing reset reasons for the ESP32-C61

Closes IDF-9267

See merge request espressif/esp-idf!33736
2024-09-26 10:57:21 +08:00
Omar Chebib 22436dae10 fix(soc): add missing reset reasons for the ESP32-C61 2024-09-24 13:25:21 +08:00
Omar Chebib bc0b04d779 Merge branch 'staging/enabling_panic_test_esp32c61' into 'master'
test(panic): enable tests for esp32c61

Closes IDF-10994

See merge request espressif/esp-idf!33277
2024-09-10 11:37:38 +08:00
Omar Chebib d025ff4073 test(panic): enable tests for esp32c61 2024-09-05 14:50:58 +08:00
Omar Chebib c68c404cdc Merge branch 'fix/xtensa_nmi' into 'master'
fix(esp_hw_support): make the NMI interrupts available for the main application

Closes IDF-1891 and IDFGH-12631

See merge request espressif/esp-idf!32767
2024-09-02 11:18:32 +08:00
Omar Chebib 1157a27964 Merge branch 'bugfix/intr_alloc_rom_handler' into 'master'
fix(esp_hw_support): allow allocating interrupts with handlers in ROM with IRAM attribute

Closes IDF-7971

See merge request espressif/esp-idf!32561
2024-08-30 10:50:49 +08:00
Omar Chebib 18d545708a fix(esp_hw_support): allow allocating interrupts with handlers in ROM with IRAM attribute
The interrupt allocator now allows allocating an interrupt with a handler in ROM
and flags set to ESP_INTR_FLAG_IRAM
2024-08-29 14:21:43 +08:00
Omar Chebib 928859307f 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.
2024-08-29 13:55:47 +08:00
Omar Chebib 6f968394bd Merge branch 'bugfix/ldgen_file_single_entry' into 'master'
fix(ldgen): fix linker script generation from a single-entry fragment file

See merge request espressif/esp-idf!33033
2024-08-27 10:10:30 +08:00
Omar Chebib a8bb279dff fix(ldgen): fix linker script generation from a single-entry fragment file 2024-08-23 17:25:19 +08:00
Omar Chebib 305fabf2cf Merge branch 'bugfix/c5_mintstatus_value' into 'master'
fix(riscv): fix a bug that affected mintstatus CSR value in the CLIC

See merge request espressif/esp-idf!32176
2024-07-26 15:35:03 +08:00
Omar Chebib f06b235709 fix(riscv): fix a that affected mintstatus CSR value in the CLIC 2024-07-26 13:56:40 +08:00
Omar Chebib 6b10f1e952 Merge branch 'docs/explain_i2c_transmit_receive' into 'master'
docs: add explanation for I2C transmist-receive operation

Closes IDFGH-13002

See merge request espressif/esp-idf!31509
2024-06-21 15:38:57 +08:00
Omar Chebib 6a542c1fa0 docs: add explanation for I2C transmist-receive operation
* Closes https://github.com/espressif/esp-idf/issues/13952
2024-06-20 11:02:52 +08:00
Omar Chebib cd7c5a8bf5 Merge branch 'feat/ai_coproc_support_esp32p4' into 'master'
feat(riscv): add support for PIE coprocessor and HWLP feature

Closes IDF-9733 and IDF-9734

See merge request espressif/esp-idf!30576
2024-05-22 12:04:38 +08:00
Omar Chebib 82668dd3fe fix(riscv): make HWLP feature use direct saving of lazy saving 2024-05-21 17:27:46 +08:00
Omar Chebib 55acc5e5e7 feat(riscv): add support for PIE coprocessor and HWLP feature
FreeRTOS tasks may now freely use the PIE coprocessor and HWLP feature.
Just like the FPU, usiing these coprocessors result in the task being pinned
to the core it is currently running on.
2024-05-20 10:47:58 +08:00
Omar Chebib faf0ea8702 Merge branch 'fix/interrupt_source_c5_beta3' into 'master'
fix(esp32c5): fix interrupt sources number for the Beta3 version

See merge request espressif/esp-idf!30271
2024-04-17 10:11:15 +08:00
Omar Chebib f39b3099f6 fix(esp32c5): fix interrupt sources number for the Beta3 version 2024-04-16 18:17:00 +08:00
Omar Chebib 007a626049 Merge branch 'fix/esp32c5_interrupt_support' into 'master'
fix(esp32c5): add CLIC interrupt controller support for the ESP32-C5 (Beta3 & MP)

Closes IDF-8654 and IDF-8655

See merge request espressif/esp-idf!30017
2024-04-16 16:35:49 +08:00
Omar Chebib f6e935e013 fix(esp32c5): add CLIC interrupt controller support for the ESP32-C5 2024-04-16 10:38:14 +08:00
Omar Chebib 91bdbc1708 Merge branch 'fix/esp32p4_l2_cache_configured_from_flash' into 'master'
fix(spi_flash): fix a bug where L2 cache was configured from flash on the ESP32-P4

Closes IDF-9681

See merge request espressif/esp-idf!30189
2024-04-15 16:32:22 +08:00
Omar Chebib 6f888390ab fix(spi_flash): fix a bug where l2 cache was configured from flash 2024-04-15 13:55:38 +08:00
Omar Chebib 1683e9a92c Merge branch 'fix/unused_interrupts' into 'master'
fix(esp_hw_ ‎support): clear reserved interrupts that are unused or not applicable anymore

Closes IDF-7821 and IDF-9428

See merge request espressif/esp-idf!29639
2024-03-28 11:27:20 +08:00
Omar Chebib a79c6f7f67 fix(esp_hw_support): clear reserved interrupts that are not applicable for each target 2024-03-27 16:21:25 +08:00
Omar Chebib 793ca6d7a4 fix(i2c): fix issues related to timeout and alive interval tick
Fixes https://github.com/espressif/esp-idf/issues/4999

Former usage of I2C_CMD_ALIVE_INTERVAL_TICK macro overrode the ticks_to_wait
parameter when the latter was too big
2024-03-14 16:39:10 +08:00
Omar Chebib 67a2d48940 Merge branch 'bugfix/coredump_switch_stack' into 'master'
fix(espcoredump): Reconfigure the stack guard when using custom coredump stack

See merge request espressif/esp-idf!29355
2024-03-08 19:30:42 +08:00
Omar Chebib 9046bf1645 fix(espcoredump): Reconfigure the stack guard when using custom coredump stack 2024-03-08 17:25:42 +08:00
Omar Chebib eeb5e2f080 Merge branch 'refactor/cpu_interrupt_table' into 'master'
refactor(Core System/Interrupts): changed reserved interrupt functions to be now defined per SoC

Closes IDF-5728

See merge request espressif/esp-idf!29020
2024-03-06 11:26:17 +08:00
Omar Chebib c1849df791 refactor(esp_hw_support): changed reserved interrupt functions to be now defined per SoC 2024-02-28 15:21:10 +08:00
Omar Chebib 345bf79b4e Merge branch 'bugfix/esp32p4_remove_fence' into 'master'
fix(riscv): Remove the memory barrier when changing interrupt threshold

Closes IDF-7898

See merge request espressif/esp-idf!29119
2024-02-21 10:49:18 +08:00
Omar Chebib 2217854092 fix(riscv): Remove the memory barrier when changing interrupt threshold 2024-02-20 12:19:08 +08:00
Omar Chebib 6d045937d3 Merge branch 'feat/ulp_add_cycle_function' into 'master'
feat(lp_core): add a public function to get the timer cycle count

Closes IDFGH-12036

See merge request espressif/esp-idf!28910
2024-02-12 14:19:17 +08:00
Omar Chebib 5a32ca10ad feat(lp_core): add a public function to get the timer cycle count
Closes https://github.com/espressif/esp-idf/issues/13101
2024-02-09 16:50:02 +08:00
Omar Chebib 75eb489105 fix(bootloader): add legacy retained memory CRC calculation
* Closes https://github.com/espressif/esp-idf/issues/12849

In former versions of ESP-IDF, the user custom memory data in the retained memory
was taken into account during the CRC calculation. This was changed in a later
commit, the custom memory was ignored, therefore this can seen as a breaking change.
This commit gives the possibility to choose between the former (legacy) or
new way of calculating the CRC.
2024-02-09 16:49:56 +08:00
Omar Chebib 0db3268713 Merge branch 'bugfix/soft_uart_send_dummy_byte' into 'master'
fix(Peripheral Drivers/Dedicated GPIO): Remove dummy byte from the emulate_uart_send routine

See merge request espressif/esp-idf!28627
2024-01-24 10:38:12 +08:00
Omar Chebib 8ad898c8ab fix(peripheral_drivers/dedicated_gpio): Remove dummy byte from the emulate_uart_send routine
Let the user application decide for when to send the dummy byte instead of
hardcoding it from the assembly routine.
2024-01-23 15:59:13 +08:00
Omar Chebib cdde05335e Merge branch 'refactor/riscv_interrupt' into 'master'
refactor(riscv): Refactor crosscore interrupts and core interrupt code

Closes IDF-5720, DOC-5177, and IDF-7899

See merge request espressif/esp-idf!27845
2024-01-19 10:51:04 +08:00
Omar Chebib 0d9d004d00 Merge branch 'doc/esp32p4_intr_alloc' into 'master'
docs(soc): add a few details in the `intr_alloc` documentation for the ESP32-P4

Closes IDF-8781

See merge request espressif/esp-idf!28249
2024-01-19 10:50:42 +08:00
Omar Chebib 71e7f175ff Merge branch 'bugfix/stack_watermark_fpu_esp32p4' into 'master'
fix(riscv): adjust TCBs lowest stack address when the FPU is used

Closes IDF-8995 and IDF-8423

See merge request espressif/esp-idf!28429
2024-01-19 10:04:29 +08:00
Omar Chebib 102d5bbf72 refactor(riscv): added a new API for the interrupts 2024-01-18 16:36:53 +08:00
Omar Chebib 5cdf145f55 refactor(riscv): refactor crosscore interrupt 2024-01-18 16:27:36 +08:00
Omar Chebib c7e63078b7 fix(riscv): adjust TCBs lowest stack address when the FPU is used 2024-01-18 13:06:29 +08:00
Omar Chebib 9a6791b79d docs(soc): add a few details in the intr_alloc documentation for the ESP32-P4 2024-01-04 11:21:56 +08:00
Omar Chebib 227c5d2cb7 Merge branch 'bugfix/freertos_task_noaffinity_print' into 'master'
fix(freertos): display tasks with no affinity as -1 during tracing

Closes IDFGH-11759

See merge request espressif/esp-idf!28073
2023-12-26 10:11:31 +08:00
Omar Chebib 1472343439 fix(freertos): display tasks with no affinity as -1 during tracing
Closes https://github.com/espressif/esp-idf/issues/12858
2023-12-22 12:11:30 +08:00
Omar Chebib f27d65c7bc Merge branch 'contrib/github_pr_12852' into 'master'
cmake: correct the parameter annotation of idf_build_set_property (GitHub PR)

Closes IDFGH-11752

See merge request espressif/esp-idf!28067
2023-12-22 10:41:24 +08:00
Omar Chebib dc8fdae31b docs(freertos): revert usage of hidden option CONFIG_ESP_SYSTEM_SINGLE_CORE_MODE when :ref: is used 2023-11-30 16:33:28 +08:00
Omar Chebib ca1a0bdc59 Merge branch 'bugfix/esp32p4_fpu_check' into 'master'
fix(riscv): fix a bug in FPU exception handling

See merge request espressif/esp-idf!27045
2023-11-15 17:19:55 +08:00
Omar Chebib e56f5b15cc fix(riscv): fix a bug in FPU exception handling
On the ESP32-P4, it is possible to have an exception because of an FPU instruction
while EXT_ILL CSR is not zero and its FPU bit is not set.
2023-11-14 06:55:08 +00: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 342535f47c Merge branch 'contrib/github_pr_12105' into 'master'
feat(espcoredump): Support for not overwriting existing core dump in flash (GitHub PR)

Closes IDFGH-10907

See merge request espressif/esp-idf!26865
2023-11-03 10:51:39 +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
Omar Chebib 51434a8367 Merge branch 'feature/esp32p4_fpu_support' into 'master'
feat(riscv): implement FPU support for RISC-V targets

Closes IDF-7770

See merge request espressif/esp-idf!25871
2023-10-23 16:50:36 +08:00