6383 Commits

Author SHA1 Message Date
Alexey Lapshin
ed66c1fb7d fix(tools): fix adding tar.gz archive to tools.json if tar.xz is present 2024-11-21 11:45:22 +07:00
Frantisek Hrbata
da1a99d5ed change(conf): add MINIMAL_BUILD note to menuconfig and sdkconfig
With MINIMAL_BUILD enabled, menuconfig will only display configuration
options for components included in the build through main component
dependencies. This means that configuration options for excluded
components will not appear in menuconfig. This might be confusing, as
most examples currently do not use a trimmed build, and all components
detected by the build system are available in menuconfig, even if their
configuration has no effect because the components may not be linked or
used. Adding a note in the components menu of menuconfig could help
users realize they need to add a component to the main component
requirements to see its configuration options. Unfortunately, Kconfig
does not support multiline comments, so there are three separate
comments intended to adequately describe the potentially missing
component configurations.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 20:14:40 +01:00
Frantisek Hrbata
c28b7dc9ac change(ci): disable MINIMAL_BUILD for test_build_cmake_library_psram_workaround
The test_build_cmake_library_psram_workaround verifies that the
mfix-esp32-psram-cache-issue flag is applied to all compile commands in
compile_commands.json when CONFIG_SPIRAM_CACHE_WORKAROUND=y. Although
the import_lib does not need the esp_psram component, this test does. To
avoid adding the esp_psram dependency to the import_lib, disable
MINIMAL_BUILD for this test by explicitly setting the COMPONENTS
variable.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 20:14:40 +01:00
Frantisek Hrbata
8d248d8903 change(ci): disable MINIMAL_BUILD for check_public_headers.py
The check_public_headers.py script does not function well with
MINIMAL_BUILD enabled, as some headers from excluded components may be
missing. While it might be possible to address this issue with
exclusions, it is likely more effective and provides more coverage to
include all components, not just those required by the blink example.
Therefore, MINIMAL_BUILD has been disabled for this test, ensuring that
all registered components are included in the build. If defined, the
COMPONENTS variable takes precedence over the MINIMAL_BUILD property, so
setting "-DCOMPONENTS=" overrides the MINIMAL_BUILD property.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 20:14:40 +01:00
Frantisek Hrbata
1c92945f59 change(examples): switch examples to use a minimal build
Currently, several example dependencies rely on the fact that all
registered components are added to the build, along with components
specified in common requirements. This results in longer build times
because even unused components must be built. Switch all examples to use
idf_minimal_build to compile only the components actually required by
the example.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 20:14:40 +01:00
Frantisek Hrbata
f6fcfbb9e6 feat(cmake): introduce MINIMAL_BUILD build property
Introduce a MINIMAL_BUILD property to streamline the build process by
including only the main component and its direct and indirect
dependencies. This serves as a convenient shortcut for using
set(COMPONENTS main). The MINIMAL_BUILD build property is ignored if the
COMPONENTS variable is defined, as COMPONENTS takes precedence.

To enable a minimal build, add "idf_build_set_property(MINIMAL_BUILD ON)"
to the project's CMake configuration.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 14:11:24 +01:00
Frantisek Hrbata
ad15109daa change(examples): explicitly specify component dependencies for examples
Currently, several examples do not explicitly state their component
dependencies, relying instead on the default behavior that includes all
registered components and commonly required ones in the build.
Explicitly adding component dependencies can reduce build time when
set(COMPONENTS main) is used.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 14:11:24 +01:00
Frantisek Hrbata
496e9cdff8 fix(hints): handle multiple missing headers in the output
The object files are compiled simultaneously, which can result in
several error messages about missing headers. The current regex used to
find missing headers in the compiler's output employs a greedy search,
potentially capturing multiple error messages from different compilation
units. This can cause bug reports where the original component cannot be
identified. Strengthen the regex to ensure it only processes the first
reported error.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 18:41:55 +08:00
Roland Dobai
e3ceabfa1b Merge branch 'feat/uart_line_ending' into 'master'
feat(console): change line endings on standard input and output

Closes IDF-11467

See merge request espressif/esp-idf!34459
2024-11-20 15:36:01 +08:00
Alexey Lapshin
2a6e08431b Merge branch 'feature/move-gdb-options-to_project_description_json' into 'master'
feat(debugging): move gdbinit generation to CMake

Closes IDF-11489

See merge request espressif/esp-idf!34779
2024-11-20 14:30:40 +08:00
Erhan Kurubas
f3790a01cc Merge branch 'sysview_update_356' into 'master'
feat(sysview): update to version 3.56

Closes IDF-8232 and IDF-11088

See merge request espressif/esp-idf!33236
2024-11-19 18:34:27 +08:00
Alexey Lapshin
48a49c8154 feat(debugging): move gdbinit generation to CMake
This feature is useful for 3rd-party software to run GDB with predefined
options that described in project_description.json file

allow to pass custom options to "idf.py gdb":

  --gdb-commands: command line arguments for gdb. (without changes)
  -ex: pass command to gdb.
  -x: pass gdbinit file to gdb. Alias for old --gdbinit command
2024-11-19 16:41:38 +07:00
Peter Dragun
6495a8318d Merge branch 'monitor_multi_elf' into 'master'
feat(monitor): Add support for decoding output based on multiple ELF files

Closes IDF-11026

See merge request espressif/esp-idf!34858
2024-11-19 17:18:35 +08:00
David Cermak
4449c8bfa2 fix(lwip): Remove unused LWIP flags from test configs 2024-11-18 23:06:17 +08:00
Tomas Rezucha
66596b7f59 feat(hints/usb): Add a hint about too small control transfer size 2024-11-18 21:03:30 +08:00
Peter Dragun
28dcb9a889 feat(monitor): Add support for decoding output based on multiple ELF files 2024-11-18 12:35:45 +01:00
Frantisek Hrbata
cf3802a0ac fix(test_apps): do not check line endings in dut.expect
The default newlib read/write syscalls automatically convert newline
endings from LF to CRLF on stdout. Therefore, the test should not
specifically check for LF in the expected output, as the standard
conversion for stdout is CRLF. While it is possible to change the
expected line ending in the test from LF to CRLF, it seems more
dependable to just avoid verifying line endings entirely.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-18 15:42:29 +08:00
Anton Maklakov
16469297b4 Merge branch 'feature/update-gdb-to-15.2_20241112' into 'master'
feat(tools): update gdb version to 15.2_20241112

Closes IDF-11325

See merge request espressif/esp-idf!34859
2024-11-15 22:17:20 +08:00
Radek Tandler
8255ba29a6 Merge branch 'feature/storage_nvs_bootloader' into 'master'
feat(storage/nvs): NVS bootloader support

See merge request espressif/esp-idf!31753
2024-11-15 00:12:18 +08:00
radek.tandler
c445ec134b feat(nvs_flash): Implemented basic nvs_flash support for bootloader 2024-11-14 11:56:45 +01:00
C.S.M
38b737511c Merge branch 'feat/tsens_support_c61' into 'master'
feat(temperature_sensor): Add temperature sensor support on esp32c61

Closes IDF-9322

See merge request espressif/esp-idf!34326
2024-11-14 17:51:36 +08:00
Gao Xu
bbcfb35d67 Merge branch 'feat/h21_introduce_step1_target' into 'master'
feat(esp32h21): introduce target esp32h21 (stage 1/8) 😐

See merge request espressif/esp-idf!34542
2024-11-14 10:46:44 +08:00
Ivan Grokhotkov
c7f32f80f4
feat(tools): autocomplete @-arguments of idf.py with file names 2024-11-13 11:50:48 +01:00
C.S.M
bff20b5397 feat(temperature_sensor): Add temperature sensor support on esp32c61 2024-11-13 10:52:47 +08:00
Marius Vikhammer
f8ddcee8cd Merge branch 'refactor/cache_err_panic' into 'master'
refactor(panic): refactor and unify cache panic errors

See merge request espressif/esp-idf!34382
2024-11-13 10:19:38 +08:00
Roland Dobai
30b13b132d Merge branch 'update/deprecate_python38' into 'master'
feat: Drop Python 3.8 support

Closes IDF-7579

See merge request espressif/esp-idf!34419
2024-11-13 01:40:58 +08:00
Roland Dobai
5bae0b92ec Merge branch 'fix/import_error_msg' into 'master'
fix(tools): re-raise ImportError without module name

Closes IDF-11648

See merge request espressif/esp-idf!34780
2024-11-13 00:07:05 +08:00
Roland Dobai
542a5d280c Merge branch 'contrib/github_pr_14733' into 'master'
fix(cmake): Prevent overwriting of component properties in output file (GitHub PR)

Closes IDFGH-13891

See merge request espressif/esp-idf!34807
2024-11-12 22:48:54 +08:00
Alexey Lapshin
dca5d193fc feat(tools): update gdb version to 15.2_20241112 2024-11-12 14:07:16 +00:00
Frantisek Hrbata
a4acbd2758 feat: Drop Python 3.8 support
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-12 17:02:26 +08:00
Frantisek Hrbata
e8fda6f776 fix(tools): re-raise ImportError without module name
The ImportError or ModuleNotFoundError might be raised without
specifying a module name. In this not so common situation, re-raise the
exception to print all the information that could assist in identifying
the problem.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-12 17:01:46 +08:00
gaoxu
64bbb53b8f feat(esp32h21): introduce target esp32h21(stage 1) 2024-11-12 15:42:27 +08:00
Roland Dobai
cf087cb8e5 Merge branch 'feat/size_unify_sections' into 'master'
feat(tools): unify sections in idf.py size reports for NG version

Closes IDF-11649

See merge request espressif/esp-idf!34788
2024-11-12 13:31:10 +08:00
Fu Hanxi
d03ead4cf8 Merge branch 'ci/improve_overall_logging' into 'master'
ci: target-test job skip installing toolchain, only install python env

See merge request espressif/esp-idf!34232
2024-11-08 23:27:04 +08:00
Mahavir Jain
b3bae69c5c Merge branch 'fix/mfg_gen_csv_and_bin_prefix' into 'master'
feat(mfg_gen): Added file name serial count prefix for intermediate csv and bin...

See merge request espressif/esp-idf!34251
2024-11-08 23:22:58 +08:00
Frantisek Hrbata
798d35b2e1 feat(tools): unify sections in idf.py size reports for NG version
By default, esp-idf-size.ng displays all sections individually. This can
be confusing, especially if CONFIG_SOC_MEM_NON_CONTIGUOUS_SRAM is
enabled, resulting in sections like .dram0.data and .dram1.data being
abbreviated as two .data sections in the size report. To avoid confusion
for idf.py and cmake users, pass the --unify option to the underlying
esp_idf_size.ng by default.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-08 15:44:19 +01:00
sanika.inamdar
99f1455199 feat(mfg_gen): provision for specifying prefix counter for csv/bin files 2024-11-08 18:52:00 +05:30
Fu Hanxi
2a5743c0c5
ci: target-test job skip installing toolchain, only install python env
also run with collapsed time section to better track run time
2024-11-08 11:17:57 +01:00
Fu Hanxi
3e2b56d114
feat: idf_tools.py export support env var "IDF_SKIP_TOOLS_CHECK" 2024-11-08 11:13:44 +01:00
Fu Hanxi
5a3f53a2b5
ci: print esp-coredump output when failed in panic tests 2024-11-08 11:13:43 +01:00
Fu Hanxi
f84f883ab4
ci: change logging level from debug to info for build jobs 2024-11-08 11:13:43 +01:00
Fu Hanxi
d137deed2a
ci: add timeout for build jobs 2024-11-08 11:13:43 +01:00
Fu Hanxi
dcb4bf4600
ci: stop print presigned url, since the credential is masked 2024-11-08 11:13:39 +01:00
Erhan Kurubas
a843827c8e feat(sysview): update to version 3.56 2024-11-07 21:58:30 +01:00
Peter Macko
4fa6e03879 fix(macos): ccache: re-enable, show stats, set CCACHE_DIR, limit CCACHE_MAXSIZE 2024-11-07 22:22:28 +08:00
Marius Vikhammer
9c5dde5536 refactor(panic): refactor and unify cache panic errors 2024-11-07 11:39:40 +08:00
Mahavir Jain
4c6cda734d Merge branch 'feature/mmu_page_size_from_app_bin' into 'master'
feat(bootloader): add support to use MMU page size from app binary

Closes IDF-8209

See merge request espressif/esp-idf!33989
2024-11-06 17:14:31 +08:00
Adam Múdry
b2e0bd9200 Merge branch 'fix/sdmmc_send_acmd22_after_multiple_write_cmd' into 'master'
fix(sdmmc): Send ACMD22 if CMD25 fails

Closes IDF-9630

See merge request espressif/esp-idf!34376
2024-11-06 04:34:06 +08:00
Mahavir Jain
765fe330ea
test: add configurable mmu page size test app
Test app to ensure that bootloader and application built with
different flash MMU page size are compatible. This is for the
SoCs that support configurable flash MMU page size.
2024-11-05 20:37:31 +05:30
Marek Fiala
26002e13fc feat(tools): Imporve activate.py debug information 2024-11-05 13:53:00 +01:00