Commit Graph

5252 Commits

Author SHA1 Message Date
Frantisek Hrbata
00d77e7a75 fix(hints): properly identify source component
If there is a component(child) within a component(parent), like for test_apps, the parent
component may be wrongly identified as source component for the failed include. This may
lead to a false bug report if the parent component has component, which provides the missing
header, in requirements.

Fix this by looking for the longest matching source component directory.

Suggested-by: Ivan Grokhotkov <ivan@espressif.com>
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-09-27 12:50:25 +02:00
Fu Hanxi
4dbe541f80
ci: replace internal clang-tidy runner with the pypi project 2023-09-27 10:25:49 +02:00
Ivan Grokhotkov
43741ec803
ci: add astyle pre-commit check 2023-09-27 08:43:45 +02:00
radek.tandler
4f659b70e1 fix(nvs_flash): fixed failing nvs_page test 2023-09-26 15:05:20 +00:00
Harshit Malpani
5d9ebd2473 Merge branch 'bugfix/fix_condition_to_verify_when_no_SB' into 'master'
fix(bootloader_support): Fix condition for checking signature in the application

See merge request espressif/esp-idf!26026
2023-09-26 14:38:08 +08:00
David Cermak
966b8620c2 feat(esp_netif): PPP config option to allow disabling LCP runtime
If LCP keepalive mechanism is enabled in menuconfig, it's statically
configured on creation of an interface and cannot be changed runtime. In
some cases it's useful to relax LCP criteria during runtime operation,
for example before initiating OTA. This config option allows for
disabling already enabled LCP echo (this setting becomes effective after
reconnecting, i.e. initializing a new session)

Closes https://github.com/espressif/esp-protocols/issues/287
2023-09-25 16:48:48 +02:00
Ivan Grokhotkov
eafa723093
feat(bt): migrate the tests from unit-test-app 2023-09-25 15:01:29 +02:00
Ivan Grokhotkov
8545f8595f Merge branch 'bugfix/build_fail_c6_usb_serial_jtag' into 'master'
fix build with CONFIG_ESP_CONSOLE_UART=n on C6, re-enable build tests for C6 and C2

Closes IDFGH-10698

See merge request espressif/esp-idf!24935
2023-09-25 20:39:32 +08:00
Harshit Malpani
7d98bdd495
feat: Add test app to verify SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT
Add a test app to verify the working of the application when
SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is selected in the menuconfig
and the application is not signed
2023-09-25 12:02:58 +05:30
Ivan Grokhotkov
4f9e22945c Merge branch 'feature/esp_hid_component_test_app' into 'master'
feat(esp_hid): migrate the tests from unit-test-app

Closes IDF-5575

See merge request espressif/esp-idf!26077
2023-09-22 23:21:53 +08: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
Ivan Grokhotkov
9e20bf4f06
feat(esp_hid): migrate the tests from unit-test-app 2023-09-21 14:25:08 +02:00
Fu Hanxi
c79c16a73e ci: fix cleanup_ignore_lists.py on windows 2023-09-21 12:59:17 +02:00
Ivan Grokhotkov
fc4f091e7a Merge branch 'feature/examples_use_manifest_for_deps' into 'master'
feat(examples): add local components via idf_component.yml

See merge request espressif/esp-idf!25228
2023-09-20 20:14:14 +08:00
Roland Dobai
5e4755af14 Merge branch 'remove_monitor_tests' into 'master'
feat(tools/monitor): move target tests to monitor repo

See merge request espressif/esp-idf!25264
2023-09-20 15:16:31 +08:00
Darian
4d85cbff6d Merge branch 'feature/freertos_v1051_smp_changes' into 'master'
feat(freertos): Add FreeRTOS v10.5.1 SMP Support (BETA release)

Closes IDF-7877, IDF-7878, IDF-5739, IDF-4142, and IDF-8182

See merge request espressif/esp-idf!24995
2023-09-19 22:18:59 +08:00
Ivan Grokhotkov
8c26ddf4a1
feat(ci): add CI check for EXTRA_COMPONENT_DIRS in examples 2023-09-19 10:38:24 +02:00
Konstantin Kondrashov
ecf4968e1c Merge branch 'feature/esp32p4_support_ipc' into 'master'
feat(esp_system): Support IPC_ISR for ESP32P4

Closes IDF-7769

See merge request espressif/esp-idf!25812
2023-09-19 13:26:52 +08:00
Darian Leung
b09462eae8 feat(freertos): Add beta support for FreeRTOS v10.5.1 kernel
This commit adds beta support for the FreeRTOS v10.5.1 kernel which can be
enabled by enabling the CONFIG_FREERTOS_USE_KERNEL_10_5_1 option.

The following changes have been made:

- Updated freertos/CMakeLists.txt to build v10.5.1 kernel with v10.4.3. ports
- Updated existing Xtensa and RISC-V ports to work with V10.5.1
- Modifications to other ESP-IDF components to work with v10.5.1
- Added some ESP-IDF specific tracing changes to v10.5.1 kernel
- Make CONFIG_FREERTOS_USE_KERNEL_10_5_1 a public option

Note: The beta release is missing some minor fixes, performance improvements,
and features. Using this beta release for production is not recommended.

Closes https://github.com/espressif/esp-idf/issues/7137
2023-09-18 21:32:14 +08:00
Kapil Gupta
3b748a6cb7 Merge branch 'feature/rename_wpa2_ent_to_eap_client' into 'master'
WiFi: Rename WPA2 enterprise APIs to EAP Client.

See merge request espressif/esp-idf!25233
2023-09-18 16:16:54 +08:00
Shu Chen
8aeff259c6 Merge branch 'feature/add_dns64_for_openthread_ci' into 'master'
feat(ci): add ci case for border router

See merge request espressif/esp-idf!25783
2023-09-18 15:55:37 +08:00
KonstantinKondrashov
7a878bdc50 feat(esp_system): Support IPC_ISR for ESP32P4 2023-09-15 23:38:12 +08:00
Peter Dragun
3981aae79f feat(tools/monitor): move target tests to monitor repo 2023-09-15 16:04:11 +02:00
Chen Yudong
1ce30750c9 fix(pre-commit): ignore files not in git repo 2023-09-15 18:57:35 +08:00
Jiang Jiang Jian
b790f0a773 Merge branch 'bugfix/check_mapping_target_conflict' into 'master'
fix(ldgen): check target conflict for entries with section aliases

Closes IDF-8192

See merge request espressif/esp-idf!25921
2023-09-15 10:32:59 +08:00
Lu Ze Yu
43db5fbb6e Merge branch 'contrib/github_pr_12093' into 'master'
hal: fix compile issues with cxx

Closes IDFGH-10892, IDF-8017, and IDF-8014

See merge request espressif/esp-idf!25421
2023-09-15 10:21:11 +08:00
Anton Maklakov
6944ade321 Merge branch 'feature/docker_image_update_qemu8.0.0' into 'master'
tools: Docker: update QEMU to 8.0.0 version, with xtensa and riscv32 chip support

See merge request espressif/esp-idf!25954
2023-09-14 18:39:42 +08:00
Kapil Gupta
5d80a476f1 change(example): Update wifi enterprise example 2023-09-14 13:11:00 +05:30
Xu Si Yu
54f13eaacc feat(ci): add ci cases for openthread border router 2023-09-14 15:30:10 +08:00
Planck (Lu Zeyu)
255d499884 fix(ll): fix cpp compile error
Merges https://github.com/espressif/esp-idf/pull/12093

fix(ll): remove FLAG_ATTR macro

Such kind of operator overload will not work because C++ thinks such overload is ambiguous and it still prefer the built-in one which accepts and returns integer. Manually force type conversion seems to be unavoidable.
2023-09-14 14:48:12 +08:00
Anton Maklakov
51110effb3 feat(tools/docker): update QEMU to 8.0.0 version, with xtensa and riscv32 chip support 2023-09-14 09:57:50 +07:00
Rocha Euripedes
d913418c3a Merge branch 'fix/idf_ci_script' into 'master'
fix(ci): Move error handling to correct scope

See merge request espressif/esp-idf!25777
2023-09-14 02:12:00 +08:00
Mahavir Jain
11bbe9c533 Merge branch 'fix/secure_boot_test_app' into 'master'
fix: Fix espefuse usage in the secure boot test application

See merge request espressif/esp-idf!25668
2023-09-13 22:08:24 +08:00
Euripedes Rocha
f68c94dfbb fix(ci): Move error handling to correct scope 2023-09-13 13:21:02 +02:00
Chen Yu Dong
29b4601bf1 Merge branch 'ci/optimize_rules_patterns' into 'master'
CI: optimize build rules patterns

See merge request espressif/esp-idf!25865
2023-09-13 17:14:25 +08:00
harshal.patil
66bbe8c156
fix: Fix esptool usage in the secure boot test application 2023-09-13 10:29:51 +05:30
Wu Zheng Hui
2319f2a59e Merge branch 'bugfix/suppress_compiler_warning_if_silent_reboot_is_enabled' into 'master'
fix(esp_system): suppress compiler warning if ESP_SYSTEM_PANIC_SILENT_REBOOT is enabled

See merge request espressif/esp-idf!25909
2023-09-13 10:45:31 +08: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
Chen Yudong
e18125edcf fix(ci): optimize build rules patterns
add a script to check build-components-patterns in rules.yml
2023-09-12 13:47:54 +08:00
You Wei
e52fb0abf8 fix(ldgen): duplicate entries in the generated .ld file 2023-09-12 11:20:12 +08:00
Kapil Gupta
c82a792bc3 change(esp_wifi): Port fast_pbkdf2 implementation for mbedlts
Add changes to use fast_pbkdf2 as default for PMK calculations.
fast_pbkdf2 is significantly faster than current implementations
for esp chips.

Also removes unnecessary code for pbkdf-sha256 and pbkdf-sha512.
2023-09-11 19:33:17 +05:30
You Wei
be88d11a81 fix(ldgen): check target conflict for entries with section alias 2023-09-11 21:24:05 +08:00
Kapil Gupta
fd04e98d28 change(esp_wifi): Copy fastpbkdf2 implementation
Copy pbkdf2 implementation from https://github.com/ctz/fastpbkdf2(3c56895)
2023-09-11 06:08:16 +00:00
Island
2bc1f2f574 Merge branch 'mesh_v1.1_idf' into 'master'
feat(ble_mesh): Support Bluetooth Mesh Protocol v1.1 (Preview)

See merge request espressif/esp-idf!25605
2023-09-09 13:06:11 +08:00
Konstantin Kondrashov
2557513fb5 Merge branch 'bugfix/esp32p4_usage_clic_int_thresh_reg' into 'master'
fix(freertos): Use INTERRUPT_CURRENT_CORE_INT_THRESH_REG for esp32p4

See merge request espressif/esp-idf!25840
2023-09-08 22:43:22 +08:00
Liu Linyan
5bab168b0e feat(ble_mesh): Support Bluetooth Mesh Protocol v1.1 (Preview) 2023-09-08 21:37:33 +08:00
Liu Linyan
bf51fb965b feat(ble_mesh): Bluetooth Mesh folder and file misc updates 2023-09-08 21:37:33 +08:00
Roland Dobai
3f88247a45 Merge branch 'fix/click-port-compl' into 'master'
fix(tools): fix autocomplete for --port option

Closes IDFGH-6307

See merge request espressif/esp-idf!25813
2023-09-07 22:35:05 +08:00
KonstantinKondrashov
25c7a59e31 fix(freertos): Use INTERRUPT_CURRENT_CORE_INT_THRESH_REG for esp32p4 2023-09-07 15:25:35 +08:00
Peter Dragun
0a8a5c0e7a fix(tools): fix autocomplete for --port option
Closes https://github.com/espressif/esp-idf/issues/7970
2023-09-06 14:32:48 +02:00
Armando (Dou Yiwen)
bdfa91ab66 Merge branch 'change/delete_not_used_mmu_macros' into 'master'
mm: delete not used mmu macros and added soc_ prefix

Closes IDF-7686

See merge request espressif/esp-idf!25663
2023-09-06 11:59:03 +08:00
Darian Leung
035423eb37 refactor(freertos/idf): Move task creation "PinnedToCore" API to addition headers
This commit moves/merges the IDF FreeRTOS "PinnedToCore" task creation
functions from tasks.c/task.h to idf_additions.h/freertos_task_c_additions.h.

Also updated FreeRTOS Mock component to provide mocks for "idf_additions.h"
headers for our mock tests.
2023-09-05 16:20:59 +08:00
Armando
cbe4470a1b change(soc): remove no longer used mmu.h on p4 2023-09-05 15:47:26 +08:00
Rocha Euripedes
10c21f704c Merge branch 'bugfix/module_logging_tag_lower_case' into 'master'
mqtt: unite supported components tags under common structure

See merge request espressif/esp-idf!22418
2023-09-05 14:06:33 +08:00
Wang Meng Yang
efeb308bc0 Merge branch 'test/bqb_test_bt_classic_hid' into 'master'
feat(bt/bqb): Add setting local di record function for specific hid case of bqb auto test

Closes BT-3359

See merge request espressif/esp-idf!25055
2023-09-05 07:20:24 +08:00
Roland Dobai
d8633ecd4b Merge branch 'feature/remove_test_build_system' into 'master'
Tools: remove test_build_system_cmake.sh & test_build_system_spaces.py + run pytest on macOS.

Closes IDF-532

See merge request espressif/esp-idf!25306
2023-09-01 19:01:40 +08:00
wanglai@espressif.com
25b1e6fe36 fix(bqb): Changed HID related copyright automatically 2023-09-01 01:54:29 +00:00
Radek Tandler
352e759d1d Merge branch 'contrib/github_pr_11118' into 'master'
nvs: support iteration over namespace by handle (GitHub PR)

Closes IDFGH-9782

See merge request espressif/esp-idf!23175
2023-08-31 20:59:19 +08:00
Marek Fiala
b39e541652 feat(tools): Do not run test_create_project_with_idf_readonly on macOS
It corrupts environment on macOS runner because it uses shell, not docker-executor,
and makes all tree read-only for a non-root user.

+ Replace examples with real files in example README.md
2023-08-31 12:54:19 +02:00
Marek Fiala
7d2d8b7839 refactor(tools): Remove test_build_system_cmake.sh & test_build_system_spaces.py 2023-08-31 12:54:19 +02:00
Roland Dobai
d46b6a82f2 Merge branch 'dependency_check_fix' into 'master'
bug(tools): dependency check catch exception when package not installed

Closes IDF-8116

See merge request espressif/esp-idf!25497
2023-08-30 22:31:47 +08:00
Roland Dobai
e2b262fa61 Merge branch 'feature/support_windowsARM64' into 'master'
feat(tools): Added Windows-ARM64 support

Closes IDFGH-8928

See merge request espressif/esp-idf!25547
2023-08-30 22:14:34 +08:00
Roland Dobai
a1ebd76ab3 Merge branch 'bugfix/failed_module_import' into 'master'
fix(tools): extend error message for failed python module import

Closes IDF-8137

See merge request espressif/esp-idf!25643
2023-08-30 18:42:29 +08:00
Roland Dobai
2166d917c5 Merge branch 'gdb_panic_server_remove' into 'master'
fix(tools): remove unused gdp_panic_server; replace with new esp-idf-panic-decoder package

See merge request espressif/esp-idf!24803
2023-08-30 15:52:25 +08:00
Frantisek Hrbata
9511180b4a fix(tools): extend error message for failed python module import
Currently idf.py reports just "Please use idf.py only in an ESP-IDF shell environment".
Sometimes it may be useful to know for which module the import failed.
Also the problem does not have to be related to shell environment only, but the
python venv can be corrupted. This adds a little bit more verbose error
message.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-08-30 08:14:50 +02:00
Cody P Schafer
f2af1c5305 nvs: support iteration over namespace by index
Users of the nvs API are likely to have `nvs_handle_t` in all cases, but
not all of them carry around the partition name and namespace name (as
they aren't needed after creating an `nvs_handle_t`).

Allow this common case to use nvs iteration without them tracking
additional data by using the `nvs_handle_t` to locate the namespace
index and the partition name by introducing an alterate to
`nvs_entry_find` called `nvs_entry_find_in_handle`, which operates
similarly except that it is given a `nvs_handle_t` instead of partition
and namespace strings.

This is somewhat more limited than the `nvs_entry_find` API as one
cannot examine all keys in a given partition.
2023-08-29 13:59:34 +02:00
Peter Dragun
a58be23118 bug(tools): dependency check catch exception when package not installed 2023-08-28 16:03:15 +02: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
Darian
ede131ce73 Merge branch 'refactor/freertos_tslfcb_and_coproc_cleanup' into 'master'
refactor(freertos): Remove portCLEAN_UP_COPROC() and TLSP deletion callback kernel changes from IDF FreeRTOS

See merge request espressif/esp-idf!25481
2023-08-25 15:34:40 +08:00
Marek Fiala
630b77094f feat(tools): Added Windows-ARM64 support
Closes https://github.com/espressif/esp-idf/issues/10345
2023-08-24 16:27:17 +02:00
Peter Dragun
05c883e8f7 feat(tools): remove gdb_panic_server and use just a wrapper for script
gdb_panic_server is now part of esp-idf-panic-decoder
2023-08-24 15:20:29 +02:00
Darian Leung
57eb41ce83 refactor(freertos): Call TLSP deletion callback from portCLEAN_UP_TCB()
Previously, TLSP deletion callbacks were...

- Stored in a seprate TCB member "pvThreadLocalStoragePointersDelCallback"
- Called separately via multipole prvDeleteTLS() insertions in tasks.c

This commit refactors how TLSP deletion callbacks are stored and called:

- TLSP deletion callbacks are now stored in "pvThreadLocalStoragePointers"
directly. configNUM_THREAD_LOCAL_STORAGE_POINTERS is doubled in size so that
the deletion callbacks are stored in the latter half of the array

- The callbacks are now called via "portCLEAN_UP_TCB()". As such, the
prvDeleteTLS() additions are no longer needed and the function can be removed

- Removed some legacy TLSP tests using the old method of storing the callback
pointers.

This commit reduces the source code diff between IDF FreeRTOS and upstream
vanilla FreeRTOS, in preparation for v10.5.1 upgrade.
2023-08-24 19:32:06 +08:00
Erhan Kurubas
4714521b21 feat(coredump): add panic details to the elf file 2023-08-24 10:20:56 +02:00
Armando
6f412393b6 change(ci): add todo to p4 build test enable 2023-08-24 12:51:19 +08:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Rocha Euripedes
9552ef012d Merge branch 'ci/publish_connect_fix' into 'master'
Fix publish connect mqtt test

See merge request espressif/esp-idf!25479
2023-08-24 08:30:53 +08:00
Darian
4962bb51dc Merge branch 'change/freertos_clean_up_tcb_macro' into 'master'
change(freertos): Deprecate usage of vPortCleanUpTCB() by applications

Closes IDF-7256

See merge request espressif/esp-idf!25480
2023-08-24 01:46:20 +08:00
Darian Leung
39cf3638ae change(freertos): Deprecate usage of vPortCleanUpTCB() by applications
Previously, if CONFIG_FREERTOS_ENABLE_STATIC_TASK_CLEAN_UP was enabled, users
would provide a definition for a vPortCleanUpTCB() hook function that is called
right before a task's memory is freed in prvDeleteTCB(). However,
vPortCleanUpTCB() will be reclaimed by ESP-IDF for internal use in v6.0.

This commit introduces the following changes...

Introduced a new CONFIG_FREERTOS_TASK_PRE_DELETION_HOOK option:

- Provides the same pre-deletion hook functionality. But users now define
vTaskPreDeletionHook() instead.
- CONFIG_FREERTOS_ENABLE_STATIC_TASK_CLEAN_UP still exists, but is marked as
deprecated. This is to maintain compatibility with existing applications
that already define vPortCleanUpTCB().
- Removed redundant --wl --wrap workaround with vPortCleanUpTCB()
- Added todo notes to remove support for user defined vPortCleanUpTCB()
completely in v6.0.
- Updated test cases to use new CONFIG_FREERTOS_TASK_PRE_DELETION_HOOK option

Freed up portCLEAN_UP_TCB() to call a new internal vPortTCBPreDeleteHook():

- vPortTCBPreDeleteHook() now replaces the previous "wrapped" implementation
of vPortCleanUpTCB().
- vPortTCBPreDeleteHook() is an internal task pre-delete hook for IDF FreeRTOS
ports to inject some pre-deletion operations.
- Internal pre-delete hook now invokes user provided vTaskPreDeletionHook()
if enabled.
- Relocated vPortTCBPreDeleteHook() to correct section in port.c
2023-08-23 17:50:08 +08:00
Euripedes Rocha
d80a2881d1 ci: Fix publish connect mqtt test
Minor changes necessary to make the test run correctly
2023-08-23 10:04:19 +02:00
harshal.patil
37303266f0
fix(esp_prov): update devices tuple usage due to API deprecations
- a recent commit fixed the API deprecations,
and the BLEDevice object now needs to be accessed through a tuple.
- thus the changes were made in the code wherein the object was used,
but updating the usage in the condition when de
vname is not None got skipped.
2023-08-22 14:44:38 +05:30
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
a63e067d64 Merge branch 'ci/c6_c2_system_build' into 'master'
ci(build_test): enable system/build apps for C6 and C2

See merge request espressif/esp-idf!25400
2023-08-22 11:16:22 +08:00
Marius Vikhammer
f371679a8d ci(build_test): enable system/build apps for C6 and C2 2023-08-18 13:08:06 +08:00
Fu Hanxi
5e4427ab13
ci(pytest): add plugin pytest-ignore-test-results
pass with warning if test job got ignored.
2023-08-18 10:50:18 +08:00
Fu Hanxi
39f3a5f3ac
ci(pytest): skip test case if no app found while collecting, not setup 2023-08-18 08:36:06 +08:00
Fu Hanxi
17bbb2a5a2
ci(pytest): use one class to filter the nightly_run 2023-08-18 08:36:06 +08:00
Fu Hanxi
1d69302eae
ci(pytest): move pytest utils into tools/ci/idf_pytest
For future usage
2023-08-18 08:36:06 +08:00
Fu Hanxi
c8cddaee8a
ci: exclude checking manifest files under managed_components 2023-08-18 08:09:20 +08:00
Ivan Grokhotkov
af79a47422 Merge branch 'contrib/github_pr_12052' into 'master'
Two small patches for build system and fatfs (GitHub PR)

Closes IDFGH-10849

See merge request espressif/esp-idf!25337
2023-08-17 22:01:00 +08:00
Fu Hanxi
7908d04fdb Merge branch 'ci/use_pylint_3.8' into 'master'
ci: pylint with codeclimate

Closes IDFCI-1727

See merge request espressif/esp-idf!25283
2023-08-17 12:04:45 +08:00
Michael (XIAO Xufeng)
47c153b949 Merge branch 'ci/pre-commit-check-build-test-rule-exist' into 'master'
pre-commit: add check that build-test-rule paths must exist

See merge request espressif/esp-idf!25231
2023-08-17 02:25:45 +08:00
Jakob Hasse
f0e7474d30 Merge branch 'feature/wifi_mock' into 'master'
feat(linux): added very simple esp_wifi mock

Closes IDFGH-9190

See merge request espressif/esp-idf!24400
2023-08-16 15:23:15 +08:00
Fu Hanxi
28c9953ffe
ci: pylint with codeclimate 2023-08-15 08:31:45 +08:00
Michal Jenikovsky
e9bb33624b idf.py: gdb action incorrectly generated EOL gdbinit scripts
GDB on Windows incorrectly reads EOL in the script files causing 'gdb'
action to fail.

(gdb) source .../build/gdbinit/py_extensions
(gdb) source .../build\gdbinit\symbols
add symbol table from file "...\build\bootloader\bootloader.elf"
.../build\gdbinit\symbols:6: Error in sourced command file:
Undefined command: "".  Try "help".

Forcing line separator to '\n' resolved the issue

Signed-off-by: Michal Jenikovsky <jendo@jmsystems.sk>
2023-08-11 12:37:29 +02:00
Xiao Xufeng
f51258ec18 ci(pre-commit): add check that build-test-rule paths must exist 2023-08-11 17:04:35 +08:00
Cao Sen Miao
de85f47bc9 feat(i2c): Add I2C driver support for esp32p4 2023-08-11 12:37:11 +08:00
Marius Vikhammer
fc83060fba ci(esp32p4): fixed public header check and build failure for P4 2023-08-11 10:23:02 +08:00
Roland Dobai
ba8c18182a Merge branch 'contrib/github_pr_12046' into 'master'
Docker image Ubuntu LTS distribution upgrade from 20.04 to 22.04 (GitHub PR)

Closes IDFGH-10840

See merge request espressif/esp-idf!25299
2023-08-10 22:10:15 +08:00
Andrii
6a42266795 fix(mqtt): Unite supported components tags under common structure 2023-08-10 09:06:16 +00: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
Jakob Hasse
342a5b428c fix(esp_event): made #include <stdint.h> explicit 2023-08-09 16:17:06 +08:00
Michael Mimo Moratti
acc36cd802 Docker image distribution upgrade from 20.04 to 22.04
The ubuntu LST version 22.04 has standard support until 2027
2023-08-09 08:15:53 +02:00
Fu Hanxi
60db076a96
ci: add pre-commit to cleanup ignore lists 2023-08-09 12:09:31 +08:00
Roland Dobai
0cee3ac6db Merge branch 'feature/rewrite_build_sys_tests_v7' into 'master'
refactor(tools): Rewrite build system unit tests to python

Closes IDF-7926

See merge request espressif/esp-idf!25197
2023-08-09 07:03:38 +08:00
Roland Dobai
33205dad4c Merge branch 'feature/requires_hints' into 'master'
feat(tools): show hints for component dependencies

Closes IDF-6642

See merge request espressif/esp-idf!23950
2023-08-08 23:51:52 +08:00
Roland Dobai
4bbc57cd37 Merge branch 'update/deprecate_python37' into 'master'
feat: Drop Python 3.7 support

Closes IDF-4441

See merge request espressif/esp-idf!24897
2023-08-08 23:30:12 +08:00
Roland Dobai
267e52a6db Merge branch 'fix/bin_names_with_dots' into 'master'
fix(build_system): Allow dots in the name of an app binary

Closes IDF-7973

See merge request espressif/esp-idf!25256
2023-08-08 23:08:04 +08:00
Marek Fiala
7943e01850 refactor(tools): Rewrite build system unit tests to python
Rewritten tests: test_build_system_spaces.py
2023-08-08 16:41:30 +02:00
radim.karnis
8acde05a5c feat: Drop Python 3.7 support 2023-08-08 08:37:29 +02:00
radim.karnis
2b8bbe0a18 fix(build_system): Allow dots in the name of an app binary 2023-08-08 08:35:08 +02:00
Roland Dobai
f5c596e85b fix(tools): Increase timeout in idf_tools.py Python tests 2023-08-07 15:01:51 +02:00
Roland Dobai
6b5b8a88db fix(tools): Keep the original Python environment when idf_tools.py tests are run 2023-08-07 15:01:51 +02:00
Roland Dobai
88b40b4bea fix(tools): idf_tools.py tests should keep the original constraint file 2023-08-07 15:01:51 +02:00
Frantisek Hrbata
c5503b3537 ci(tools): fix test_hints.py to run on windows
1. The original test, before hint modules support was added, used
tempfile.NamedTemporaryFile in a way which is not supported on windows.
It was having the file open, which the hints tried to read it, leading
the EPERM exception. The docs[1] says this is not supported.
<quote>
Whether the name can be used to open the file a second time, while the
named temporary file is still open, varies across platforms (it can be
so used on Unix; it cannot on Windows)
</quote>

2. The hint module component_requirements test used the idf.py directly,
which is idf.py.exe on windows.Now it's starting idf.py through python.
We could probably used shell=True, but this approach is used in other
tests too.

Anyway the test are now passing on windows.

[1] https://docs.python.org/3/library/tempfile.html

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-08-05 20:13:28 +02:00
Frantisek Hrbata
801bf0053d ci(tools): add tests for component_requirements.py hints module
Following tests were added.

1. Test for missing header directory in component's INCLUDE_DIRS
2. Test for missing dependency in component's PRIV_REQUIRES
3. Test for missing dependency in component's REQUIRES
4. Test for dependency in PRIV_REQUIRES which should be in REQUIRES

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-08-05 20:13:28 +02:00
Ivan Grokhotkov
6878ddaa4a feat(tools): idf.py: implement hints for component reqs
Implementation of hint module for component dependency. It can provide
hint about missing header directory in component's INCLUDE_DIRS or
about missing component dependency in REQUIRES or PRIV_REQUIRES.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-08-05 20:13:28 +02:00
Ivan Grokhotkov
54d4662107 feat(tools): idf_monitor: support for loadable hint provider modules
Currently hints are supported based on hints.yml only, which may be
limiting for some use cases. This introduces a generic plugin approach,
which allows to implement hint module that doesn't require entry in hints.yml.
Such module has the full command output available and it is not limited to
a single regex in hints.yml.

Note that regex in hint.yml expects the output concatenated into a single line,
but hint modules are getting the output unchanged.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-08-05 20:13:28 +02:00
Frantisek Hrbata
ed35c3a94a feat(tools): add global build context
Introduces get_build_context() helper, which allows to get build context, e.g.
project description, at places where this info is not available. The
build context is set within ensure_build_directory.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-08-05 20:13:28 +02:00
Roland Dobai
f65b787415 Merge branch 'version_check_fix_dev' into 'master'
fix(tools): check_python_version accept dev releases as requirement

See merge request espressif/esp-idf!25185
2023-08-04 20:02:30 +08:00
Peter Dragun
e0abb5b414 fix(tools): check_python_version accept dev releases as requirement 2023-08-04 09:52:05 +02:00
Alexey Lapshin
16f34704cb fix(gdbstub): skip xtensa_stepping_bug testcase until fixed 2023-08-04 07:41:21 +04:00
Chen Yu Dong
ad84b8f4b4 Merge branch 'ci/add_test_case_phy_tsens' into 'master'
ci: add new test tsens phy coexist

See merge request espressif/esp-idf!24298
2023-08-03 11:17:34 +08:00
Omar Chebib
0368aa5257 Merge branch 'feature/bootloader_ignore_extra_component' into 'master'
bootloader: add the possibility to ignore extra components

Closes IDF-7825

See merge request espressif/esp-idf!24806
2023-08-02 10:28:41 +08: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
Chen Yudong
fe1b03308e ci(tsens): add new test tsens phy coexist 2023-07-31 12:13:24 +08:00
Ivan Grokhotkov
cfa1896780 Merge branch 'contrib/github_pr_11535' into 'master'
Replace deprecated flushregs alias with full gdb command (GitHub PR)

Closes IDFGH-10272

See merge request espressif/esp-idf!24752
2023-07-28 22:40:22 +08:00
Aditya Patwardhan
22d98c2c35 Merge branch 'esp_prov/update_deprecation_warnings' into 'master'
fix(esp_prov): Fixed the deprecation APIs warnings

See merge request espressif/esp-idf!24896
2023-07-28 16:24:09 +08: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
Omar Chebib
7b5c0fb96b ci(build_system): add a test case for bootloader override 2023-07-28 15:04:21 +08:00
Omar Chebib
c98d1f1619 feat(bootloader): add the possibility to ignore extra components 2023-07-28 15:04:21 +08:00
Roland Dobai
240deaaabe Merge branch 'tools/added_chip_rev_field_into_coredump_header' into 'master'
coredump: added the chip_rev field into the coredump header

See merge request espressif/esp-idf!21315
2023-07-26 21:03:18 +08:00
Roland Dobai
7fdf25e757 Merge branch 'contrib/github_pr_11821' into 'master'
feat(idf.py): Allow adding arguments from file via @filename.txt (#11783) (GitHub PR)

Closes IDFGH-10584 and IDFGH-10539

See merge request espressif/esp-idf!24955
2023-07-26 18:51:25 +08:00
Roland Dobai
21b75790ee Merge branch 'bugfix/sbom_hash_check' into 'master'
fix(test_submodules.py): don't rely on submodule init

Closes IDF-7662

See merge request espressif/esp-idf!24492
2023-07-26 18:50:15 +08:00
Aleksei Apaseev
6532076ad6 coredump: added the chip_rev field into the coredump header 2023-07-26 10:53:28 +08:00
Aleksei Apaseev
ba51b09cb2 coredump: added the chip_rev field into the coredump header 2023-07-26 10:53:28 +08:00
Marek Fiala
076779f419 feat(tools): idf.py adding arguments from file via @filename.txt
- moved test inputs to one directory
- removed `-` from test arguments

Closes https://github.com/espressif/esp-idf/pull/11821
Closes https://github.com/espressif/esp-idf/issues/11783
2023-07-25 10:29:09 +02:00
Frantisek Hrbata
bf1a487b73 fix(idf_tools): execution of empty command in get_version()
The ticket below reports some very strange behaviour, where
even a simple command like the following

python3 -c "import subprocess; subprocess.run([''])"

actually spawns some process and pass instead of raising
PermissionError. Even though the problem is most probably somewhere
else, not in idf_tools, we may just return early if there is no
command available for get_version().

Closes https://github.com/espressif/esp-idf/issues/11880

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-07-24 16:19:30 +02:00
Frantisek Hrbata
6936c2d8fc Revert "feat(tools): use ESP_PYTHON during install"
This change seems to be causing problems on macos. Let's revert it
for now and investigate.

This reverts commit 6a7a7317f2.
2023-07-21 09:32:33 +02:00
Nebojsa Cvetkovic
4c1f574c3d feat(idf.py): Allow adding arguments from file via @filename.txt 2023-07-21 06:42:23 +01:00
Roland Dobai
f4a1567474 Merge branch 'bugfix/debug_ext_ctrl_c' into 'master'
tools: fix waiting on gdb process when interrupted with CTRL+C

Closes IDFGH-10638

See merge request espressif/esp-idf!24836
2023-07-20 23:05:53 +08:00
Ivan Grokhotkov
e6c3f62281 Merge branch 'feature/esp_intr_dump' into 'master'
system: add esp_intr_dump API to debug interrupt allocation

Closes IDF-4281 and IDF-6066

See merge request espressif/esp-idf!23877
2023-07-20 19:53:58 +08:00
Roland Dobai
9d2eb96705 Merge branch 'bug/propagate_esp_python' into 'master'
feat(tools): use ESP_PYTHON during install

Closes IDF-7847

See merge request espressif/esp-idf!24857
2023-07-20 18:29:18 +08:00
Chen Yu Dong
7d03999b2b Merge branch 'fix/remove_future_package_usage' into 'master'
esp_prov: remove future usage

See merge request espressif/esp-idf!24887
2023-07-20 15:58:22 +08:00
Chen Yu Dong
5c215405a4 Merge branch 'ci/add_patterns_for_fast_template_job' into 'master'
Ci: add patterns for fast template job

See merge request espressif/esp-idf!24820
2023-07-20 10:40:06 +08:00
Ivan Grokhotkov
0ebe2cecfa
feat(system): add an error log and a hint on failed interrupt alloc
When interrupt allocation fails, esp_intr_alloc will now print a
message telling that no free interrupt was found. This message is
then checked in hints.yml, to give a link to the troubleshooting
guide.
2023-07-19 16:47:41 +02:00
Ivan Grokhotkov
2bcb227542
ci(system): add test app for esp_intr_dump 2023-07-19 16:47:41 +02:00
Chen Yudong
ec39de3992 change(esp_prov): also remove print_function from esp_prov 2023-07-19 21:05:30 +08:00