Commit Graph

140 Commits

Author SHA1 Message Date
Roland Dobai
1ecdab3a70 CI: Debug GDB issues 2021-07-23 02:00:00 +08:00
Angus Gratton
e92c4106b9 ci: Enable ESP32-S2 and later support for Secure Boot test app 2021-07-13 14:03:45 +10:00
Angus Gratton
e3ca61a200 secure boot: Fix incorrect handling of mbedtls_ctr_drbg_seed() failure in signature verification
Increase the test app optimization level to one that would find this issue.
2021-07-08 19:17:04 +10:00
Mahavir Jain
d5cc79db48 test_apps: add HEAP_TRACING configuration to build tests 2021-06-22 14:14:10 +08:00
Ivan Grokhotkov
bdb01b8285 Merge branch 'bugfix/longjmp_s3' into 'master'
[esp_rom]: fixed S3 longjmp patch

Closes IDF-3391

See merge request espressif/esp-idf!13946
2021-06-22 04:00:51 +00:00
Angus Gratton
d127a1fa75 ci panic test: Update the panic test timeout from 3s to 10s
If it takes longer than 10s to respond, it's probably not because of the
runner...
2021-06-21 17:08:02 +10:00
Jakob Hasse
e32831033a [esp_rom]: fixed S3 longjmp patch
* On S3, the placement of ROM functions is
  ECO-dependent. Hence, we don't jump into
  the middle of the longjmp function in ROM
  on S3 anymore.
  Instead, the whole longjump function is used
  in the patch.

* Also properly excluded the patch from
  bootloader build with Makefiles

Closes IDF-3391
2021-06-18 15:47:41 +08:00
Konstantin Kondrashov
4c0cf40a39 efuse: Burn operation does not block reading 2021-06-18 11:52:47 +08:00
David Čermák
4d604ee6d2 Merge branch 'bugfix/remove_unstable_network_tests' into 'master'
CI: Move mqtt publish tests from regular pipeline to weekend tests

Closes IDFCI-653

See merge request espressif/esp-idf!13891
2021-06-17 07:04:51 +00:00
Konstantin Kondrashov
f339b3fc96 efuse(esp32): Deprecate esp_efuse_burn_new_values() & esp_efuse_write_random_key()
These functions were used only for esp32 in secure_boot and flash encryption.
Use idf efuse APIs instead of efuse regs.
2021-06-17 07:21:36 +08:00
David Cermak
49ee304161 CI: Prepare mqtt app test for QEMU tests
Adds qemu configuration
Generalize the get_dut() to enable choosing DUT class per configuration
2021-06-16 14:30:20 +02:00
David Cermak
74fd8d7af8 CI: Enable publish tests only when started from weekend pipeline 2021-06-11 16:52:43 +02:00
David Cermak
badcbe0fcb mqtt: Moved weekend tests to test apps 2021-06-10 09:09:14 +02:00
Ivan Grokhotkov
6d2e0c3eae tests: gdb_loadable_elf: adjust the breakpoint location for ESP32 ECO3
The previous location was the return from the first ets_printf call
that prints ROM sign-on message. Since the main function was patched
in ECO3, the new address no longer works — there is no instruction at
0x40007901 in ECO3 ROM. This could be solved by setting two
breakpoints (one would work for ECO <=2, the other for ECO3), but we
would need to remove the unused breakpoint later.
Fix this by setting the breakpoint at ets_printf. This means that when
debugging a loadable ELF the ROM sign-on message will no longer be
shown, but this doesn't seem to be an issue.
2021-05-04 16:22:50 +02:00
Jeroen Domburg
2c75f63f89 * ets_delay_us(1) has too much overhead; change logic
* Fix MR comments
2021-04-28 16:38:24 +08:00
Ivan Grokhotkov
83e68ee19e Merge branch 'bugfix/replace_setjmp_rom' into 'master'
[system]: Made longjmp save for context switch

Closes IDFGH-3232

See merge request espressif/esp-idf!13119
2021-04-23 12:39:29 +00:00
Jakob Hasse
fc22e3c645 [system]: Made longjmp save for context switch
* Patched longjmp to be context-switch safe
  longjmp modifies the windowbase and windowstart
  registers, which isn't safe if a context switch
  occurs during the modification. After a context
  switch, windowstart and windowbase will be
  different, leading to a wrongly set windowstart
  bit due to longjmp writing it based on the
  windowbase before the context switch. This
  corrupts the registers at the next window
  overflow reaching that wrongly set bit.

  The solution is to disable interrupts during
  this code. It is only 6 instructions long,
  the impact shouldn't be significant.

  The fix is implemented as a wrapper which
  replaces the original first instructions of
  longjmp which are buggy. Then, it jumps back
  to execute the rest of the original longjmp
  function.

  Added a comparably reliable test to the
  test apps.
2021-04-23 15:55:31 +08:00
Ivan Grokhotkov
e3c8ea00d9 test_apps/panic: apply pre-commit fixes in python scripts 2021-04-22 23:33:46 +02:00
Ivan Grokhotkov
9069f70db3 system: add option to enable undefined behavior sanitizer (UBSAN)
Closes https://github.com/espressif/esp-idf/issues/1574
2021-04-22 23:33:45 +02:00
Ivan Grokhotkov
d4e8987a39 Merge branch 'feature/prevent_unwind_code_linking' into 'master'
prevent unwind code linking

Closes IDF-2577, IDFGH-3394, IDFGH-3417, and IDFGH-3153

See merge request espressif/esp-idf!12328
2021-04-21 10:04:15 +00:00
Mahavir Jain
c22805e94b Merge branch 'bugfix/bootloader_min_revision_c3' into 'master'
Fix bootloader minimum revision check and print for ESP32-C3

Closes IDFGH-5106

See merge request espressif/esp-idf!13248
2021-04-21 04:41:47 +00:00
Ivan Grokhotkov
c248dcc724 Merge branch 'bugfix/flash_rodata_any_alignement' into 'master'
build: (Custom) App version info is now on a dedicated section

Closes IDFGH-4927

See merge request espressif/esp-idf!12786
2021-04-20 23:30:03 +00:00
Mahavir Jain
6f81428013 test_apps: increase partition table offset to fix build errors 2021-04-20 14:23:13 +05:30
Jakob Hasse
2552c7ba0f [C++]: wrapper functions around unwind code
* Replaced all C++ exception related
  functions with wrappers if -fno-exception
  is used. This prevents linking of the
  corresponding code in libgcc. The code
  size will decrease by around 7-9 KB when
  building with -fno-exception.
* added no except test app

Closes https://github.com/espressif/esp-idf/pull/5380
Closes https://github.com/espressif/esp-idf/issues/5363
Closes https://github.com/espressif/esp-idf/issues/5224
Closes IDFGH-3153
Closes IDF-2577
2021-04-20 14:27:58 +08:00
Angus Gratton
209a6cc855 Merge branch 'bugfix/check_partitions_fit' into 'master'
cmake partition_table: Check binaries fit in partition spaces at build time

Closes IDF-1539 and IDFGH-2503

See merge request espressif/esp-idf!9330
2021-04-19 07:33:36 +00:00
Omar Chebib
dd849ffc26 build: (Custom) App version info is now on a dedicated section, independent of the rodata alignment
It is now possible to have any alignment restriction on rodata in the user
applicaiton. It will not affect the first section which must be aligned
on a 16-byte bound.

Closes https://github.com/espressif/esp-idf/issues/6719
2021-04-19 12:53:08 +08:00
Angus Gratton
e1ebe3d7ac ci: Move partition table offset in secure boot test app 2021-04-16 16:40:47 +10:00
Ivan Grokhotkov
e6fd582fdf Merge branch 'bugfix/panic_handler_not_in_iram' into 'master'
panic: handlers can now be placed in flash

Closes IDF-2851

See merge request espressif/esp-idf!12874
2021-04-16 02:47:05 +00:00
Angus Gratton
7f0fc3a37b ci: Consolidate deep sleep example test configs 2021-04-15 16:24:44 +10:00
Omar Chebib
bb9aa806f7 panic: handlers can now be placed in flash
By unchecking "Place panic handler code in IRAM" in the menuconfig,
the panic handlers will be placed in flash. Of course, flash cache must
be activated when entering panic handlers.
2021-04-15 11:58:46 +08:00
Ivan Grokhotkov
996e84f97a Merge branch 'docs/fix_custom_test_doc' into 'master'
[system]: Running panic test app locally doc

See merge request espressif/esp-idf!13052
2021-04-14 11:35:12 +00:00
Martin Vychodil
f27c9c5139 esp32c3: memprot API upgrade and test application
Closes IDF-2641
2021-04-12 13:44:11 +10:00
Jakob Hasse
5bcb189fe4 [system]: locally run panic test app doc 2021-04-07 18:56:18 +08:00
Angus Gratton
d44034c54d Merge branch 'bugfix/dual_core_app_on_single_core_esp32' into 'master'
esp_system: fix dual core app issue on single core esp32

Closes IDF-2154

See merge request espressif/esp-idf!10728
2021-03-31 01:06:52 +00:00
Angus Gratton
4dba80239e ci: Extend timeout for initial gdbstub commands in panic tests
Theory is that on the runner, in rare cases, gdb may need more than
1 second to load and start responding to commands.

However it's possible these timeouts are due to some other problem
(like gdb failing)
2021-03-30 11:01:39 +11:00
Renz Bagaporo
0a3ae58a61 system: add test for simulating single core esp32 startup 2021-03-29 06:50:47 +00:00
Marius Vikhammer
2aead8ba57 Support ESP32S3 Beta 3 target
Update ROM API. Port changes from bringup branch.
2021-03-18 10:24:22 +08:00
Renz Bagaporo
60ee143c3b tools: fix ldgen_test fragment file KEEP 2021-03-11 12:04:40 +08:00
Angus Gratton
39a2d531f0 Merge branch 'feature/ldgen_mapping_extensions' into 'master'
ldgen: mapping flags extensions

Closes IDFGH-2524

See merge request espressif/esp-idf!12035
2021-03-09 22:43:08 +00:00
Angus Gratton
9b988ca097 config: Add new option to replace IDF_PATH and project path with placeholders in macros
Allows building with asserts on and still not finding any actual file paths in the
final binary file.

Alternative fix for https://github.com/espressif/esp-idf/issues/6306

Progress towards https://github.com/espressif/esp-idf/issues/5873
2021-03-03 10:31:05 +11:00
Angus Gratton
9ae01e40b5 ci: Add a test app for not placing embedded file paths into binaries
Doubles as a test app that building with assertions off doesn't produce warnings.

Closes https://github.com/espressif/esp-idf/issues/6306
2021-03-03 10:31:05 +11:00
Renz Bagaporo
10c5226095 ldgen: use uppercase keywords for flags 2021-03-01 14:19:34 +08:00
Renz Bagaporo
dbdc17cced ldgen: rename emit to surround 2021-03-01 14:19:34 +08:00
Renz Bagaporo
1fa2308e52 ci: update ldgen_test test_app to test flags 2021-03-01 14:19:34 +08:00
yuanjm
13776ec81b tools: Update mqtt open source test server address 2021-02-23 15:30:29 +08:00
Angus Gratton
3368fe321d Merge branch 'doc/test_configs' into 'master'
test apps: Add some documentation about test app configs

See merge request espressif/esp-idf!12395
2021-02-19 06:47:16 +00:00
Angus Gratton
ca29765e97 test apps: Add some documentation about test app configs 2021-02-17 18:10:51 +11:00
David Cermak
b4d792446c examples/mqtt: Use common transport for setting log severity 2021-02-16 09:00:43 +01:00
Marius Vikhammer
04df1f3a42 CI: enable example builds for C3
Enables building C3 examples in CI.

Fixes related warnings/errors and disables examples that cannot run.
2021-02-09 12:04:02 +08:00
Angus Gratton
1289918204 Merge branch 'refactor/ldgen_generation_changes' into 'master'
ldgen: internal data structure change

See merge request espressif/esp-idf!11494
2021-02-09 11:03:09 +08:00