Commit Graph

342 Commits

Author SHA1 Message Date
Mahavir Jain
11c8501f32 Merge branch 'refactor/hal_mpu_test' into 'master'
refactor(tools/test_apps): Move HAL tests for MPU to the `panic` test-app

Closes IDF-5590

See merge request espressif/esp-idf!26422
2023-10-27 20:50:19 +08:00
morris
cfbf857924 Merge branch 'refactor/esp_driver_pcnt' into 'master'
refactor(pcnt): make pcnt driver as component

Closes IDF-8380

See merge request espressif/esp-idf!26476
2023-10-27 12:37:36 +08:00
Xiao Xufeng
1f5fb3f921 spi_flash: fixed issue that enabling HPM-DC by default may cause app unable to restart 2023-10-24 10:38:08 +08:00
morris
98b5ea7bdf refactor(pcnt): make pcnt driver as component 2023-10-23 01:45:43 +00:00
Laukik Hase
3f67722274
refactor(tools/test_apps): Move HAL tests for MPU to the panic test-app 2023-10-13 10:16:57 +05:30
KonstantinKondrashov
a2802ef121 feat(tools): Enables unicore_bootloader test for ESP32P4 2023-10-10 11:11:32 +00:00
C.S.M
b2d7f4d0cd Merge branch 'bugfix/compile_usj_fail_c6' into 'master'
ci(usb_serial_jtag): Add a pytest for usb_serial_jtag print.

Closes IDF-3201

See merge request espressif/esp-idf!26231
2023-10-10 13:47:19 +08:00
Cao Sen Miao
403f237825 feat(usb_serial_jtag): Add pytest for usb_serial_jtag 2023-10-10 10:05:46 +08:00
Alexey Lapshin
5c41edb863 fix(tools): fix panic test gcc 13.1.0 warnings 2023-10-09 12:13:02 +04:00
KonstantinKondrashov
28b8a5d9b4 fix(esp_system): Fix mixing logs, remove early info logs for 2nd CPU
Fixes mixing logs when two cores use esp_rom_printf
2023-10-02 12:50:40 +00:00
Ivan Grokhotkov
2fe4fe2c19
ci(system): re-enable build test app for C2 and C6, clean up configs
Since we can use CONFIG_NAME now to specify build rules, we don't need
to have target-specific config files.
2023-09-22 13:46:00 +02:00
Peter Dragun
3981aae79f feat(tools/monitor): move target tests to monitor repo 2023-09-15 16:04:11 +02:00
wuzhenghui
6fea0260a3 fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled 2023-09-12 16:30:42 +08:00
Liu Linyan
5bab168b0e feat(ble_mesh): Support Bluetooth Mesh Protocol v1.1 (Preview) 2023-09-08 21:37:33 +08:00
Roland Dobai
2fbb63124f Merge branch 'feature/coredump_panic_details' into 'master'
feat(coredump): add panic details to the elf file

Closes IDF-7788 and IDF-7789

See merge request espressif/esp-idf!25198
2023-08-28 13:05:58 +08:00
Erhan Kurubas
4714521b21 feat(coredump): add panic details to the elf file 2023-08-24 10:20:56 +02:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Lu Ze Yu
14d87655da Merge branch 'fix/fix_intr_alloc_expected_result' into 'master'
fix(ci): fix expected intr_dump result

Closes IDFCI-1790

See merge request espressif/esp-idf!25459
2023-08-22 15:21:42 +08:00
Planck (Lu Zeyu)
99ee7d6b18 fix(ci): fix expected intr_dump result 2023-08-22 12:25:53 +08:00
Marius Vikhammer
f371679a8d ci(build_test): enable system/build apps for C6 and C2 2023-08-18 13:08:06 +08:00
Armando (Dou Yiwen)
337aeb4b78 Merge branch 'feature/add_esp32p4_hello_world' into 'master'
esp32p4: introduced new chip ESP32P4: Hello World! 🌏

Closes IDF-7523

See merge request espressif/esp-idf!25013
2023-08-10 16:04:55 +08:00
Armando
706d684418 feat(esp32p4): introduced new target esp32p4, supported hello_world 2023-08-09 19:33:25 +08:00
Jakob Hasse
8b9f8555ea refactor(tools): public header check also checks c++ now
* Also changed --only-dir argument to accept system-wide
  directories instead of directories from IDF root
2023-08-09 16:23:13 +08:00
Alexey Lapshin
16f34704cb fix(gdbstub): skip xtensa_stepping_bug testcase until fixed 2023-08-04 07:41:21 +04:00
Alexey Lapshin
47e400c296 feature(gdbstub): Move runtime gdbstub out of panic config
Closes https://github.com/espressif/esp-idf/pull/11569
2023-08-01 14:28:07 +04:00
Alexey Lapshin
5f07ed87f6 Merge branch 'fix/esp32c2-gdbstub-runtime' into 'master'
fix(freertos): enable esp32c2 runtime-gdbstub

See merge request espressif/esp-idf!24858
2023-07-28 15:41:07 +08:00
Ivan Grokhotkov
2bcb227542
ci(system): add test app for esp_intr_dump 2023-07-19 16:47:41 +02:00
Zim Kalinowski
1b6ef8a812 Merge branch 'bugfix/included-esp-system-in-helloworld-example' into 'master'
fix(example): included esp_system.h in helloworld example in order to fix warning

See merge request espressif/esp-idf!24729
2023-07-19 16:20:49 +08:00
Alexey Lapshin
99ac68246e fix(freertos): enable esp32c2 runtime-gdbstub 2023-07-18 12:15:33 +04:00
Roland Dobai
30672c7c65 Merge branch 'docs/monitor_rom_address_decoding' into 'master'
esp_idf_monitor: ROM ELF address decoding docs and tests

Closes IDF-372

See merge request espressif/esp-idf!24271
2023-07-17 18:52:29 +08:00
Zim Kalinowski
d155a04fd5 fix(example): included esp_system.h in helloworld example in order to fix warning 2023-07-12 10:09:41 +08:00
morris
f0c07f82b5 fix(test): check call graph for hal component 2023-07-05 09:09:01 +08:00
Alexey Lapshin
4df3ff619e feat(esp_system): implement hw stack guard for riscv chips
- add hardware stack guard based on assist-debug module
- enable hardware stack guard by default
- disable hardware stack guard for freertos ci.release test
- refactor rtos_int_enter/rtos_int_exit to change SP register inside them
- fix panic_reason.h header for RISC-V
- update docs to include information about the new feature
2023-07-01 16:27:40 +00:00
radim.karnis
6a2a7521c8 ci(esp_idf_monitor): Extend test_app for ROM ELF address decoding 2023-06-28 15:42:05 +02:00
Martin Vychodil
65bc1ed055 System: remove digital-system reset within OS restart when Memprot on 2023-06-26 20:22:59 +02:00
Marius Vikhammer
86c5b437b5 Merge branch 'ci/trim_test_apps' into 'master'
core-system: limit build components for core-system test apps

Closes IDF-7092

See merge request espressif/esp-idf!24167
2023-06-13 15:31:00 +08:00
Marius Vikhammer
6d11c37ff1 core-system: trim build components for core-system test apps 2023-06-13 09:14:42 +08:00
Alexey Gerenkov
d4e1935ba8 Merge branch 'feature/compiler_rt_support' into 'master'
build: Adds support for compiler-rt in Clang toolchain

See merge request espressif/esp-idf!21213
2023-06-09 04:41:34 +08:00
Alexey Gerenkov
e9345bcced build: Adds support for Clangs's toolchain compiler-rt 2023-06-08 16:49:37 +03:00
Marius Vikhammer
c60b79978d Merge branch 'ci/system_test_apps_optimize' into 'master'
ci: cleanup tools/system test apps

See merge request espressif/esp-idf!23886
2023-06-01 13:32:00 +08:00
Marius Vikhammer
350650eb73 ci: cleanup tools/system test apps 2023-05-30 15:42:37 +08:00
Alexey Lapshin
9220eea4e4 test: gdbstub_runtime: initial commit 2023-05-19 20:15:58 +08:00
Alexey Lapshin
96768d7596 test: panic: use gdb-no-python to have ability to send signals 2023-05-19 20:15:58 +08:00
KonstantinKondrashov
b605404b06 esp_app_format: IRAM space optimization 2023-05-17 23:40:59 +08:00
KonstantinKondrashov
69838403f9 esp_bootloader_format: Adds bootloader description structure to read bootloader version from app
Closes https://github.com/espressif/esp-idf/issues/8800
Closes https://github.com/espressif/esp-idf/issues/9132
2023-05-10 21:39:52 +08:00
Jakob Hasse
bc7a7e8451 Merge branch 'bugfix/cmake_cxx_language_standard' into 'master'
cmake: Corrected setting of C++ language standard

See merge request espressif/esp-idf!23520
2023-05-10 10:28:43 +08:00
Marius Vikhammer
a300b3eb81 ci: fix invalid kconfig options in system test apps 2023-05-09 11:27:55 +08:00
Jakob Hasse
0244c24c8d cmake: Corrected setting of C++ language standard
* reverted old faulty mechanism to set different
  standard according to the toolchain
* Using -std=gnu++2b now for both gcc and clang
* Added a build test app to check the C++ standard in IDF
* Updated english docs to reflect the change to C++23
2023-05-09 10:09:19 +08:00
Jakob Hasse
0a3cfce671 Merge branch 'contrib/github_pr_10895' into 'master'
Fix possible conversion errors by using __builtin_ffsll (GitHub PR)

Closes IDFGH-9541

See merge request espressif/esp-idf!23429
2023-05-04 10:41:46 +08:00
Jakob Hasse
ca44fc3847 cxx/esp_hw_support: added build test, changed parameter types
Changed rv_utils_intr_edge_ack and esp_cpu_intr_edge_ack to
take uint32_t instead of int to avoid build errors.

The test is to test in particular that __builtin_ffsll, used in
xt_utils.h, which is included via esp_cpu.h, compiles fine
in C++20 with -Wsign-conversion enabled.

Closes https://github.com/espressif/esp-idf/pull/10895
2023-04-26 19:06:39 +08:00
Jakob Hasse
620cc586a2 tools: setting components to main to reduce build time 2023-04-25 15:42:22 +08:00
Marius Vikhammer
edb2994da9 ci: disable test_dram_reg2_execute_violation on esp32s2 2023-04-25 09:57:23 +08:00
laokaiyao
bf2a7b2df6 esp32h4: removed esp32h4 related codes 2023-04-23 12:03:07 +00:00
laokaiyao
1f84f6c6ed esp32h4: remove esp32h4 target from ci 2023-04-20 15:19:47 +08:00
Ivan Grokhotkov
35ea136d5a
newlib: implement fsync for the case of CONFIG_VFS_SUPPORT_IO=0
This feature allows calling fsync even if the vfs component is not
used.
The second part of the commit adds an fsync call in the panic test app
enabling it to be used over usb-serial-jtag.
2023-04-18 11:19:36 +02:00
Ivan Grokhotkov
79a9615022
ci: add build test for CONFIG_ESP_CONSOLE_USB_CDC_SUPPORT_ETS_PRINTF 2023-04-12 11:17:41 +02:00
Alexey Lapshin
2b6de209c8 tests: panic: add esp32c6 esp32h2 2023-04-10 17:49:51 +08:00
Marius Vikhammer
5cbd311ecf system: add kconfig option for using parts of SRAM1 for IRAM
Using parts of SRAM1 for IRAM allows apps with more statically allocated IRAM

Closes https://github.com/espressif/esp-idf/issues/9824
2023-04-07 07:12:58 +00:00
KonstantinKondrashov
444c27e4e6 test_apps: Test multicore app can be run by unicore bootloader 2023-03-29 03:47:55 +08:00
Mahavir Jain
86b6f87d68 Merge branch 'bugfix/ram_loadable_elf_flash_mmap_issue' into 'master'
Fix flash mmap data integrity issue for RAM loadable ELF case

See merge request espressif/esp-idf!22802
2023-03-23 12:13:35 +08:00
Armando
eee34bcf70 mspi: fix build failure under assertion disable 2023-03-21 10:14:59 +08:00
Mahavir Jain
d0c8b01956
test_apps: add test case for flash mmap data integrity in ram loadable app 2023-03-20 11:12:11 +05:30
Jakob Hasse
7dbe9687f9 Merge branch 'bugfix/esp_shared_stack_watchpoint_setting' into 'master'
bugfix(esp_system): made watchpoint setting configuration-dependent

Closes IDFGH-9003

See merge request espressif/esp-idf!21738
2023-03-20 10:19:05 +08:00
Jiang Jiang Jian
2658fb7623 Merge branch 'feature/add_memprot_support_for_esp32h2' into 'master'
esp32h2: enable memory protection scheme using PMA and PMP

Closes IDF-6452 and IDF-6332

See merge request espressif/esp-idf!22699
2023-03-17 15:19:52 +08:00
Wan Lei
3b62bf59c4 Merge branch 'bugfix/fix_deep_sleep_crash_when_psram_high_freq' into 'master'
mspi: turn down freq to fix crash when sleep

Closes IDF-6881

See merge request espressif/esp-idf!22491
2023-03-16 14:11:21 +08:00
wanlei
a48d1a85c1 mspi: add test_app measuring time cost of mspi APIs
and merge mspi unit test into this
2023-03-16 11:11:43 +08:00
Mahavir Jain
b29ed0ba0b
test_apps: enable memprot tests for ESP32-H2 target 2023-03-15 13:16:26 +05:30
Armando
929b7717ff system: fixed ram app cannot use mmu correctly issue 2023-03-15 10:59:20 +08:00
Jakob Hasse
03bc6488de bugfix(esp_system): made watchpoint setting configuration-dependent
esp_execute_shared_stack_function always restored the stack watchpoint
regardless of CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK. This would lead
to an abondoned but active watchpoint on a former stack once the task
calling esp_execute_shared_stack_function is deleted, if
CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK is inactive.
This has been fixed now.

Closes https://github.com/espressif/esp-idf/issues/10414
2023-03-13 14:24:15 +08:00
Sachin Parekh
ed0a1f7b52 esp32c6: Fix incorrect PMP configuration
- Enable pytest memprot tests for C6
2023-03-09 11:37:29 +05:30
Armando
c56eb8646b g0: resolve MMU_PAGE_SIZE not defined in g0 build issue 2023-02-22 12:37:40 +08:00
Marius Vikhammer
89190fab02 Merge branch 'bugfix/allow_coredump_gdb_simu' into 'master'
coredump: allow coredump at panic even if gdbstub is used.

Closes IDFGH-8567

See merge request espressif/esp-idf!22103
2023-02-20 16:07:57 +08:00
Omar Chebib
d55060d184 Merge branch 'staging/rename_twdt_config_examples' into 'master'
TWDT: Use the new TWDT Kconfig options in the examples and tests

See merge request espressif/esp-idf!20363
2023-02-20 10:42:23 +08:00
Marius Vikhammer
ec57895db9 coredump: allow coredump at panic even if gdbstub is used.
Closes https://github.com/espressif/esp-idf/issues/10017
2023-02-17 15:15:36 +08:00
Omar Chebib
5e5343d429 TWDT: Use the new TWDT Kconfig options in the examples and tests 2023-02-17 11:22:25 +08:00
Laukik Hase
6e0e7e34ea
test_app: Extend panic app to include memprot-related tests
- Add support for esp32s2, esp32c3 and esp32c2 for the `memprot`-related tests
- Preliminary support for esp32s3 has also been added,
  the test app will be enabled for esp32s3 later when
  the memprot-related issues are fixed.
- Override panic handler to dump the violation intr status
  - Dump the `memprot` violation registers before calling the
    real panic handler
  - Handle `Illegal Instruction` exception in case of memprot permission violation
    * In esp32c3 with `memprot` enabled, if we try to execute arbitrary code
      from RTC_FAST_MEM we get an `Illegal Instruction` exception from the panic
      handler rather than a `Memory Protection Fault`.
    * This is because the Illegal Instruction interrupt occurs earlier than the
      memory protection interrupt due to a higher interrupt latency.
2023-02-16 17:13:56 +05:30
Laukik Hase
fa27795048
test_app: Split panic test app into separate source files
- Added minor improvements to  `panic` test app
  * Replaced existing API to disable flash cache which did not disabled cache always
    (`esp_flash_default_chip->os_func->start(esp_flash_default_chip->os_func_data)`)
    with `spi_flash_enable_interrupts_caches_and_other_cpu`
  * Included some required headers explicitly (`esp_memory_utils.h` and `esp_heap_caps.h`)
2023-02-16 15:26:47 +05:30
Marek Fiala
165c0d852b Tools: Rewrite build system unit tests to python - other target tests 2023-02-09 16:08:04 +01:00
Armando
34e77d6ccd test_panic: add CONFIG_HAL_ASSERTION_DISABLE to coredump_flash_bin_crc config
Without this commit, under this config, the static D/IRAM usage is 97%
2023-02-07 20:23:52 +08:00
Armando
4564f6cc4b g1: add esp_mm to g1 list 2023-02-07 20:23:52 +08:00
Armando
af15b6d885 mmu: simplify mmu vaddr region macro on esp32c2
ESP32C2 mmu vaddr region macros, and related mask macros in
ext_mem_defs.h depends on mmu page size.
2023-02-07 20:23:51 +08:00
Peter Dragun
3e3533f918 feat(idf_monitor): move idf_monitor to separate repo 2023-02-03 11:20:15 +01:00
wuzhenghui
772d32fd77 ci: add ci workaround for gdb_loadable_elf
since flash config parameters are no longer generated when APP_BUILD_TYPE_RAM is enabled, this will cause load_ram in pytest_embedded_idf to fail
2023-02-01 17:57:28 +08:00
wuzhenghui
3256e4279d ci: add pytests for ram_loadable_app 2023-02-01 17:57:28 +08:00
wuzhenghui
151c3b335b example: add example for ram loadable app 2023-02-01 17:57:28 +08:00
wuzhenghui
0cbb4227b2 feature: add build framework support 2023-02-01 17:57:25 +08:00
morris
d9825f5165 Merge branch 'feature/add_clk_tree_get_frequency_api' into 'master'
clk_tree: Stage 4 - Add a general API to get the frequency of different clocks

Closes IDF-6569

See merge request espressif/esp-idf!21830
2023-01-17 17:08:23 +08:00
Song Ruo Jing
2c9aa4559c clk_tree: Add a general API to get the frequency of different clocks
Add basic clk_tree driver and hal implementation.
2023-01-17 11:30:24 +08:00
Cao Sen Miao
94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
Roland Dobai
ec0466e0e5 Merge branch 'fix/idf_monitor_pc_addr_intervals' into 'master'
Tools: IDF Monitor: Determine possible instruction addresses based on ELF segments

Closes IDF-6174

See merge request espressif/esp-idf!21393
2023-01-05 14:44:19 +08:00
Ivan Grokhotkov
6495810c5d
test: panic: run tests on esp32s3, esp32c3, esp32c2 2023-01-03 15:29:58 +01:00
Roland Dobai
17286337ea Tools: IDF Monitor: Determine possible instruction addresses based on ELF segments 2023-01-03 13:22:26 +01:00
Cao Sen Miao
4e67332b74 ESP32H2: Add small CI test for ESP32H2 2022-12-29 11:00:42 +08:00
Omar Chebib
835263e50a Coredump: add a test to check that coredump supports stacks in SPIRAM 2022-12-22 12:47:22 +01:00
Ivan Grokhotkov
6020bb0f90 Merge branch 'feature/gdbstub_esp32c2' into 'master'
gdb stub: re-enable for ESP32-C2

Closes IDF-4135 and IDF-4245

See merge request espressif/esp-idf!21386
2022-12-22 16:00:01 +08:00
Ivan Grokhotkov
e3a4d47fd9
gdb stub: re-enable for ESP32-C2 2022-12-21 13:21:41 +01:00
Jakob Hasse
cb9786d35e refactor(esp_system): reboot delay: added docs, protected by watchdog 2022-12-20 15:51:00 +08:00
Fu Hanxi
1148980383 test: pytest_gdb.py avoid LIBUSB_ERROR_BUSY
- stop using `shell=True`
- use `terminate()`
2022-12-08 14:25:02 +08:00
Fu Hanxi
dc3c630919 ci: move more openocd scripts into pytest-embedded 2022-12-08 14:25:02 +08:00
Fu Hanxi
09a32437b3 ci: migrate ttfw gdb_loadable_elf test to pytest 2022-12-08 14:25:02 +08:00