Commit Graph

5113 Commits

Author SHA1 Message Date
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
Chen Yudong
2ffc5ac6e6 change(esp_prov): remove future usage
drop python2 support for esp_prov
2023-07-19 21:05:06 +08:00
harshal.patil
9e1edd74c7 fix(esp_prov): Fixed the deprecation APIs warnings
- Updated the extraction of service_uuids using AdvertisementData
- Replaced the `get_services()` API with the `services` property
2023-07-19 14:24:47 +05:30
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
Frantisek Hrbata
6a7a7317f2 feat(tools): use ESP_PYTHON during install
Currently ESP_PYTHON is used in the install.sh script, but it's
overwritten in detect_python.sh. This allows to explicitly specify
python binary, which should be used to create venv.

$ ESP_PYTHON=/usr/bin/python3.7 ./install.{sh,fish}
$ ESP_PYTHON=/usr/bin/python3.7 ./export.{sh,fish}

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-07-19 10:10:56 +02:00
Fu Hanxi
4a8c9ecb60 Merge branch 'ci/fix_skipping_qemu_test' into 'master'
CI: fix skipping qemu test

See merge request espressif/esp-idf!24880
2023-07-19 15:06:06 +08:00
morris
fb7cc00378 Merge branch 'refactor/reorganize_the_interrupt_description_files' into 'master'
refactor(interrupt): Put the interrupts definitions in soc/interrupts.h

Closes IDF-5776

See merge request espressif/esp-idf!24578
2023-07-19 12:05:56 +08:00
Fu Hanxi
7610e535ea
ci: ignore test scripts under managed_components 2023-07-19 11:21:49 +08:00
Roland Dobai
79b15bd410 Merge branch 'feature/rewrite_build_sys_tests_v6' into 'master'
Tools: Rewrite build system unit tests to python - git

Closes IDF-7386

See merge request espressif/esp-idf!23860
2023-07-19 01:20:06 +08:00
Roland Dobai
c5b355143a Merge branch 'contrib/github_pr_11836' into 'master'
fix: create-project & create_component with proper file permission (GitHub PR)

Closes IDFGH-10599

See merge request espressif/esp-idf!24854
2023-07-19 01:16:38 +08:00
Marek Fiala
f4e3c9c03a refactor(tools): Rewrite build system unit tests to python
Rewritten parts:
 - git
 - version
 - build
2023-07-18 15:51:04 +02:00
Marek Fiala
e8ee59f68b fix(tools): create-project with proper file permission - pre-commit fix
Closes https://github.com/espressif/esp-idf/pull/11836
2023-07-18 14:08:37 +02:00
Alexey Lapshin
99ac68246e fix(freertos): enable esp32c2 runtime-gdbstub 2023-07-18 12:15:33 +04:00
Chen Yudong
2c22b74479 ci(rules): add patterns fast template app
Update pre-check job rules
2023-07-18 11:21:24 +08:00
Ryan Yin
354e2c4673 feat: fix: create-project & create_component with proper file permission 2023-07-17 19:32:30 +08:00
Chen Jichang
304c7572a6 refactor(interrupt):put the interrupts definitions in soc/interrupts.h
Now the soc interrupts definitions are scattered around in the esp-idf
which are out of sync. Put interrupts definitions in soc/periph_defs.h
(!ESP32) or soc/soc.h(ESP32) together in soc/interrupts.h.
2023-07-17 19:31:56 +08: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
Frantisek Hrbata
ff1ce54869 fix(debug_ext): CTRL+C handling while waiting on gdb process
idf.py spawns gdb process within a thread and uses Thread.join() to wait
for the gdb process to finish. As CTRL+C(SIGINT) is used by gdb to interrupt the
running program, we catch the SIGINT while waiting on the gdb to finish,
and try Thread.join() again.

With cpython's commit

	commit a22be4943c119fecf5433d999227ff78fc2e5741
	Author: Victor Stinner <vstinner@python.org>
	Date:   Mon Sep 27 14:20:31 2021 +0200

	    bpo-45274: Fix Thread._wait_for_tstate_lock() race condition (GH-28532)

this logic doesn't work anymore, because cpython internally marks the
thread as stopped when join() is interrupted with an exception. IMHO
this is broken in cpython and there is a bug report about this
https://github.com/python/cpython/issues/90882. Problem is that
waiting on a thread to finish is based on acquiring a lock. Meaning
join() is waiting on _tstate_lock. If this wait is interrupted, the
above referenced commit adds a logic that checks if the lock is help,
meaning the thread is done and marks the thread as stopped. But there is
no way to tell if the lock was acquired by us running join() or if it's
held by someone else e.g. still by the thread bootstrap code. Meaning
the thread is still running.

I may be missing something, but I don't see any reason why to spawn gdb
process within a thread. This change removes the thread and spawns gdb
directly. Instead waiting on a thread, we wait on the process to finish,
replacing join() with wait() and avoiding this problem.

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

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-07-17 08:00:23 +02:00
Roland Dobai
60a7b72b53 Merge branch 'orig_idf_version' into 'master'
tools(kconfig): add initial and current versions of IDF to kconfig

Closes IDF-3539

See merge request espressif/esp-idf!24183
2023-07-15 01:19:57 +08:00
Wu Zheng Hui
deae388e3c Merge branch 'bugfix/fix_sleep_cache_spi_safe_issues' into 'master'
Power Management: fix cache spi flash related issues in sleep process

Closes WIFI-6009 and IDF-7572

See merge request espressif/esp-idf!24270
2023-07-15 00:37:31 +08:00
Mahavir Jain
e73447622b Merge branch 'docs/update_cn_for_nvs-flash_and_flash-encryption' into 'master'
Docs: Update CN for nvs-flash and flash-encryption

Closes DOC-5321

See merge request espressif/esp-idf!24519
2023-07-14 23:04:32 +08:00
wuzhenghui
797efb1dd3 ci: add pd_vddsdio in lightsleep UT tests
- Add pd_vddsdio in lightsleep UT tests to ensure proper functionality
2023-07-14 21:21:23 +08:00
Chen Yudong
3434d1a64d ci(tools): fix build_template_app.sh syntax error 2023-07-14 19:47:08 +08:00
Roland Dobai
88f18aa54a Merge branch 'bugfix/import_curses_module_check' into 'master'
Tools: curses tool existence check

Closes IDFGH-10387

See merge request espressif/esp-idf!24462
2023-07-14 16:58:37 +08:00
Roland Dobai
6fd497428b Merge branch 'pkg_resources_deprecation' into 'master'
[tools] python_dep_check: replace deprecated pkg_resources with importlib

Closes IDF-7603 and IDFGH-10465

See merge request espressif/esp-idf!24436
2023-07-14 13:58:40 +08:00
Wang Zi Yan
3e4152cdcf docs: Update CN for nvs_flash.rst and flash-encryption.rst 2023-07-14 04:05:53 +00:00
Chen Ji Chang
7ec38eb309 Merge branch 'bugfix/update_all_esp32xxx/rom/gpio.h_comments' into 'master'
gpio: Update the incorrect comments in rom/gpio.h

Closes IDFGH-10490

See merge request espressif/esp-idf!24487
2023-07-13 19:44:31 +08:00
Armando (Dou Yiwen)
c7d8b06fd2 Merge branch 'feature/add_esp32p4_esp_rom_support' into 'master'
esp_rom: add esp32p4 esp_rom support

See merge request espressif/esp-idf!24703
2023-07-13 19:08:42 +08:00
Daniel Mangum
647e7a2a71
fix: Replace deprecated flushregs alias with full gdb command
Usage of `flushregs` in gdb will result in the following warning:

```
Warning: 'flushregs', an alias for the command 'maintenance flush register-cache', is deprecated.
Use 'maintenance flush register-cache'.
```

This patch updates to use the recommend command.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
Merges https://github.com/espressif/esp-idf/pull/11535
2023-07-13 09:26:47 +02:00
Armando
3461449494 feat(esp32p4): added esp_rom support 2023-07-13 12:38:54 +08:00
Chen Jichang
b9c22b126a bugfix(driver/gpio):update the incorrect comment
There are some register description errors in parts of rom/gpio.h
This commit update the incorrect comments in rom/gpio.h And now
esp_rom_gpio.h is recommend instead of rom/gpio.h. So this commit adds
macro SIG_GPIO_OUT_IDX in esp_rom_gpio_connect_out_signal
function and removes the reference to gpio.h in some source files.

Closes https://github.com/espressif/esp-idf/issues/11737
2023-07-13 10:52:50 +08:00
Marek Fiala
206c46325a fix(tools): Tool curses import check
Verify that curses tool can be successfully imported on unix systems

When detected:
- installing esp-idf -> reinstall python environment
- using idf.py menuconfig -> raise error with hint message

Closes https://github.com/espressif/esp-idf/issues/11643
2023-07-12 13:23:06 +00: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
Peter Dragun
c7da726b0b fix(tools/python_dep_check): replace deprecated pkg_resources with importlib
Closes https://github.com/espressif/esp-idf/issues/11712
2023-07-11 16:09:03 +02:00
Jakob Hasse
87f8a8e20c Merge branch 'feature/mock_usb_serial' into 'master'
usb serial mock

See merge request espressif/esp-idf!24565
2023-07-11 19:32:50 +08:00
Roland Dobai
a065f0fc9f Merge branch 'feature/apptrace_visualization' into 'master'
Apptrace realtime visualization support

See merge request espressif/esp-idf!22694
2023-07-11 17:33:24 +08:00
Wu Zheng Hui
4c713227ae Merge branch 'bugfix/fix_idf_monitor_parsing_pc_with_wrong_rom_elf' into 'master'
bugfix: fix idf passing wrong chip revision to idf_monitor

See merge request espressif/esp-idf!24609
2023-07-11 17:14:10 +08:00
Roland Dobai
15c4b93893 Merge branch 'asyncio_error' into 'master'
[Tools] hints: add guide to fix error with unsupported asyncio

Closes IDFGH-10485

See merge request espressif/esp-idf!24528
2023-07-11 17:05:11 +08:00
Roland Dobai
5fca97387b Merge branch 'coredump-info-offset' into 'master'
Tools: coredump-info - fix non-default partition table offset issues

Closes IDFGH-10305

See merge request espressif/esp-idf!24087
2023-07-11 17:03:05 +08:00
morris
682e5ae450 Merge branch 'feature/esp_gdma_ops' into 'master'
feat(esp_gdma): add hal interface for common operations

Closes IDF-7809

See merge request espressif/esp-idf!24433
2023-07-11 10:40:42 +08:00
Peter Dragun
d4428ca1db feat(tools/kconfig): add initial and current versions of IDF to kconfig 2023-07-10 17:01:51 +02:00
Jakob Hasse
9ed56031b2 feat(linux): added esp_wifi mocking support 2023-07-10 19:40:09 +08:00
Jakob Hasse
54450fa4c2 feat(driver): Added usb serial mock 2023-07-10 17:46:59 +08:00
Peter Dragun
58c467f3aa fix(tools/coredump-info): pass non-default partition table offset to esp-coredump
Closes https://github.com/espressif/esp-idf/issues/11564
2023-07-10 10:42:06 +02:00
Jakob Hasse
fad3294f04 Merge branch 'refactor/merge_linux_driver_build_test' into 'master'
Linux: Merged rmt and driver Linux build test to one application

See merge request espressif/esp-idf!24395
2023-07-10 15:44:50 +08:00
morris
56a376c696 feat(esp_gdma): add hal interface for common operations
GDMA driver will be adapted to more DMA peripherals in the future.
This commit is to extract a minimal interface in the hal layer
2023-07-10 13:45:57 +08:00
Mahavir Jain
c3e5f05622 Merge branch 'example/remove_http2_example' into 'master'
remove(http2_request): Move http2_request example to idf-extra-components repository

Closes IDF-7659

See merge request espressif/esp-idf!24561
2023-07-07 13:25:02 +08:00
Armando (Dou Yiwen)
adb93a3770 Merge branch 'feature/add_esp32p4_soc_support_part_3' into 'master'
soc: added soc headers for esp32p4 (part 3)

See merge request espressif/esp-idf!24481
2023-07-07 11:44:46 +08:00
Armando
611c1037a2 feat(soc): added soc_caps.h on esp32p4 2023-07-06 17:54:31 +08:00
morris
2e5eb30382 Merge branch 'origin/bugfix/fix_header_violations_in_hal_component' into 'master'
Fix(components/hal): fix header violations in hal component

Closes IDF-7658

See merge request espressif/esp-idf!24493
2023-07-06 10:32:25 +08:00
Planck (Lu Zeyu)
333553caf2 fix(hal): check the public header files and fix violations
fix(hal/include): fix header violations in hal component
fix(hal/include): Move type definitions from `xx_hal.h` to `xx_types.h`
fix(hal/include): Move type definitions from `xx_hal.h` to `xx_types.h`
fix(hal/include): Add comment for a far away `#endif`
fix(hal/include): change scope for cpp guard
ci: Remove components/hal/ comment from public headers check exceptions
Add missing include macro sdkconfig.h for header files
Add missing include macro stdbool.h for header files
Add missing include macro stdint.h for header files
Add missing capability guard macro for header files
Add missing cpp guard macro for header files
Remove some useless include macros
Add some missing `inline` attribute for functions defined in header files
Remove components/hal/ from public headers check exceptions
fix(hal/include): fix invalid licenses
fix(hal/include): fix invalid licenses
fix(hal/include): add missing soc_caps.h
fix(hal): include soc_caps.h before cap macro is used
fix(hal): Remove unnecessary target check
fix(hal): fix header and macro problems
Add missing include macro
Remove loop dependency in hal
Add comment for far-away endif
fix(hal): Add missing soc_caps.h
ci: update check_copyright_ignore.txt
Change the sequence of `#include` macro, cpp guard macro
Change the wrap scope of capacity macro

fix(hal): Change position of C++ guard to pass test
2023-07-05 17:33:32 +08:00
wuzhenghui
78c959b13e fix: fix idf passing wrong chip revision to idf_monitor 2023-07-05 17:30:12 +08:00
morris
f0c07f82b5 fix(test): check call graph for hal component 2023-07-05 09:09:01 +08:00
morris
0298e6f257 Merge branch 'feature/gpio_num_per_target' into 'master'
refactor(gpio): per-target gpio number definition

See merge request espressif/esp-idf!24546
2023-07-04 14:12:39 +08:00
Harshit Malpani
c24d012808
remove(http2_request): Move http2_request example to idf-extra-components repository
Related: https://github.com/espressif/idf-extra-components/pull/193/
2023-07-03 17:46:16 +05:30
Peter Dragun
341390f928 fix(tools/hints): add guide to fix error with unsupported asyncio
Closes https://github.com/espressif/esp-idf/issues/11732
2023-07-03 10:26:26 +02:00
morris
d623ce0d53 refactor(gpio): per-target gpio number definition 2023-07-03 13:33:11 +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
Alexey Lapshin
f92908ceb1 Merge branch 'fix/segger_sysview_build' into 'master'
fix(app_trace): Fix SystemView build

Closes IDF-7661

See merge request espressif/esp-idf!24430
2023-06-30 01:12:07 +08:00
Frantisek Hrbata
26ccaf35f0 fix(test_submodules.py): don't rely on submodule init
Current version of the test is using "git-submodule foreach", which
requires submodules to be initialized. Non-initialized submodules are
ignored. Our CI is not performing submodule initialization, but instead
it only downloads the submodule content in tools/ci/ci_fetch_submodule.py
from cache and copies it into the submodule path.

Since we already know the submodule path from .gitconfig, we can use it
as argument to git-ls-tree and avoid calling git-submodule at all. This
allows to perform the test even if the submodules are not initialization
and also it makes the code simpler.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-29 10:47:24 +02:00
Alexey Lapshin
ef699e70ad fix(app_trace): Fix SystemView build 2023-06-28 18:28:36 +04:00
radim.karnis
6a2a7521c8 ci(esp_idf_monitor): Extend test_app for ROM ELF address decoding 2023-06-28 15:42:05 +02:00
Fu Hanxi
0fa985ceb0 Merge branch 'ci/fix_multi_dut_real_test_case_missing_issue' into 'master'
ci(pytest): fix multi-dut missing c test case in the junit report issue

See merge request espressif/esp-idf!24418
2023-06-28 09:03:27 +08:00
Eren Terzioglu
804c12646b feat(apptrace): Added sensor data visualization example
Added example and python script to show how to transfer and visualize sensor data.
2023-06-27 18:32:56 +03:00
Martin Vychodil
e097c40345 Merge branch 'bugfix/memprot_checks' into 'master'
[System] remove Memprot specific checks and setup (heap caps, OS restart)

Closes IDF-7255

See merge request espressif/esp-idf!23433
2023-06-27 21:14:09 +08:00
Mahavir Jain
f2f5b41702 Merge branch 'example/remove_coap_example_from_idf' into 'master'
Move CoAP examples to idf-extra-component repository

See merge request espressif/esp-idf!24376
2023-06-27 15:59:19 +08:00
Alex Lisitsyn
a12537decb Merge branch 'update/docs_api_refs_modbus_esp32h2' into 'master'
docs: updated modbus api reference documents for target esp32h2

Closes IDF-6679

See merge request espressif/esp-idf!23931
2023-06-27 15:01:04 +08:00
Jiang Jiang Jian
7b89dcf029 Merge branch 'bugfix/change_shell_to_python' into 'master'
change shell to python

See merge request espressif/esp-idf!24295
2023-06-27 13:47:28 +08:00
Harshit Malpani
d9e8aca7ee
remove(coap)!: Move CoAP examples to idf-extra-components repository
Related:
https://github.com/espressif/idf-extra-components/pull/188
2023-06-27 11:16:21 +05:30
Fu Hanxi
63fe059b55 ci(pytest): fix multi-dut missing c test case in the junit report issue 2023-06-27 11:06:22 +08:00
Martin Vychodil
65bc1ed055 System: remove digital-system reset within OS restart when Memprot on 2023-06-26 20:22:59 +02:00
morris
1c0be26531 fix(soc): soc header files can pass CI check 2023-06-26 23:00:45 +08:00
ding huan
859df2a983 feat(certs): Add python script for generating certificate 2023-06-26 22:38:33 +08:00
aleks
f6a5474336 docs: updated modbus api reference documents for target esp32h2 2023-06-26 14:00:31 +00:00
Radim Karniš
7edf6f16d1 Merge branch 'fix/pyparsing_3.1.0_compatibility' into 'master'
Fix: pyparsing>=3.1.0 compatibility

Closes IDF-7593

See merge request espressif/esp-idf!24329
2023-06-26 01:46:01 +08:00
Jakob Hasse
775a7eb566 refactor(CI): Merged rmt and driver Linux build test 2023-06-25 17:25:49 +08:00
radim.karnis
4020b0deb0 fix: Compatibility with pyparsing>=3.1.0 2023-06-20 19:45:05 +02:00
wuzhenghui
ef8e8c1719 bugfix: increase pm_dump time field width
Closes https://github.com/espressif/esp-idf/issues/11704
2023-06-20 20:17:50 +08:00
Fu Hanxi
cf0e2273b5 ci: ignore pkg_resources deprecation warning 2023-06-20 08:38:01 +08:00
Song Ruo Jing
921713fff4 uart: Support LP_UART port with UART driver on esp32c6 2023-06-16 07:31:40 +00:00
Jiang Jiang Jian
3a45d4e949 Merge branch 'bugfix/update_esp_rom_layout' into 'master'
esp_rom: fix rom layout issues

See merge request espressif/esp-idf!23888
2023-06-16 13:55:08 +08:00
David Čermák
28c643a56d Merge branch 'feature/example_network_wifi_bridge_provisioning' into 'master'
Examples/Network: Add WiFi to Eth/USB bridge example

See merge request espressif/esp-idf!23978
2023-06-16 01:04:32 +08:00
Konstantin Kondrashov
c350c3c504 Merge branch 'feature/cleanup_wrong_log_use' into 'master'
all: Removes unnecessary newline character in logs

Closes IDFGH-10197

See merge request espressif/esp-idf!24131
2023-06-15 21:49:49 +08:00
Jiang Jiang Jian
13c794f5be Merge branch 'feature/add_generate_cert_script' into 'master'
add generate cert script

See merge request espressif/esp-idf!24075
2023-06-15 20:32:58 +08:00
Ding Huan
864f7632a4 add generate cert script 2023-06-15 20:32:57 +08:00
Wan Lei
dccc31e9e4 Merge branch 'refactor/remove_apb_ctrl_reg' into 'master'
sysreg: deprecate apb_ctrl related reg

Closes DOC-5139

See merge request espressif/esp-idf!24135
2023-06-15 14:57:32 +08:00
Marek Fiala
5033637899 Tools: Rewrite build system unit tests to python - partitions, components, docs 2023-06-14 12:17:53 +00:00
Armando (Dou Yiwen)
6f4ee07b69 Merge branch 'feature/uf2_c6_p4' into 'master'
tools: added UF2 identificator for esp32c6 and esp32p4

Closes IDF-5626

See merge request espressif/esp-idf!24223
2023-06-14 18:48:26 +08:00
Frantisek Hrbata
314ebbcf36 tools: add sbom-hash check to pre-commit
This uses the test from CI introduced in MR !23989. Even though the
original CI test is run with pytest, it doesn't use any pytest specific
code/features and it should never need them. So it make sense just to
re-use the code.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-14 09:31:10 +00:00
Roland Dobai
f351c3fc35 Merge branch 'feature/submodules_sbom' into 'master'
tools: add sbom information for submodules

Closes IDF-7416

See merge request espressif/esp-idf!23989
2023-06-14 17:30:06 +08:00
Armando
107b84eb31 tool: added UF2 identificator for esp32c6 and esp32p4
The IDs were submitted in https://github.com/microsoft/uf2/pull/76
2023-06-14 15:29:23 +08:00
Armando (Dou Yiwen)
17d6768e65 Merge branch 'feature/add_target_esp32p4' into 'master'
esp32p4: introduce the target

See merge request espressif/esp-idf!24155
2023-06-14 10:16:44 +08:00
Roland Dobai
0de9dab5bb Merge branch 'fix/flash_progression_processing' into 'master'
tools: process progression for flash action output

See merge request espressif/esp-idf!23911
2023-06-13 23:03:38 +08:00
Anton Maklakov
b9cc4f045b Merge branch 'feature/tools_add_ulp_linux_i686_toolchain' into 'master'
tools: add ULP toolchain for linux-i686 platform

See merge request espressif/esp-idf!24185
2023-06-13 16:38:14 +08: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
Armando
101e6a18eb esp32p4: introduce the target
Add esp32p4 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32p4`
2023-06-13 15:16:11 +08:00
Marius Vikhammer
6d11c37ff1 core-system: trim build components for core-system test apps 2023-06-13 09:14:42 +08:00
Anton Maklakov
d58004f57a tools: add ULP toolchain for linux-i686 platform
Closes https://github.com/espressif/esp-idf/issues/11561
2023-06-13 00:48:23 +07:00
Alexey Lapshin
07c7fe929b tools: process progression for flash action output 2023-06-12 13:56:59 +04:00
wanlei
3ed82deedf sysreg: deprecate apb_ctrl related reg, suggest syscon 2023-06-09 17:34:10 +08:00
Marek Fiala
ae99820399 Tools bugfix: Removed working directory when using idf.py
Added check for existence of current working directory when using idf.py

Closes https://github.com/espressif/esp-idf/issues/11476
2023-06-09 08:46:26 +00: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
KonstantinKondrashov
e72061695e all: Removes unnecessary newline character in logs
Closes https://github.com/espressif/esp-idf/issues/11465
2023-06-09 03:31:21 +08:00
Alexey Gerenkov
dd5880cca6 build: Add Clang toolchain file for ESP32-H4 2023-06-08 16:49:42 +03:00
Alexey Gerenkov
e9345bcced build: Adds support for Clangs's toolchain compiler-rt 2023-06-08 16:49:37 +03:00
David Cermak
08c5e6e07c provisioning: Add httpd transport (alias of softAP, netif agnostic)
The script works the same way with httpd and softap mode, but it's a bit
confusing to provision the device over Ethernet or USB and call the
transport "softap". That's why we introduce an alias called httpd which
uses the same idea (http server with service name), but that service
runs on any interface (where the specified service is available)
2023-06-08 07:33:52 +02:00
Frantisek Hrbata
7819965039 tools: do not disable pytest-embedded
As pointed out by Fu Hanxi, the pytest_build_system job is currently
using --parallel-index and --parallel-count, which are provided by
pytest-embedded, so we should not disable it. Moreover to properly
disable pytest-embedded we should use "no:pytest_embedded". Meaning
this probably was not working as indented anyway.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-06 15:01:08 +02:00
Frantisek Hrbata
925bc17cd0 tools: add sbom information for submodules
This adds SBOM information for submodules, which are not managed
by Espressif. Meaning there is no fork for them in the espressif
namespace. Other submodules should add sbom.yml manifest file to
the root of their git repository.

The SBOM information for submodules is stored in the .gitmodules file.
Each SBOM related variable has the "sbom-" prefix and the following
variables may be used:

sbom-version:
   submodule version

sbom-cpe:
   CPE record if available in NVD. This will be used by the SBOM
   tool to check for possible submodule vulnerabilities. The
   version in the CPE can be replaced with the "{}" placeholder,
   which will be replaced by the "sbom-version" value from above.

sbom-supplier:
   Person or organization who is providing the submodule.
   It has to start with "Person:" or "Organization:" prefix
   as required by the SPDX-2.2 standard.

sbom-url:
   URL to the project if exists, e.g. github.

sbom-description:
   Project description.

sbom-hash:
   Submodule SHA as recorded in the git-tree. This field is used by
   CI to check that the submodule checkout hash and info in .gitmodules
   are in sync. IOW if submodule is updated and it has SBOM info in
   .gitmodules, the .gitmodules has to be updated too. The test is
   part of this commit. The checkout has of the submodule can be found
   by using "git submodule status".

Example for micro-ecc submodule
---8<---
[submodule "components/bootloader/subproject/components/micro-ecc/micro-ecc"]
	path = components/bootloader/subproject/components/micro-ecc/micro-ecc
	url = ../../kmackay/micro-ecc.git
	sbom-version = 1.0
	sbom-cpe = cpe:2.3🅰️micro-ecc_project:micro-ecc:{}:*:*:*:*:*:*:*
	sbom-supplier = Person: Ken MacKay
	sbom-url = https://github.com/kmackay/micro-ecc
	sbom-description = A small and fast ECDH and ECDSA implementation for 8-bit, 32-bit, and 64-bit processors
	sbom-hash = d037ec89546fad14b5c4d5456c2e23a71e554966
---8<---

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-06-06 15:01:08 +02:00
Fu Hanxi
a58aed1187 Merge branch 'ci/fix_multi_needs_test_cases_skipped_issue' into 'master'
ci: fix duplicated names for generated built app list

See merge request espressif/esp-idf!24034
2023-06-06 11:24:39 +08:00
Marius Vikhammer
adef00f363 Merge branch 'bugfix/comp_opt_level_debug_rename' into 'master'
core-system: changed CONFIG_COMPILER_OPTIMIZATION_DEFAULT to CONFIG_COMPILER_OPTIMIZATION_DEBUG

Closes IDFGH-6776

See merge request espressif/esp-idf!24033
2023-06-06 10:31:01 +08:00
Fu Hanxi
4ff9ed5971 ci: fix duplicated names for app list issue 2023-06-05 10:19:11 +08:00
Zim Kalinowski
2ab094192d Merge branch 'bugfix/saving-esp-idf-env-as-utf8' into 'master'
build system: fix init.bat crash in windows when folder contains unicode characters

See merge request espressif/esp-idf!24024
2023-06-02 20:32:55 +08:00
Marius Vikhammer
bd4c0fca3c core-system: changed CONFIG_COMPILER_OPTIMIZATION_DEFAULT to CONFIG_COMPILER_OPTIMIZATION_DEBUG
DEBUG is more descriptive and is consistent with the name used in the bootloader:
CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG

Closes https://github.com/espressif/esp-idf/issues/8404
2023-06-02 15:16:50 +08:00
Roland Dobai
fff19088a2 Merge branch 'feature/extend_proj_desc_json' into 'master'
extend information in project_description.json

Closes IDF-7412

See merge request espressif/esp-idf!23972
2023-06-01 20:44:47 +08:00
Zim Kalinowski
b506176e65 build system: fix init.bat crash in windows when folder contains unicode characters 2023-06-01 10:44:54 +02: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
9f31c65458 Merge branch 'feature/c6_ulp_gpio' into 'master'
ulp: added gpio API for lp core

Closes IDF-6834

See merge request espressif/esp-idf!23766
2023-06-01 09:50:33 +08:00
Alexey Gerenkov
8846674e54 tools: Upgrade Clang toolchain to 'esp-16.0.0-20230516' 2023-05-31 22:07:15 +03:00
Frantisek Hrbata
56289013ba tools: extend information in project_description.json
This extends information provided in the project_description.json file.
Newly added information can be used in the SBOM generating tool and
also to improve hints regarding the the component dependency issues.

Added fields

version:
   This adds versioning to the project_description.json file,
   so it's easy to identify if it contains the required information.

project_version:
   Can be used as a version for the resulting binary e.g. `hello_world.bin`.

idf_path:
   This one is probably not necessary, but it allows tools to run even without
   esp-idf environment exported(e.g. export.sh).

c_compiler:
   The `CMAKE_C_COMPILER` value with full path to the compiler binary. This can
   be used to get information about toolchain, which was used to build the project.

common_component_reqs:
   List of common components as presented in cmake's __COMPONENT_REQUIRES_COMMON
   and set in tools/cmake/build.cmake:__build_init().

build_component_info:
   Detailed information about components used during build. It's a
   dictionary with the component name as a key and each component has
   a dictionary with detailed information. Following is an example for
   the efuse component.

   "efuse": {
       "alias": "idf::efuse",
       "target": "___idf_efuse",
       "prefix": "idf",
       "dir": "/home/fhrbata/work/esp-idf/components/efuse",
       "type": "LIBRARY",
       "lib": "__idf_efuse",
       "reqs": [],
       "priv_reqs": [ "bootloader_support", "soc", "spi_flash" ],
       "managed_reqs": [],
       "managed_priv_reqs": [],
       "file": "/home/fhrbata/work/blink/build/esp-idf/efuse/libefuse.a",
       "sources": [ "/home/fhrbata/work/esp-idf/components/efuse/esp32s3/esp_efuse_table.c", ... ],
       "include_dirs": [ "include", "esp32s3/include" ]
   }

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-05-30 12:07:20 +02:00
Frantisek Hrbata
483b7ae763 tools: fix make_json_list to return empty json list for empty cmake list
Currently make_json_list() returns '[ "" ]' for empty cmake list. Fix this
so empty json list is returned instead.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2023-05-30 12:07:20 +02:00
Marius Vikhammer
350650eb73 ci: cleanup tools/system test apps 2023-05-30 15:42:37 +08:00
Marius Vikhammer
dacc51dd2b ulp/lp-core: added gpio API for lp core as well as an example showcasing it. 2023-05-29 11:13:47 +08:00
Fu Hanxi
22e2738f78 ci: build and test only modified components related test cases 2023-05-26 22:59:57 +08:00
Fu Hanxi
35adff40e0 ci: get_mr_info support components 2023-05-26 22:59:56 +08:00
Roland Dobai
729f791e90 Merge branch 'fix/idf_tools_certificate' into 'master'
Tools: Update the certificate of idf_tools.py

See merge request espressif/esp-idf!23832
2023-05-25 22:25:11 +08:00
Mahavir Jain
e2fe2bf152 Merge branch 'fix/xts_aes_register_prefix_discrepency' into 'master'
fix: xts aes register prefix discrepancy

Closes DOC-5136 and DOC-5140

See merge request espressif/esp-idf!23900
2023-05-25 16:40:13 +08:00
Zim Kalinowski
c74c18520e Merge branch 'bugfix/improve-git-describe-handling' into 'master'
build system: more accurate error information for git_describe

Closes IDFGH-7504

See merge request espressif/esp-idf!23891
2023-05-25 16:21:40 +08:00
harshal.patil
0058fb3a05 esp32c3: xts-aes register prefix discrepency 2023-05-25 11:27:10 +05:30
Fu Hanxi
d29b3ee584 Merge branch 'test/idf-build-apps-1.0.0' into 'master'
CI: make master pipeline compatible with idf-build-apps 1.0.0 release

See merge request espressif/esp-idf!23892
2023-05-25 13:51:21 +08:00
Fu Hanxi
1f851fd405 ci: fix breaking change in idf-build-apps 1.0.0 2023-05-25 08:36:44 +08:00
Chen Yu Dong
2da7873096 Merge branch 'bugfix/case_tester__multi_dev_cases' into 'master'
CI: fix multi dev case tester

See merge request espressif/esp-idf!23869
2023-05-24 16:26:02 +08:00
Roland Dobai
5e6beade2d Merge branch 'feature/rewrite_build_sys_tests_v4' into 'master'
Tools: Rewrite build system unit tests to python - idf.py sdkconfig, bootloader, components

Closes IDF-7164

See merge request espressif/esp-idf!22325
2023-05-24 14:19:35 +08:00
Zim Kalinowski
369d8a0f8a build system: more accurate error information for git_describe
Closes https://github.com/espressif/esp-idf/issues/9071

See merge request espressif/esp-idf!23891
2023-05-23 18:30:01 +02:00
Marek Fiala
fb0dc46183 Tools: Rewrite build system unit tests to python - sdkconfig, bootloader, components 2023-05-23 09:47:39 +00:00
jiangguangming
0d0fa7bda2 esp_rom: fix rom layout issues 2023-05-23 17:04:10 +08:00
Laukik Hase
a06118012e
docs: Update nvs_flash docs for the HMAC-based NVS encr-keys protection scheme
- Also updated the `nvs_partition_generator` and `mass_mfg` tools
  documentation
2023-05-23 13:55:57 +05:30
Laukik Hase
9ac87fcc8b
nvs_partition_gen/mass_mfg: Support for HMAC-based scheme for generating NVS encr-keys 2023-05-23 13:55:55 +05:30
Laukik Hase
c1bed366ba
nvs_flash: Add support for HMAC-based NVS encryption keys protection scheme
- This features allows the NVS encryption keys to be derived and protected using
  the HMAC peripheral. Since the encryption keys are derived at runtime, they
  are not stored anywhere in the flash and hence this feature does not require
  a separate `nvs_keys` partition.
2023-05-23 13:55:52 +05:30
Alexey Lapshin
072b70bed9 Merge branch 'fix/hints-print-control-characters' into 'master'
tools: fix control characters print if hints enabled

Closes IDFGH-10075

See merge request espressif/esp-idf!23872
2023-05-23 14:19:16 +08:00
Alexey Lapshin
59206e39a0 tools: fix control characters print if hints enabled
Closes https://github.com/espressif/esp-idf/issues/11351
2023-05-22 20:18:02 +08:00