Commit Graph

286 Commits

Author SHA1 Message Date
Ivan Grokhotkov
3973db7664
soc: make register access macros compatible with C++20
In C++20, using the result of an assignment to a 'volatile' value is
deprecated.

Breaking change: register "setter" or modification macros can no
longer be used as expressions.

Closes https://github.com/espressif/esp-idf/issues/9170
2022-06-17 18:09:22 +02:00
Omar Chebib
6783f52045 CI: examples generating an ELF file only can now pass CI 2022-06-14 15:00:53 +08:00
Omar Chebib
33ac70a3ed G0: add a build example to check G0 dependencies 2022-06-14 15:00:53 +08:00
Fu Hanxi
bcb7ae3217 docs: fix test apps local execution section 2022-06-10 09:13:23 +08:00
Michael (XIAO Xufeng)
4e231f9dac ci: partially enable pytest for esp32c2 2022-06-02 15:07:53 +08:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
Jessy Chen
7b9b448041 esp_wifi: optimize wifi kconfig 2022-05-28 08:52:55 +00:00
Zim Kalinowski
2c9cd8e307 Merge branch 'feature/remove_target_cmake' into 'master'
build-system: remove target component

Closes IDF-3091 and IDF-3581

See merge request espressif/esp-idf!18131
2022-05-27 06:55:25 +08:00
Fu Hanxi
d2aae6d53a fix: panic test case test_task_wdt 2022-05-25 10:30:29 +08:00
Marius Vikhammer
cf1b222cac build system: removed target component
After refactoring the target components (e.g. esp32) no longer contained any real functionality.
What remained in these components have been moved elsewhere and the component itself deleted from the
build system.
2022-05-24 09:12:59 +08:00
Marius Vikhammer
0687daf2c8 kconfig: move remaining kconfig options out of target component
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
Djordje Nedic
11f3898e33 tools: Fix cmake variable propagation
This fixes the issue where component CMAKE variables propagate by default to the entire project, for instance compiler flags.
Useful for when you want to have component specific compiler flags or defines.

Closes https://github.com/espressif/esp-idf/pull/8806
Closes https://github.com/espressif/esp-idf/issues/8881
2022-05-16 16:55:34 +02:00
Fu Hanxi
5c997bd5dd ci(pytest): upgrade to 0.7.0 2022-05-13 11:54:42 +08:00
morris
24f5fecef0 hal: use ROM implementation for systimer and wdt on esp32c2 2022-05-12 05:18:57 +00:00
Marius Vikhammer
5bee313bde Merge branch 'bugfix/kconfig_checker_osource' into 'master'
kconfig: update check_kconfigs.py to handle orsource command

See merge request espressif/esp-idf!18013
2022-05-09 09:48:06 +08:00
Wu Zheng Hui
0580d68b69 esp32c2: Support riscv floating-point library selection 2022-05-08 17:57:40 +08:00
Marius Vikhammer
c7a827a136 kconfig: update check_kconfigs.py to handle orsource command
check_kconfigs.py would only correctly handle "source", but not "rsource", "osource"
or "orsource".

Fixed any warnings detected after updating the test.
2022-05-06 11:31:24 +08:00
wuzhenghui
afd86542d8 ci: add build test for newly added Kconfig option 2022-05-05 17:41:11 +08:00
Ivan Grokhotkov
89e78976ab
tests: panic: make 'get_test_name' work without VFS, add echo
When vfs component is not added to the build, bare minimum syscalls
are provided by newlib component. These syscalls currently don't
perform CR/LF translation.
This commit makes the 'get_test_name' function work with minimal
syscalls and also adds echo, so that the user sees what they type.
2022-05-02 20:47:18 +02:00
Ivan Grokhotkov
47659be5b8
build system: remove lwip from common requirements
lwip was added to common requirements list to provide "sys/socket.h"
header to all components without additional requirements specified.

However, lwip pulls in a lot of dependencies on other components.
This commit removes lwip from common requirements to reduce the number
of components in G1-only apps.

To compensate for this removal, the following changes are made:
- newlib (which is a common requirement) has a public dependency on
  lwip if lwip is present in the build. This ensures that sys/socket.h
  is available as long as lwip component is included into the build.
- lwip is now a public requirement of esp-tls since esp_tls.h includes
  sys/socket.h header.
- lwip is now a public requirement o esp_http_client because
  sys/socket.h is included from esp_http_client.h
- lwip is now a private requirement of esp_wifi for "smartconfig_ack"
- lwip is now a private requirement of mqtt for socket functions
- lwip is now a public requirement of tcp_transport because
  esp_transport_tcp.h includes sys/socket.h header.
- mbedtls checks if lwip component is present in the build. If yes,
  net_sockets.c is added to the build, along with the dependency on
  lwip. Previously lwip was a public requirement of mbedtls
  unconditionally.

system/g1_components test app is updated to reflect the changes

Default public dependencies of a component before and after this
change, except common requirements:

- esp_timer (public dependency of freertos)
- bootloader_support (public dependency of esp_hw_support)
- vfs (public dependency of lwip)
- esp_wifi (public dependency of lwip)
- esp_event (public dependency of esp_wifi)
- esp_netif (public dependency of esp_event)
- esp_eth (public dependency of esp_netif)
- esp_phy (public dependency of esp_wifi)

After:

- esp_timer (public dependency of freertos)
- bootloader_support (public dependency of esp_hw_support)

Altogether, the following components have been always added as
public requirements to all other components, and are not added now
([breaking-change]):

- lwip
- vfs
- esp_wifi
- esp_event
- esp_netif
- esp_eth
- esp_phy

Application components now need to explicitly declare dependencies on
these components.
2022-05-02 20:47:17 +02:00
Ivan Grokhotkov
708e99497b
global: add dependency on esp_timer component and include esp_timer.h
Some components were including esp_timer.h without declaring a
dependency on esp_timer component. This used to work due to a
transitive public dependency on esp_timer from freertos component.
Add explicit dependencies where needed.
Also some source files were using esp_timer functions without
including the header file. This used to work because esp_timer.h was
included from freertos port header file. This commit adds esp_timer.h
includes where needed.
2022-04-25 18:39:23 +02:00
Mahavir Jain
37ad7c2e1f test_apps: add build only test for !MBEDTLS_CERTIFICATE_BUNDLE 2022-04-06 05:10:43 +00:00
Marius Vikhammer
5618ba80f9 Merge branch 'feature/refactor_esp_sys_deps' into 'master'
esp-system: removed esp_phy and nvs dependencies, change app update and pm to weak dependencies

Closes IDF-4656

See merge request espressif/esp-idf!17092
2022-03-25 17:17:43 +08:00
Marius Vikhammer
9274a062fb esp-system: removed esp_phy and nvs dependencies, change app update and pm to weak dependencies 2022-03-22 11:19:32 +08:00
Tomas Rezucha
3abeee00d0 usb_host: Pin test task to core 0
When we try to uninstall usb_host library on multi-core SoC (ESP32S3)
the USB interrupt can be triggered even after it was disabled on one CPU
2022-03-21 18:34:25 +01:00
Tomas Rezucha
6206302787 ci: Add USB Host CDC and MSC pytests to pipeline 2022-03-21 18:34:24 +01:00
Chen Yudong
4dc74c9c42 CI: rename some tests to avoid duplicated test names 2022-03-11 18:38:41 +08:00
David Čermák
4196c3f591 Merge branch 'update/discontinue_tcpip_adapter' into 'master'
esp_netif: Remove tcpip_adapter compatibility layer

Closes IDF-4457

See merge request espressif/esp-idf!17066
2022-03-11 03:48:28 +08:00
David Cermak
c941e29cf6 examples: Fix implicit includes after legacy code removal 2022-03-10 10:36:38 +01:00
David Cermak
795b7ed993 esp_netif: Remove tcpip_adapter compatibility layer 2022-03-10 08:19:43 +01:00
Fu Hanxi
1c3628d631 ci: refactor a few test scripts to pytest 2022-03-10 11:51:45 +08:00
Zim Kalinowski
0440aca4e3 Merge branch 'feature/reevaluate_headers_include_dirs' into 'master'
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories

See merge request espressif/esp-idf!16763
2022-03-08 01:32:24 +08:00
Fu Hanxi
6ddd6e6d29 Merge branch 'docs/pytest_in_idf' into 'master'
docs: add README about pytest in IDF

See merge request espressif/esp-idf!17250
2022-03-07 15:34:28 +08:00
Sudeep Mohanty
a9fda54d39 esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Fu Hanxi
5ccb5eeebd docs: add README about pytest in IDF 2022-03-03 14:36:50 +08:00
gabsuren
93a902ba80 mdns: Stabilization of mdns test app 2022-03-03 01:21:27 +04:00
Omar Chebib
2571aaf3c9 G0: target component (components/esp32*) doesn't depend on driver anymore 2022-03-02 04:21:00 +00:00
Konstantin Kondrashov
44e5ac2c59 Merge branch 'feature/efuse_hal' into 'master'
hal: Adds efuse hal layer

See merge request espressif/esp-idf!16354
2022-02-28 13:38:43 +08:00
KonstantinKondrashov
9605f3eb1a soc: Adds efuse hal
Replaced eFuse ROM funcs with hal layer
2022-02-24 22:20:09 +08:00
David Cermak
0630834bc3 openssl: Remove deprecated component 2022-02-23 13:08:12 +01:00
Fu Hanxi
1b095db5c9 ci(pytest): refactor panic test to pytest 2022-02-23 09:12:46 +08:00
Anton Maklakov
7e569e1524 test_apps/panic: GDB in esp-2021r2-patch3 toolchain doesn't contain the fix for interrupted backtraced
Revert "test_apps/panic: remove workaround for incorrect GDB backtrace"

This reverts commit 3e3fa4bff2.
2022-02-21 10:51:41 +07:00
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
morris
ef00bd59dc esp_rom: extract int matrix route and cpu ticks getter 2022-02-09 13:52:20 +08:00
Lu Ai Jun
4a0906fdb7 Update copyright headers 2022-02-07 02:28:50 +00:00
Lu Ai Jun
e599db6d04 Revert "Merge branch 'bugfix/temp_disable_f8r8_test' into 'master'"
This reverts merge request !17007
2022-02-07 10:18:08 +08:00
Ivan Grokhotkov
2838886639 ci: temporarily disable MSPI_F8R8 test 2022-02-01 15:39:40 +01:00
David Cermak
c2b037572c ci/mqtt: Make publish test-app message properties configurable
Also increase the default sizes and repeat-counts to send more data and
exercise the library more intensly
2022-01-28 15:18:41 +01:00
David Cermak
9de81ed2e2 ci/mqtt: Fix weekend test publish-connect on target
* Fix thread safe issue in paho-mqtt library
* Move the weekend test to ethernet runner
2022-01-27 13:37:47 +01:00
David Čermák
1c94345737 Merge branch 'bugfix/protocols_test_on_eth' into 'master'
ci/mqtt: Move protocol tests to eth runners

Closes IDFCI-653

See merge request espressif/esp-idf!16752
2022-01-19 14:44:00 +00:00
laokaiyao
cf049e15ed esp8684: rename target to esp32c2 2022-01-19 11:08:57 +08:00
David Cermak
5e1dc6f8db ci/mqtt: Move publish-connect test to ethernet runners 2022-01-14 14:35:06 +01:00
morris
1267738149 cmake: using toolchain prefix determined by cmake itself 2022-01-10 10:06:09 +08:00
Marius Vikhammer
7255497146 freertos: remove FREERTOS_ASSERT option
Freertos asserts are now configured the same way as all other asserts in IDF,
i.e. by configuring COMPILER_OPTIMIZATION_ASSERTION_LEVEL.
2022-01-07 09:16:48 +08:00
Martin Válik
4f7c36d859 Merge branch 'feature/usb-msc' into 'master'
USB MSC class

Closes IDFGH-4584

See merge request espressif/esp-idf!14573
2021-12-21 10:22:54 +00:00
Martin Vychodil
dd938eb952 System/Security: Memprot API unified (ESP32C3)
Unified Memory protection API for all PMS-aware chips (ESP32C3)

Closes JIRA IDF-3849
2021-12-21 01:50:36 +01:00
Martin Valik
73dce765d5 USB: added MSC Host Driver with VFS support
Closes https://github.com/espressif/esp-idf/issues/6401
2021-12-20 12:39:45 +01:00
David Cermak
c0d08faf91 mdns: Unbreak test app cauased by async API change
Regression from f391d610e8
2021-12-16 22:46:53 +01:00
Ivan Grokhotkov
5b3b5f006f Merge branch 'feature/cmake_weak_deps_helper' into 'master'
cmake: add idf_component_optional_requires utility function, simplify some component dependencies

Closes IDF-3086

See merge request espressif/esp-idf!16373
2021-12-16 13:46:45 +00:00
David Čermák
32457784ce Merge branch 'test/mdns_ci_test' into 'master'
mdns: added test app

Closes IDF-4132

See merge request espressif/esp-idf!15736
2021-12-15 06:01:27 +00:00
Suren Gabrielyan
e0d5fca390 mdns: added test app
Closes IDF-4132
2021-12-14 16:35:38 +04:00
Simon
1c82e6eac7 Merge branch 'ci/8684_build_ci' into 'master'
CI: Enable ESP8684 build (2nd stage) CI on master (except example build)

Closes IDF-4388

See merge request espressif/esp-idf!16197
2021-12-14 11:12:10 +00:00
Ivan Grokhotkov
8df306ab60 freertos,esp_system: make dependencies on some components optional
Dependencies on gdbstub, espcoredump, app_trace will only be added
if these components are present in the build.
2021-12-13 18:39:49 +01:00
Armando
9a6f894046 psram: add octal psram ECC feature 2021-12-13 20:24:52 +08:00
Cao Sen Miao
e81841318f CI: Enable ESP8684 build stage CI on master 2021-12-13 19:18:47 +08:00
Ivan Grokhotkov
7a5ed12c6b lwip: make some of the component dependencies optional 2021-12-13 10:53:22 +01:00
Tomas Rezucha
dd1b698075 usb: Add USB host CDC-ACM class driver 2021-12-09 10:28:46 +01:00
morris
fc8506e256 Merge branch 'feature/min_build_test_apps' into 'master'
build system: add a G0 & G1 test app

Closes IDF-3088

See merge request espressif/esp-idf!16223
2021-12-08 06:19:12 +00:00
David Cermak
7541ec684d CI: Remove PPPoS custom test
This test should be migrated to esp-modem component CI
2021-12-06 12:42:17 +01:00
Ivan Grokhotkov
ac99a93f33 tools: add a test app to check "G1-only" build
At the moment the list of components is far from being "G1-only".
"extra_components_which_shouldnt_be_included" list will be reduced in
future MRs.
2021-12-02 15:29:00 +01:00
Roland Dobai
766aa57084 Build & config: Remove leftover files from the unsupported "make" build system 2021-11-11 15:32:36 +01:00
Anton Maklakov
e525964f67 Merge branch 'bugfix/gdbstub_4_c3' into 'master'
Add missing function for C3

See merge request espressif/esp-idf!15538
2021-10-26 10:16:38 +00:00
Dmitry
1457c42f6f bugfix/esp-gdbstrub: add missing function for esp32c3/esp32h2. 2021-10-25 10:30:50 +03:00
Anton Maklakov
3e3fa4bff2 test_apps/panic: remove workaround for incorrect GDB backtrace 2021-10-20 22:00:39 +07:00
Armando
c331c85318 mspi: make cpu clock source switch safe
For some of the MSPI high frequency setting (e.g. 80M DDR mode Flash or PSRAM), timing tuning is required.
Certain delays will be added to the MSPI RX direction. When system clock switches down, the delays should be
cleared. When system clock switches up, the delays should be restored.
2021-10-19 21:47:27 +08:00
chenjianxing
94c81b71b1 esp_phy: add phy multi init data bin test app 2021-10-13 13:10:49 +08:00
chenjianxing
2a09234957 esp_phy: rename esp_phy component prefix 2021-10-13 13:10:49 +08:00
Jakob Hasse
f86e154a56 Merge branch 'feature/removed_hyphens_from_examples' into 'master'
[examples]: Project names consistent with their directories

Closes IDFGH-3673

See merge request espressif/esp-idf!13570
2021-10-11 03:43:37 +00:00
Armando (Dou Yiwen)
8ab29b7877 Merge branch 'feature/support_auto_detect_oct_flash_vendor' into 'master'
mspi: support auto detect oct flash vendor

Closes IDF-3523 and IDF-3857

See merge request espressif/esp-idf!14741
2021-10-11 02:38:15 +00:00
Mahavir Jain
087d4673dd Merge branch 'bugfix/client_only_mbedtls' into 'master'
mbedtls: fix build fail with client only mbedtls

Closes IDFGH-5842

See merge request espressif/esp-idf!15286
2021-10-10 11:20:24 +00:00
Jakob Hasse
81e9266204 [examples]: removed hyphens
Replaced hyphens with underscores in examples
project definition for all examples which had
hyphens in their project name. dpp-enrollee is
an exceptions because the name matches the
project directory name while the project
directory also contains hyphens.
2021-10-09 13:58:24 +08:00
Armando
d6caf142d3 ci: add flash psram test under different configs on esp32s3 2021-10-08 15:59:57 +08:00
David Cermak
cfc001870c openssl: Add deprecation warning to ssl.h
OpenSSL component will be discontinued in ESP-IDF v5.x. The only official TLS API will be esp-tls
Add docs warning about deprecation in v5.x

Removed all examples demonstrating usage of openssl in IDF
2021-10-05 11:45:52 +02:00
Harshit Malpani
be91515488 test_apps: add CLIENT_ONLY_MBEDTLS configuration to build tests 2021-10-04 19:18:45 +08:00
KonstantinKondrashov
709abee65c example_tests: Deletes usage esp32c3 ECO0 in CI (by default ECO3) 2021-09-24 13:55:07 +08:00
Aditya Patwardhan
760d359276 mqtt_test_app: Fix the invalid esp-tls error code values in mqtt test app 2021-09-22 07:14:02 +08:00
David Cermak
00b1170588 CI: Update mqtt test to cleanup connect-publish-URI interaction 2021-09-15 15:07:12 +08:00
Euripedes Rocha
307eb5f17f [MQTT/test] Fix publish connect test
- Mqtt client will return error on wrong parameters. This fix the test
  code to setup the client for each test case.
2021-09-15 15:07:12 +08:00
Mahavir Jain
f1c6c68f19 Merge branch 'feature/ttfw_esp32c3fpgadut' into 'master'
Automate flash encryption and secure boot tests on FPGA

See merge request espressif/esp-idf!12367
2021-08-30 10:24:24 +00:00
Sachin Parekh
cfcb893289 ttfw_idf: Added ESP32-S3 FPGA support
Provision to burn and reset efuses of ESP32S3 on FPGA

test_app: Enabled automated test cases for ESP32S3
2021-08-27 10:41:31 +05:30
Sachin Parekh
3f7fed7872 test_app: Added automated test cases for secure_boot 2021-08-27 10:41:31 +05:30
Martin Vychodil
58aed7df98 ESP32S2: No assert()/abort() in Memprot API, use esp_err_t instead
JIRA IDF-3634
2021-08-26 09:20:00 +02:00
David Cermak
0b3476fdd0 CI: mqtt test apps: removed unnecessary env.yml 2021-08-25 16:41:33 +08:00
yuanjm
316cdd34e2 ci: Add disable CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS ci build file 2021-08-17 19:56:15 +08:00
Cao Sen Miao
030da50762 i2c_app_test: Add i2c work together with wifi test 2021-08-17 14:46:06 +08:00
Sachin Parekh
6582f7070e Update tests for assert and abort
- Place panic_abort in IRAM
- Added abort, assert test case in case of cache disabled
- Expect assert instead of abort in a freertos_mutex test
2021-08-05 11:09:22 +05:30
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