Commit Graph

398 Commits

Author SHA1 Message Date
radek.tandler 6b75e170dc fix(nvs_flash): Fixed overwrite of V1 BLOB when legacy compatibility mode is in place 2025-10-24 12:23:51 +02:00
radek.tandler 78badb5480 refactor(nvs_flash): Improved Blob performance
- The findItem method was improved to use a hash list in RAM when searching for BLOB data chunks
- The findItem method was extended with a parameter that returns the position of an item on the page,
  if it is found
- The algorithm for matching existing variable-length data (such as strings and BLOBs) with
  new values was enhanced by comparing the CRC32 of the data chunks before reading the data from flash
2025-10-24 12:23:51 +02:00
radek.tandler 14e2bc906b fix(nvs): fixed erasing of old values if new data type is not the same
Closes https://github.com/espressif/esp-idf/issues/15559
2025-10-24 12:23:51 +02:00
Sergei Silnov e3d37f5dbc Merge branch 'ci/disable-plugin-idf_ci_v5.4' into 'release/v5.4'
ci: disable idf-ci plugin (v5.4)

See merge request espressif/esp-idf!39666
2025-06-26 04:26:54 -03:00
wanckl ea03622621 ci(esp32c61): remove c61 support from readme on 5.4 2025-06-17 15:09:40 +08:00
Fu Hanxi 4594a84ddb ci: disable idf-ci plugin
this plugin will be re-enabled with compatible code in !38755
2025-06-11 10:56:24 +02:00
Jiang Jiang Jian fd37cd46b2 Merge branch 'feat/nvs_pytest_add_non_ascii_string_test_v5.4' into 'release/v5.4'
feat: Add NVS generator check test for CRC of non-ASCII strings (v5.4)

See merge request espressif/esp-idf!38842
2025-05-12 10:46:10 +08:00
Adam Múdry 5929a8eacc feat: Add NVS generator check test for CRC of non-ASCII strings 2025-04-29 16:47:24 +02:00
wuzhenghui 33aca83c63 change(ci): remove esp32c5 from readme since esp32c5 skipped CI build 2025-04-25 17:13:27 +08:00
hrushikesh.bhosale 6988a149b4 feat(nvs_tool): Test for print_minimal_json
Added the test for the print_minimal_json function
and setup_minimal_json function to setup the test.
2025-04-23 16:23:18 +02:00
hrushikesh.bhosale f21a30fee2 fix(nvs_flash/nvs_tool): Fix nvs_tool.py to output required values
nvs_tool.py did not provide the minimal output support which outputs
the only necessary data.

nvs_tool.py minimal text ouptut, the deliminators were not handled
in the output

Closes https://github.com/espressif/esp-idf/issues/15274
2025-04-23 16:23:18 +02:00
Jiang Jiang Jian 9920b0994c Merge branch 'fix/test_nvs_gen_check_read_only_part_support_v5.4' into 'release/v5.4'
fix: test_nvs_gen_check.py support for read-only NVS partitions (v5.4)

See merge request espressif/esp-idf!37078
2025-04-07 13:57:25 +08:00
Peter Macko a71141a250 ci: Update esp-env-v5.4 to Ubuntu 24.04 and handle related issues
- Allow test_pytest_linux failures
- Allow test_transport_on_host failures
- Fix deprecated C++ syntax by removing unused volatile variable in nvs_page_test
- Add x509_crt_bundle.S.o GNU-stack ld warning to ignore list
2025-03-28 15:59:44 +01:00
Adam Múdry 8db2420a2e fix: test_nvs_gen_check.py support for read-only NVS partitions 2025-02-18 16:33:43 +01:00
radek.tandler 9a21f5fb81 fix(ci): Removed storage related ignore warnings 2025-02-10 16:43:33 +01:00
radek.tandler 4e8bb8a082 feat(nvs_flash): Implemented basic nvs_flash support for bootloader 2024-11-27 15:22:46 +01:00
Adam Múdry 67ab814756 fix(nvs): Fix the nvs generator test (write_namespace safer behavior change) 2024-11-12 14:56:38 +01:00
Adam Múdry d7cb8f5b9a Merge branch 'docs/nvs_check_documentation' into 'master'
Docs: Add nvs_check.py documentation

Closes IDF-11024

See merge request espressif/esp-idf!33952
2024-10-10 22:03:45 +08:00
Adam Múdry c672db530b docs(nvs): Document nvs_check.py functions 2024-10-08 08:33:32 +02:00
radek.tandler 6a23790608 remove(nvs_flash/test_nvs_host): Old make based host tests removed after complete migration 2024-10-01 15:25:27 +02:00
Adam Múdry 20d1a480ab feat(nvs): Add raw_data variable to NVS_Partition class in nvs_parser.py 2024-10-01 15:18:27 +02:00
Sonika Rathi d5da858cd9 refactor: remove dependency on spi_flash include for sector size 2024-09-26 13:01:24 +08:00
Adam Múdry 05b356f87f feat(nvs): Test nvs_partition_gen.py and nvs_check.py with pytest
Little fixes in nvs_check.py
2024-08-30 16:21:42 +02:00
Adam Múdry 6cb2080076 fix(nvs): nvs_tool.py reduce false duplicate warnings 2024-08-21 19:06:27 +08:00
Adam Múdry 4e7d2ec241 refactor(nvs): nvs_tool.py integrity check refactor 2024-08-21 19:06:27 +08:00
radek.tandler b937cb7549 fix(storage/nvs): Fixed hadling of inconsistent values in NVS entry header
feat(storage/nvs): Added test cases for damaged entries with correct CRC
2024-08-20 10:57:24 +02:00
Jakob Hasse d626bcac35 Merge branch 'refactor/nvs_coverage_gcovr' into 'master'
refactor(nvs_flash): Use gcovr instead of lcov for host-based page test

See merge request espressif/esp-idf!31734
2024-08-19 15:24:24 +08:00
igor.udot 8691672f03 ci: replace pytest function 2024-07-23 14:07:31 +08:00
wanlei 3cf069c7d8 feat(esp32c61): disable unsupported build test 2024-07-16 16:06:19 +08:00
Xiaoyu Liu 2cb9419b14 change(esp_rom): optimize target-specific header files layout in components/esp_rom 2024-06-27 11:24:45 +08:00
Jakob Hasse eb0e894d94 refactor(nvs_flash): Use gcovr instead of lcov for host-based page test 2024-06-25 19:21:54 +02:00
Alexey Lapshin ed6e497c6f feat(build): add COMPILER_STATIC_ANALYZER option 2024-06-18 14:25:37 +08:00
Konstantin Kondrashov 391aabf73f Merge branch 'feature/linux_esp_err_support' into 'master'
feat(esp_common): Support ESP_ERROR_CHECK_ macros on Linux

Closes IDFGH-12933

See merge request espressif/esp-idf!31320
2024-06-06 22:17:28 +08:00
Radek Tandler c21b5bbbf2 Merge branch 'feature/storage_nvs_psram' into 'master'
nvs_flash: Enable heap allocation in SPIRAM

See merge request espressif/esp-idf!27181
2024-06-06 19:51:12 +08:00
radek.tandler ffaf1d2968 feat(nvs_flash): Added Kconfig option contolling NVS heap allocation source
NVS configuration is extended with Kconfig option controlling RAM area for
NVS heap allocation. Either Internal RAM or SPIRAM can be chosen.
Tests were extended to check memory consumption from Internal and SPIRAM pool with respect
to the Kconfig option chosen.
Documentation was extended with notes related to NVS behavior in various situations.
2024-06-06 08:25:51 +02:00
Konstantin Kondrashov 023d112cbf feat(esp_common): Support ESP_ERROR_CHECK_ macros on Linux
Closes https://github.com/espressif/esp-idf/issues/13893
2024-06-05 09:00:51 +03:00
Frantisek Hrbata fbe8bf89ee fix: properly resolve component dependencies
There is currently a bug in the __build_resolve_and_add_req function in
tools/cmake/build.cmake where the check for registered component
requirements is incorrectly applied to the component itself rather than
its dependencies. This issue likely originated from a typo, using
component_target instead of _component_target. To prevent further
confusion, _component_target has been renamed to _req_target.

Fixing this revealed multiple incorrect dependencies for the Linux
target, which have now been resolved by explicitly specifying the
dependencies for the Linux target.

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

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-05-30 22:01:55 +08:00
Konstantin Kondrashov 712005c451 Merge branch 'feature/log_level_check_refactoring' into 'master'
feat(log): Refactoring tag level check APIs

Closes IDF-9083, IDF-7919, and IDFGH-6947

See merge request espressif/esp-idf!29331
2024-05-17 22:36:27 +08:00
Adam Múdry 7b32f27e81 Merge branch 'fix/nvs_tool_entry_unknown_type_crash' into 'master'
fix(nvs): Fix nvs_tool accepting an unknown entry type

See merge request espressif/esp-idf!30503
2024-05-17 21:05:22 +08:00
Adam Múdry 9eedd57a18 fix(nvs): Fix nvs_tool accepting an unknown entry type 2024-05-17 13:18:52 +02:00
Konstantin Kondrashov c3b0418a4e feat(log): Refactoring tag level check APIs 2024-05-16 09:26:08 +03:00
harshal.patil 3eb6487bb5 fix(bootloader_support): Make esp_flash_encrypt.h independent of spi_flash_mmap.h header 2024-05-13 16:54:45 +05:30
Mahavir Jain 0d36eb3342 fix(tests): correct the flash write length for NVS encrypted test
Write only till the embedded file size in the NVS partition. Earlier
the length was kept as the whole partition size and it could result
in accessing embedded rodata beyond the MMU mapped range.
2024-05-02 13:24:45 +05:30
Mahavir Jain c032a8b04a fix(tests): remove unused partition NVS bin file 2024-05-02 13:23:35 +05:30
Aditya Patwardhan 1366949c8a feat(docs): Add workflow for externally enabling NVS Encryption
Fix documentation for host based workflows for flash encryption and
    secure boot v2
2024-04-19 11:29:21 +05:30
Adam Múdry 8e43afef3b fix(nvs): Fix possible collision with app trace sysview defines
Global.h defines U8, I8, U16, etc. symbols, which are also used in NVS
as a part of custom enum class and this can cause a compilation error
during macro expansion, when sysview is enabled and FreeRTOS.h is included in NVS
2024-04-12 13:46:51 +02:00
laokaiyao 65b1fd33d3 ci(esp32c5mp): disable the unsupported tests 2024-04-07 12:13:29 +08:00
Ivan Grokhotkov 10cc15b150 fix(storage): applied spelling fixes by codespell pre-commit hook 2024-03-28 13:00:54 +01:00
Jakob Hasse f482a9153a Merge branch 'fix/add_libbsd_string_h' into 'master'
refactor(linux): Unified libbsd handling

See merge request espressif/esp-idf!29457
2024-03-21 10:11:25 +08:00
Jakob Hasse 4d629be602 refactor(linux): Unified libbsd handling
* Users can now use libbsd string.h and sys/cdefs.h functionality
  (e.g., strlcpy, containerof) on Linux by just including
  string.h or sys/cdefs.h. In other words, the includes are the same
  on the Linux target as well as on chips targets (ESP32, etc.).
* libbsd linking is done by the linux component (belongs to common
  components) now instead of handling it separately in each component
2024-03-08 12:26:54 +08:00