Commit Graph

670 Commits

Author SHA1 Message Date
Marius Vikhammer
0a57b255d2 ci(qemu): increase timeout for esp_intr_dump test 2024-06-25 19:26:50 +08:00
harshal.patil
bd4e48d0d9
feat(cpu): Configure panic exception generation using asm illegal instruction 2024-06-25 11:55:24 +05:30
morris
466f54e375
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-23 21:57:36 +08:00
morris
478a8b5dd6
fix(lcd): build errors with deprecated lcd types in cpp
Closes https://github.com/espressif/esp-idf/issues/14029
2024-06-23 21:54:26 +08:00
Alexey Lapshin
e863e6069c Merge branch 'feat/enable-gdbstub-test-for-p4' into 'master'
feat(gdbstub): enable test for esp32p4

Closes IDF-8992 and IDF-7510

See merge request espressif/esp-idf!31479
2024-06-21 15:55:48 +08:00
Marc Finet
9456c157ff feat(build): Add config to disable warn be considered as errors
The -Werror=all activates error for all warnings in -Wall, however, it
does not activate error for other default warnings, such as:
- int-conversion (pointer from integer w/o a cast)
- incompatible-pointer-types
- discarded-qualifiers

Which are IMO even more important that -Wall.

This commit fixes that by activating error for all warnings (i.e. from
-Wall and default ones) and removing those from -Wextra, as the culprit
commit seemed to address.

Fixes: 60f29236f6 "Build system: Raise warning level" (2016-11-16)

In order to avoid long analysis during esp-idf upgrade, provide a way to
restore the previous -Werror=all behavior that consider only warnings
from -Wall (and not default ones).

Also add a hint to use the Kconfig option on compilation error, but warn
that fixing the code is the preferred way.

Merges https://github.com/espressif/esp-idf/pull/11239

Suggested-By: Ivan Grokhotkov <ivan@espressif.com>
2024-06-20 14:43:26 +08:00
Alexey Lapshin
22c4ee05b0 feat(gdbstub): enable test for esp32p4 2024-06-13 13:21:47 +07:00
harshal.patil
a8f509f481
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-10 11:55:58 +05:30
igor.udot
d817841cea ci(secure_boot): replace subprocess with esptool 2024-06-05 09:45:05 +08:00
nilesh.kale
f5dd1074b6 feat: enable secure boot for c5
This MR added suppport for secure boot in ESP32-C5.
2024-05-30 11:43:17 +05:30
Erhan Kurubas
002faf3b0a ci(panic): extend extram_stack tests 2024-05-27 14:51:30 +02:00
Erhan Kurubas
55261747fc ci(panic): add coredump tcb corrupted test 2024-05-27 13:55:14 +02:00
Jeroen Domburg
a1ba660b4a 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-27 12:41:18 +08:00
Island
a3cb889ba3 Merge branch 'bugfix/fix_bci_416' into 'master'
Fixed BLE interrupt allocation using esp API on ESP32C3

See merge request espressif/esp-idf!30652
2024-05-22 17:57:01 +08:00
C.S.M
a254eb5818 test(esp_intr_dump): Fix the esp intr dump expected output because the changes happened in brownout 2024-05-21 15:06:29 +08:00
Sarvesh Bodakhe
6f966dd0ee fix(esp_wifi): Add some bugfixes and cleanup in softAP
1. Fix wrong reason code in 'WIFI_EVENT_AP_STADISCONNECTED' event
2. cleanup in softAP for disconnecting connected station
3. Update examples to display reason while processing WIFI_EVENT_AP_STADISCONNECTED event
2024-05-19 00:52:59 +05:30
Alexey Lapshin
2b36636f6f fix(system): print warning if stray section is found while linking 2024-05-17 13:37:42 +04:00
Alexey Gerenkov
8b93323da6 Merge branch 'upgrade_clang_toolchain' into 'master'
Upgrade clang toolchain version to 'esp-17.0.1_20240419'

See merge request espressif/esp-idf!29811
2024-05-14 21:47:06 +08:00
chenjianhua
2c93450d59 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-05-14 14:41:39 +08:00
Erhan Kurubas
8e524d708c fix(coredump): fix buffer overflow inside esp_core_dump_get_summary
Closes https://github.com/espressif/esp-idf/issues/13754
2024-05-07 06:49:28 +02:00
Erhan Kurubas
94fc3630f5 ci(panic): add flash encrypted coredump tests 2024-05-06 15:54:33 +02:00
Erhan Kurubas
551d91ea8a ci(coredump): fix capture dram tests 2024-05-06 15:43:43 +02:00
Alexey Gerenkov
86ef0c23fd refactor(test): Change clang build tests app name 2024-05-03 16:55:18 +03:00
Alexey Gerenkov
57f61d2311 feat(tools): Update Clang version to esp-17.0.1_20240419 2024-05-03 16:55:13 +03:00
Konstantin Kondrashov
8b418d4b09 feat(esp_system): Print backtrace for both CPUs when cache error does not determine CPU 2024-04-30 15:20:58 +03:00
Erhan Kurubas
3b8191cf5d feat(coredump): save .bss, .data and .heap sections to the elf file 2024-04-23 19:07:51 +03: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
8a66e059e9 Merge branch 'feature/sdmmc_p4_psram' into 'master'
feat(sdmmc): add support for PSRAM DMA

Closes IDF-9662

See merge request espressif/esp-idf!30044
2024-04-17 18:10:00 +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
c9efc9cc83 Merge branch 'bugfix/p4_reserved_rtc_mem' into 'master'
fix(rtc_memory): fix conflict between LP-ROM and RTC reserved

Closes IDF-9408

See merge request espressif/esp-idf!30012
2024-04-17 16:45:57 +08:00
Marius Vikhammer
4533f16c34 fix(rtc_memory): fix conflict between LP-ROM and RTC reserved 2024-04-17 13:37:56 +08:00
Konstantin Kondrashov
b6c8a139be Merge branch 'feature/linux_improve_delay_func' into 'master'
feat(esp_rom): Improves esp_rom_delay_us for linux target

See merge request espressif/esp-idf!30217
2024-04-16 14:44:21 +08:00
Mahavir Jain
024b040300
test(memprot): enable memory protection tests for P4 2024-04-14 21:16:42 +05:30
Ivan Grokhotkov
49b4bc175e
feat(sdmmc): add support for PSRAM DMA on ESP32-P4 2024-04-12 12:56:18 +02:00
Konstantin Kondrashov
b3d1b1783b feat(esp_rom): Improves esp_rom_delay_us for linux target 2024-04-12 12:52:38 +03:00
Jakob Hasse
d9a6ae2b3c Merge branch 'refactor/simplify_mock_build_tests' into 'master'
refactor(cmock): simplified mock build tests

See merge request espressif/esp-idf!30038
2024-04-12 16:09:39 +08:00
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
Jakob Hasse
51f6bb8931 refactor(cmock): simplified mock build tests 2024-04-04 16:14:13 +02:00
Chen Yudong
7d13f8210f ci: fix pytest generic env markers 2024-04-03 18:10:43 +08:00
Laukik Hase
48503dd39f
fix(esp_hw_support): Fix the flash I/DROM region PMP protection 2024-04-02 18:41:07 +05:30
Jiang Jiang Jian
8da9eb5168 Merge branch 'ci/reenable_bootloader_sections_test_esp32c2' into 'master'
ci(system): re-enable bootloader_sections test for ESP32-C2

See merge request espressif/esp-idf!29852
2024-04-01 23:13:00 +08:00
Marius Vikhammer
b8a254f33f test(storage): fixed failing c-file api test 2024-04-01 15:14:22 +08:00
Jiang Jiang Jian
d434034513 Merge branch 'bugfix/storage_spelling' into 'master'
fix(storage,esp_pm): spelling fixes by codespell pre-commit hook

See merge request espressif/esp-idf!29898
2024-03-29 11:59:48 +08:00
Michael (XIAO Xufeng)
5d6c56c20d Merge branch 'fix/unused_mmap_include' into 'master'
fix(all): remove unused header includes

See merge request espressif/esp-idf!29816
2024-03-29 10:20:08 +08:00
Ivan Grokhotkov
10cc15b150
fix(storage): applied spelling fixes by codespell pre-commit hook 2024-03-28 13:00:54 +01:00
Wan Lei
e84c7f00a5 Merge branch 'feat/c6lite_c61_ci_header_tmp_app' into 'master'
feat(esp32c61): ci enable header check (stage 7/8)

See merge request espressif/esp-idf!29775
2024-03-28 11:45:20 +08:00
wanlei
535afdd7f4 feat(esp32c61): ci enable header check, fix c61 build 2024-03-27 19:39:59 +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
Ivan Grokhotkov
ce2ce972b8
ci(system): re-enable bootloader_sections test for ESP32-C2 2024-03-26 16:04:09 +01:00
Xiao Xufeng
313c4f2cdc fix(all): remove unused header includes 2024-03-25 13:58:40 +08:00
Alexey Lapshin
cb82161dae feat(system): esp32p4: support panic tests 2024-03-21 15:36:36 +04:00
Jakob Hasse
e4aa326c3a feat(log): Added PRIuSIZE printf formatter macro 2024-03-20 16:41:22 +08:00
Guillaume Souchere
85c2daee5b test(esp_intr_dump): Enable test for esp32p4
Added back intr_dump test on esp32p4 target.
Added esp32p4.txt expected output file containing
the list of interrupts.
2024-03-14 11:35:24 +01:00
morris
3f76aca0a3 Merge branch 'contrib/github_pr_13256' into 'master'
Use __builtin_unreachable in HAL_ASSERT no-assert mode (GitHub PR)

Closes IDFGH-12202

See merge request espressif/esp-idf!29237
2024-03-06 18:45:29 +08:00
Marius Vikhammer
efc3f9fa88 Merge branch 'bugfix/rom_systimer_config' into 'master'
fix(rom): fixed systimer always using ROM implementation

See merge request espressif/esp-idf!29354
2024-03-06 12:26:06 +08:00
morris
be8033701c fix(hal): use __builtin_unreachable in no-assert mode
otherwise due to esp-idf using -Werror, we can get errors in code which
uses HAL_ASSERT if for example the compiler believes that a variable is
used uninitialised, or similar.

Inspired by https://github.com/espressif/esp-idf/pull/13256
2024-03-06 11:50:32 +08:00
Marius Vikhammer
b809267359 fix(rom): fixed systimer always using ROM implementation 2024-03-06 09:47:12 +08:00
Konstantin Kondrashov
43c604f145 Merge branch 'feature/move_efuse_related_inits_into_component' into 'master'
feat(efuse): Move efuse-related init steps into the component

Closes IDF-8759 and IDF-8761

See merge request espressif/esp-idf!28422
2024-03-04 17:34:44 +08:00
KonstantinKondrashov
f9800e0726 feat(efuse): Move efuse-related init steps into the component 2024-03-01 21:07:03 +02:00
Mahavir Jain
e18fd01d0d Merge branch 'fix/pmp_idcache_reg_prot' into 'master'
fix(esp_hw_support): Fix the I/DCACHE region PMP protection

See merge request espressif/esp-idf!28525
2024-02-29 21:39:11 +08:00
Alexey Lapshin
fdb7a43752 Merge branch 'feature/esp32p4_concontiguous_mem_mvp' into 'master'
feat(esp_system): allow .bss to spill over into L2MEM above 0x4ff40000 on P4

See merge request espressif/esp-idf!28783
2024-02-29 16:28:13 +08:00
Alexey Lapshin
824c8e0593 feat(esp_system): allow .bss to spill over into L2MEM above 0x4ff40000
This commit introduce SOC_MEM_NON_CONTIGUOUS_SRAM flag (that enebled for
esp32p4). If SOC_MEM_NON_CONTIGUOUS_SRAM is enabled:

- LDFLAGS+=--enable-non-contiguous-regions
- ldgen.py replaces "arrays[*]" from sections.ld.in with objects under
  SURROUND keyword. (e.g. from linker.lf: data -> dram0_data SURROUND(foo))
- "mapping[*]" - refers to all other data

If SOC_MEM_NON_CONTIGUOUS_SRAM, sections.ld.in file should contain at
least one block of code like this (otherwise it does not make sense):

  .dram0.bss (NOLOAD) :
  {
    arrays[dram0_bss]
    mapping[dram0_bss]
  } > sram_low

  .dram1.bss (NOLOAD) :
  {
    /* do not place here arrays[dram0_bss] because it may be splited
     * between segments */
    mapping[dram0_bss]
  } > sram_high
2024-02-28 19:41:25 +04:00
Darian Leung
87e2d842ab
change(console): Add build test for no console output
This commit adds a build test to test the scenario where both the primary and
secondary console outputs are disabled by Kconfig.
2024-02-28 20:39:52 +08:00
Laukik Hase
2265c0f230
feat(tools/test_apps): Add violation tests for the flash I/DROM region
- For SoCs supporting PMP
2024-02-28 10:54:38 +05:30
Konstantin Kondrashov
b8e2342bf8 Merge branch 'bugfix/bootloader_flash_update_size' into 'master'
fix(bootloader_support): Adds bootloader_flash_update_size() for the rest chips

Closes IDFGH-12123

See merge request espressif/esp-idf!29049
2024-02-22 15:49:22 +08:00
Konstantin Kondrashov
1253ab6e27 Merge branch 'feature/move_esp_timer_related_inits_into_component' into 'master'
feat(esp_timer): Move esp_timer-related init steps into the component

Closes IDF-8755

See merge request espressif/esp-idf!28664
2024-02-20 16:49:31 +08:00
Konstantin Kondrashov
d348258f2c fix(test_apps): Fix coredump_uart_bin_crc.test_hw_stack_guard_cpu0 test 2024-02-19 19:21:40 +08:00
Konstantin Kondrashov
49ba674fb5 feat(esp_timer): Move esp_timer-related init steps into the component 2024-02-19 19:21:40 +08:00
Konstantin Kondrashov
9ffafd53b2 fix(bootloader_support): Adds bootloader_flash_update_size() for the rest chips
Closes https://github.com/espressif/esp-idf/issues/13179
2024-02-14 17:41:20 +02:00
fl0wl0w
90d1dcfd76 feat(freertos): Introduced new Kconfig option CONFIG_FREERTOS_NUMBER_OF_CORES
This commit replaces the use of portNUM_PROCESSORS and configNUM_CORES
macros in all of ESP-IDF. These macros are needed to realize an SMP
scenario by fetching the number of active cores FreeRTOS is running on.
Instead, a new Kconfig option, CONFIG_FREERTOS_NUMBER_OF_CORES, has been
added as a proxy for the FreeRTOS config option, configNUMBER_OF_CORES.
This new commit is now used to realize an SMP scenario in various places
in ESP-IDF.

[Sudeep Mohanty: Added new Kconfig option CONFIG_FREERTOS_NUMBER_OF_CORES]

Signed-off-by: Sudeep Mohanty <sudeep.mohanty@espressif.com>
2024-02-09 09:11:28 +01:00
Mahavir Jain
34723ad12c Merge branch 'bugfix/ota_anti_rollback_checks_2' into 'master'
feat(bootloader_support): Read secure_version under sha256 protection

Closes IDF-9013

See merge request espressif/esp-idf!28740
2024-02-08 23:10:08 +08:00
Marius Vikhammer
2bb16ed45b refactor(pthread): decouple pthread_init from esp_system 2024-02-08 09:40:46 +08:00
Mahavir Jain
3305cb4d23 fix(ota): additional checks for secure version in anti-rollback case
Some additional checks related to secure version of the application in
anti-rollback case have been added to avoid any attempts to boot lower
security version but valid application (e.g., passive partition image).

- Read secure_version under sha256 protection

- First check has been added in the bootloader to ensure correct secure
  version after application verification and loading stage. This check
  happens before setting up the flash cache mapping and handling over
  the final control to application. This check ensures that application
  was not swapped (e.g., to lower security version but valid image) just
  before the load stage in bootloader.

- Second check has been added in the application startup code to ensure
  that currently booting app has higher security version than the one
  programmed in the eFuse for anti-rollback scenario. This will ensure
  that only the legit application boots-up on the device for
  anti-rollback case.
2024-02-07 22:23:10 +08:00
Fu Hanxi
e9f4d555a6
test: add missing host_test marker for qemu tests 2024-01-29 13:52:40 +01: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
Marius Vikhammer
9b1b384ea8 Merge branch 'bugfix/remove_wdt_both_cpus_test' into 'master'
test(panic): remove WDT both CPU test

Closes IDF-9077 and IDF-6560

See merge request espressif/esp-idf!28623
2024-01-24 10:11:28 +08:00
Jakob Hasse
273324c635 Merge branch 'bugfix/linux_wifi_mock' into 'master'
fix(linux): Fixed esp_wifi mock build test

See merge request espressif/esp-idf!28607
2024-01-23 18:43:12 +08:00
Marius Vikhammer
297607587b test(panic): remove WDT both CPU test
Test never worked on S3/P4 and was flakey on ESP32. Hard to design a reliable test
case that triggers both WDT at the exact same time.
2024-01-23 11:55:18 +08:00
Jakob Hasse
99914e1f09 fix(linux): Fixed esp_wifi mock build test 2024-01-23 09:39:03 +08:00
nilesh.kale
59c5b5fe6b fix(bootloader): Fix compilation issue in bootloader build during verbose+sb+fe 2024-01-18 12:15:15 +05:30
Fu Hanxi
4afb86fce3
test: fix custom additional app for multicore test cases 2024-01-16 20:20:42 +01:00
Fu Hanxi
bb375ee79a
ci(ethernet): migrate from .gitlab/ci/rules.yml to .build-test-rules.yml 2024-01-10 15:31:11 +01:00
Armando
3c5a4f9e8a ci(p4): added todo jira for disabled tests on p4 2024-01-04 09:36:38 +08:00
Armando
907b876354 ci(p4): temporarily disable failed ci tests on p4 2024-01-04 09:36:06 +08:00
Armando
1ab742b3c3 ci(p4): enable esp32p4 target test 2024-01-04 09:34:55 +08:00
Marius Vikhammer
9f1d001849 Merge branch 'feat/cache_error_c6_h2' into 'master'
fix(panic): fixed cache error being reported as illegal instruction

Closes IDF-6398, IDF-5657, IDF-7015, and IDF-6733

See merge request espressif/esp-idf!27430
2023-12-21 10:32:06 +08:00
Marius Vikhammer
4f1570e904 Merge branch 'ci/fix_qemu_intr_tests' into 'master'
ci: fix flakey intr_dump tests in QEMU

Closes IDF-8899

See merge request espressif/esp-idf!27983
2023-12-21 10:25:06 +08:00
Marius Vikhammer
c4f2abbfd3 fix(interrupts): fixed flakey intr dump test 2023-12-19 10:36:04 +08:00
Marius Vikhammer
0e2bd068be feat(console): added config option for console task affinity 2023-12-19 10:35:14 +08:00
Song Ruo Jing
0e759c6deb Merge branch 'refactor/esp_driver_uart' into 'master'
refactor(uart): make uart driver as component

Closes IDF-8384

See merge request espressif/esp-idf!27333
2023-12-18 19:16:34 +08:00
Sonika Rathi
12e7e3f1a2 Merge branch 'update/sdmmc_test_app' into 'master'
fix(sdmmc): Migrate erase/trim test cases from unit-test-app to component-test-app

See merge request espressif/esp-idf!26799
2023-12-15 23:50:08 +08:00
Song Ruo Jing
bc09031496 refactor(uart_vfs): Move uart implementation of vfs to esp_driver_uart
Deprecated esp_vfs_dev_uart_xxx APIs
vfs_uart test case moved to esp_driver_uart test_apps
Astyle fixed for uart_vfs
2023-12-15 17:14:55 +08:00
laokaiyao
2b44d62e43 feat(esp32c5): support esp32c5 g0 components 2023-12-08 15:12:24 +08:00
Erhan Kurubas
892315292b Merge branch 'save_twdt_to_coredump' into 'master'
feat(coredump): save twdt panic output to coredump elf file

Closes IDF-908

See merge request espressif/esp-idf!27024
2023-12-07 17:47:58 +08:00
sonika.rathi
8e0ce2fda4 fix(sdmmc): remove the legacy test cases from 'components/sdmmc/test' 2023-12-06 11:14:20 +01:00
sonika.rathi
1b35373e01 fix(sdmmc): add pytest script to component test app 2023-12-06 11:14:20 +01:00