Commit graph

196 commits

Author SHA1 Message Date
Ivan Grokhotkov
cb766fb3d6 Merge branch 'bugfix/IDFGH-2910' into 'master'
NVS: bugfix - iterator skipping version 1 blobs

Closes IDFGH-2910

See merge request espressif/esp-idf!8049
2020-03-30 05:18:38 +08:00
Renz Bagaporo
3d0967a58a test: declare requirements and include dirs private 2020-03-23 10:58:50 +08:00
Jakob Hasse
255ae1d32f NVS: bugfix - iterator skipping version 1 blobs
Closes https://github.com/espressif/esp-idf/issues/4954
2020-03-23 09:55:40 +08:00
Ivan Grokhotkov
6afc116036 nvs: enable address sanitizer in host tests when building with clang 2020-03-13 11:29:39 +01:00
Ivan Grokhotkov
d2526e6dda nvs: fix out of bounds array access in host test 2020-03-13 11:29:39 +01:00
Ivan Grokhotkov
db34a4d031 nvs: add test for erase cycles distribution 2020-03-13 11:29:39 +01:00
Ivan Grokhotkov
0cbbd948c0 nvs: clean coverage files on rebuild
Fixes errors reported by libgcov related to merging debug information.
2020-03-13 11:28:04 +01:00
Jakob Hasse
c6deffb8a2 NVS Flash: prevent erasing initialized partition
Closes https://github.com/espressif/esp-idf/issues/4755
Closes https://github.com/espressif/esp-idf/issues/2777

* nvs_flash_erase_partition() checks whether
  the parition in question is initialized
  already and will return an error if so
* reflect changes in the documentation
2020-02-19 18:16:04 +01:00
Bruno Binet
7084015884 Update NVS Partition Generator Utility documentation
to add support for i16, u64, i64 types
2020-02-11 11:18:19 +00:00
Bruno Binet
cab895f459 NVS: add support for i16, u64, i64 types to NVS partition generation tool 2020-02-11 11:18:19 +00:00
Jakob Hasse
e228a2102d Fixed missing implementations 2020-02-03 17:18:21 +01:00
Jakob Hasse
c75ec644f4 NVS: Changed all new to new (nothrow) 2020-01-15 14:01:35 +08:00
Jakob Hasse
d286876d34 NVS: expose C++ API
Closes https://github.com/espressif/esp-idf/issues/3540
2020-01-09 18:29:23 +08:00
Jakob Hasse
c31c45cae7 NVS: partition name is copied now
Closes IDF-1231
2020-01-02 09:18:24 +08:00
Jakob Hasse
5249d33c1f NVS: bugfix nvs_set_str/blob checks write mode 2019-12-18 09:06:45 +08:00
Jakob Hasse
bb1cd9a440 NVS: BUGFIX non-matching type iterator works
Closes IDFGH-2229
2019-12-18 09:06:45 +08:00
Mahavir Jain
f53f450380 nvs_flash: build nvs_encr.cpp only if relevant config option is enabled 2019-11-15 15:58:31 +05:30
Jakob Hasse
d8242fe976 nvs: Added nvs tests, minor corrections
* closes IDF-1135:
  same namespace was used in different tests which
  could lead to conflicts when re-running tests
* removes duplicated functions declarations
* correct argument order for test case macros
2019-11-07 10:23:47 +08:00
Ivan Grokhotkov
5830f529d8 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-02 19:01:39 +02:00
Roland Dobai
833822c10b Fix Kconfig issues discovered by upstream Kconfiglib 2019-09-23 16:10:57 +02:00
Wang Fang
32adfdc307 Add Chinese translation for the 2nd batch of the files in storage folder in api-reference.
1. The translation should be first reviewed by technical reviewers;
2. and then by language reviewers.

For the translation for the first batch of files, please see !MR5620 and !MR5613
2019-09-20 12:32:55 +08:00
Angus Gratton
adfc06a530 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-20 10:28:37 +10:00
Ivan Grokhotkov
bf68285689 Merge branch 'feature/compile_option_O0' into 'master'
build_system: add new compiler optimization levels

See merge request espressif/esp-idf!5686
2019-09-17 16:54:55 +08:00
Angus Gratton
438d513a95 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-16 16:18:48 +10:00
Wang Fang
bea507378e Add Chinese translation for README files in components and tools folders, including:
1. components/nvs_flash/nvs_partition_generator/README_CN.rst
2. components/wear_levelling/README_CN.rst
3. tools/mass_mfg/docs/README_CN.rst
2019-09-06 20:18:19 +08:00
Andrew
4fdaeb6b6e cmake: Add new compiler optimization levels definitions
Rename and add multiple kconfig compiler options. New compiler options
COMPILER_OPTIMIZATION_PERF and COMPILER_OPTIMIZATION_NONE have been added.
Optimize "Debug" and "Release" options to "Default" and "Size" respectively.
This commit also does the following:

- The COMPILER_OPTIMIZATION_PERF option introduced multiple bug.
This commit fixes those bugs.
- build.yml also updated to test for the new optimization options.
2019-09-06 17:37:19 +08:00
Angus Gratton
a3a67a4452 nvs_flash: Include xtensa component when building NVS tests on hosts
esp_attr.h moved to xtensa component in 61ce868396
2019-08-13 17:16:12 +10:00
Angus Gratton
04ae56806c Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 15:26:58 +10:00
Angus Gratton
24d26fccde Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 13:44:24 +10:00
Anton Maklakov
afbaf74007 tools: Mass fixing of empty prototypes (for -Wstrict-prototypes) 2019-08-01 16:28:56 +07:00
Angus Gratton
47bbb107a8 build system: Use CMake-based build system as default when describing commands 2019-07-08 17:31:27 +10:00
Angus Gratton
7ef42f2596 Merge branch 'fix/nvs_util_key_len' into 'master'
nvs_util: Add check for key len in input csv file

See merge request espressif/esp-idf!5392
2019-07-05 10:34:55 +08:00
Shivani Tipnis
cc75721f9c mfg_util: Optimise by adding subparser changes w.r.t similar changes in nvs util changes 2019-07-05 01:13:27 +00:00
Shivani Tipnis
84b2fa4c1c nvs_util: Add check for key len in input csv file
Closes https://github.com/espressif/esp-idf/issues/3113
2019-07-05 01:12:41 +00:00
Ivan Grokhotkov
c730c9e397 nvs: minor host test fixes
Fixes the tests to pass when some files already exist.
Fixes clean target.
Moves CONFIG_NVS_ENCRYPTION definition into sdkconfig.h.
2019-07-02 10:26:06 +02:00
Ivan Grokhotkov
ebcb08ec89 host tests: correct definition of CONFIG_SPI_FLASH_USE_LEGACY_IMPL 2019-07-02 10:10:49 +02:00
Shivani Tipnis
3636e75792 nvs_util: Add NVS decryption feature 2019-06-27 11:51:58 +05:30
Angus Gratton
f55ace596b Merge branch 'fix/update_curr_page_state' into 'master'
nvs_util: Set previous page state to full before creating new page

See merge request idf/esp-idf!5325
2019-06-25 14:21:25 +08:00
Shivani Tipnis
1f9f39fe46 nvs_util: Set previous page state to full before creating new page 2019-06-24 13:53:51 +00:00
Renz Christian Bagaporo
9eccd7c082 components: use new component registration api 2019-06-21 19:53:29 +08:00
suda-morris
3f7a571c90 fix errors when ci testing for esp32 2019-06-19 15:31:47 +08:00
Kirill Chalov
4faf2de035 Doc/review api ref storage 2019-06-17 14:23:52 +08:00
suda-morris
84b2f9f14d build and link hello-world for esp32s2beta 2019-06-11 13:07:37 +08:00
MartinValik
5268960235 Added support for NVS iterators
Closes https://github.com/espressif/esp-idf/issues/129
2019-06-10 16:42:39 +02:00
Angus Gratton
154fc74f76 Merge branch 'bugfix/nvs_typedef_naming_pr3239' into 'master'
nvs: Append _t to nvs_handle & nvs_open_mode types

Closes IDFGH-891

See merge request idf/esp-idf!4783
2019-05-29 08:14:00 +08:00
Angus Gratton
b2e54a9cc6 ci: Add IDF_DEPRECATED macro for things we only deprecate in our CI passes 2019-05-27 17:43:38 +10:00
GOPTIONS\pfrost
897bb55482 nvs: Append _t to nvs_handle & nvs_open_mode types
Merges https://github.com/espressif/esp-idf/pull/3239/
2019-05-22 02:53:28 +00:00
Roland Dobai
1ad2283641 Rename Kconfig options (components/bootloader) 2019-05-21 09:32:55 +02:00
Tim Nordell
c3fa2497b9 nvs: Check if an item is modified before writing out an identical copy
This prevents wear and tear on the flash, and it also is faster in some
cases since the read-out of flash is a cheaper operation than the erasure
of flash.  Some library modules (such as the esp_wifi) write out to NVS
upon every initialization without checking first that the existing value
is the same, and this speeds up initialization of modules that make
these design choices and moves it into a centralized place.

The comparison functions are based on the read-out functions of the same
name, and changes out the memcpy(...) operations for memcmp(...)
operations.

Signed-off-by: Tim Nordell <tim.nordell@nimbelink.com>
2019-04-30 11:39:58 -05:00
negativekelvin
9a319772e1 nvs_flash: Multi-page blob erased using nvs_erase_key should be cleaned properly
Earlier eraseItem function in Storage class would do lazy cleanup of
multi-page blobs if called using type "ANY" instead of "BLOB". It used to
just delete BLOB data and index would remain as is. Any subsequent read
would delete index entry as well. This however would return a valid
length without error if nvs_get_blob API was just used for finding
length and not reading the complete blob. This change fixes this issue.

Closes https://github.com/espressif/esp-idf/issues/3255
2019-04-10 11:45:29 +00:00