Commit Graph

117 Commits

Author SHA1 Message Date
Patrick Rathje d6c7dc7f25 Revert "Use development platformio version"
This reverts commit 3bb569ccf4.
2021-05-25 18:08:10 +02:00
Patrick Rathje a87c8928c2 Update src/ens/sequencenumber.c
Support equal values of older and newer
2021-05-25 18:06:15 +02:00
H1ghBre4k3r bb6be05d53 Records: Rewrite interator_init_timerange and binary_search to take care of invalid entries etc. 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 4f1f5b6eab SN: Finish impl of sn_get_middle_sn to cover case of older > newer 2021-05-25 18:06:15 +02:00
H1ghBre4k3r b96fc5ec50 Config: Introduce CONFIG_ENS_MAX_CONTACTS as possibility to configure the max amount of contacts stored in flash 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 70168608a5 ENS_FS: Fix wrong bitmask 2021-05-25 18:06:15 +02:00
H1ghBre4k3r fde55d947e Add TODOs for refactoring according to PR review and refactor ens_fs_write to return error, if entry is not only ones 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 594035ed77 Config: Move parameters for MX25R64 into platformio.ini file 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 873c84ae7f ENS_FS: Fix all wrong usages of fs->entry_size 2021-05-25 18:06:15 +02:00
H1ghBre4k3r b90c8d7ec6 ENS_FS: Only copy memory if read entry is valid 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 796cf0f089 Fix multiple results of the PR:
- cleanup of sequence number utilites
- dynamic calculation of nvs sectors for fs information
- usage of buffer in ens_fs
- check for max entry size (page size)
- usage of interal entry size, which is always the next larger power of 2 to a given entry size
2021-05-25 18:06:15 +02:00
H1ghBre4k3r 3abbc61757 Storage: Add 3 byte for metadata to record_t and use it in initialization for ens_fs 2021-05-25 18:06:15 +02:00
H1ghBre4k3r a9e7c6354d Prj-Conf: Remove already defined config parameters 2021-05-25 18:06:15 +02:00
H1ghBre4k3r ece832fbff Storage: Use correct datatypes for storage information 2021-05-25 18:06:15 +02:00
H1ghBre4k3r e36bfa751a Storage: Adjust record_information correctly when erasing pages and deleting contacts 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 970a42aea8 Use record instead of contact as naming convention 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 36ad239a87 Storage: Remove comment in load_contact 2021-05-25 18:06:15 +02:00
H1ghBre4k3r b3a2a6919b Sequence Numbers: Introduce GET_MASKED_SN macro 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 30615a895d Records: In init_range, set finished to false, if there are contacts 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 33f64b1caa Records: In iterator_clear, also set sequence numbers to 0 2021-05-25 18:06:15 +02:00
H1ghBre4k3r f0762bf1dd Records: In iterator_next, use memcpy to next contact 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 0f2307e668 Records: In iterator_next, combine if-guard with while-loop 2021-05-25 18:06:15 +02:00
H1ghBre4k3r dd2f0a1265 Records: In init_timerange, use init_range after finding start and end sn 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 6b6a40d383 Use lock for ens_fs 2021-05-25 18:06:15 +02:00
H1ghBre4k3r b729d794bf Apply suggestions for ens_fs 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 96eef185c9 Apply suggestions for covid.c 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 0b681c6d28 Use environment extension for platformio.ini 2021-05-25 18:06:15 +02:00
H1ghBre4k3r c428971599 Remove unneeded text file 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 534a61c471 Add locks for the storage 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 80cba23823 Format ens files and add .clang-format file 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 522a2aab9d Use binary search in init_timerange 2021-05-25 18:06:15 +02:00
H1ghBre4k3r aa17d584b3 Implement ens_records_iterator_init_timerange via binary search 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 9e52f3c3c4 Fix incompatible pointer in ens_fs and comment unneeded variables out 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 1101dd950f Remove unneeded contacts code and cleanup gatt-service.h 2021-05-25 18:06:15 +02:00
H1ghBre4k3r b2d89d5d03 Implement error codes and use them throughout ens_fs 2021-05-25 18:06:15 +02:00
H1ghBre4k3r c8607507b7 Use record_t for storing contacts 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 9ae226d50b Implement correct read using crc and deleted flag and implement deletion 2021-05-25 18:06:15 +02:00
H1ghBre4k3r ca35b6a82c Delete page before incrementing sn 2021-05-25 18:06:15 +02:00
H1ghBre4k3r bf9ad9cbec Store CRC and 'not-deleted' flag in last byte of each entry 2021-05-25 18:06:15 +02:00
H1ghBre4k3r c4f035246b Store contacts in ens_fs 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 30dc3c31eb Init ens_fs in storage.c 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 725259cfce Use NVS to store storage information 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 68ed7371cc Rename storage partition 2021-05-25 18:06:15 +02:00
H1ghBre4k3r cfa29284a3 Move sequence-number utils to ens folder aswell 2021-05-25 18:06:15 +02:00
H1ghBre4k3r d38996a021 Implement ens_fs and move ens stuff to ens directory 2021-05-25 18:06:15 +02:00
H1ghBre4k3r f367e22db6 Automatically increment sequence number 2021-05-25 18:06:15 +02:00
H1ghBre4k3r da234280b8 Add mutex for entire NVS 2021-05-25 18:06:15 +02:00
H1ghBre4k3r b8eb13f634 Increase NVS to 192 sectors, 16.384 byte each 2021-05-25 18:06:15 +02:00
H1ghBre4k3r 9ddbe15170 Add support for external onboard-storage 2021-05-25 18:06:15 +02:00
H1ghBre4k3r f1bee6fbe2 Handle contact deletion for contact_information 2021-05-25 18:06:15 +02:00