Commit Graph

120 Commits (56c508b97475f6cf7933cc5e3bf3a1e3752ec468)

Author SHA1 Message Date
Martin Kojtal aeabb9382b
Merge pull request #14137 from rajkan01/fix_fatfilesytem_unmount
Storage: Fix FATFileSystem unmount issue
2021-01-20 14:53:24 +00:00
Martin Kojtal 8effecdf29
Merge pull request #14063 from dustin-crossman/pr/wifi_reserved_region
Support arbitrary storage alongside WiFi firmware in external storage on Cypress targets
2021-01-20 08:34:23 +00:00
Rajkumar Kanagaraj a29e3cd5d8 f_mount() (http://www.elm-chan.org/fsw/ff/00index_e.html - third party libary) API is called from both mount() and unmount() Mbed OS APIs.
f_mount() is doing both initializing (via find_volume() -> disk_initialize() where disk_initialize api calls Mbed OS init() function)
underlying block device and register filesystem but in case of "unmount" calls this f_mount is doing deregister filesystem
and missed to a deinitializing block device. So added the Mbed OS "deint()" call in unmount API to deinitialize block device
as f_mount API doesn't have a way to call deinit().
2021-01-15 04:05:25 -08:00
Hugues Kamba 61f2097223 CMake: Add support for Filesystem Greentea tests
The Filesystem Greentea tests can now be built with CMake
2021-01-12 10:59:58 +00:00
Martin Kojtal 025be19d3d
Merge pull request #14090 from hugueskamba/hk_cmake_greentea_blockdevice
CMake: Add support for Blockdevice Greentea tests
2021-01-12 08:22:55 +00:00
Martin Kojtal 5021c01852
Merge pull request #14088 from hugueskamba/hk_cmake_greentea_kvstore
CMake: Add support for KVstore Greentea tests
2021-01-11 11:46:34 +00:00
Martin Kojtal 9c0cfa9a44
Merge pull request #14078 from hugueskamba/hk_rename_ospif_include_dir
CMake: Add support for OSPIF blockdevice
2021-01-05 11:26:43 +00:00
Hugues Kamba d42e9287de CMake: Add support for Blockdevice Greentea tests
The Blockdevice Greentea tests can now be built with CMake
2020-12-24 15:48:02 +00:00
Hugues Kamba 377fba47e2 CMake: Add support for KVstore Greentea tests
The KVstore Greentea tests can now be built with CMake
2020-12-24 14:16:07 +00:00
Hugues Kamba 69b4c13761 CMake: Add Blockdevice dependency to KVstore library
As KVstore relies on BlockDevice add the dependency
in Mbed OS so applications do not have to specify it
2020-12-21 13:57:52 +00:00
Hugues Kamba b99822628b CMake: Add support for OSPIF blockdevice 2020-12-21 13:04:12 +00:00
Hugues Kamba dca2ec7e7a Correct OSPIF include directory
The include directory was incorrectly named QSPIF.
2020-12-21 12:56:45 +00:00
Martin Kojtal 9e5e245abc
Merge pull request #14036 from ahmetalincak/maxim-max32630fthr-SD-configuration
Add SD component and Update SD card SPI interface for Maxim's MAX32630FTHR
2020-12-18 15:11:09 +00:00
Martin Kojtal 569db57d93
Merge pull request #14065 from hugueskamba/hk_cmake_streamline_kvstore
CMake: streamline kvstore support
2020-12-18 14:16:38 +00:00
Martin Kojtal 7f538a4831
Merge pull request #14041 from harmut01/add_spdx_core
Add SPDX identifier to files in storage
2020-12-18 10:30:54 +00:00
Hugues Kamba eedd0b3258 CMake: streamline kvstore support
Link KVStore dependency in Mbed OS so application projects do not have to.
2020-12-17 13:09:38 +00:00
Matthew Macovsky 8c60ce3e32 Create non-public target for Cypress boards with externally-stored WiFi firmware
Targets that inherit from this target will have the defines necessary to
place the WiFi firmware in external storage and enable use of the
external WiFi firmware reserved region block device.
Currently, the only target inheriting from this new target is
CY8CPROTO-062S3-4343W.
2020-12-16 15:31:05 -08:00
Harrison Mutai 9a5ed511fe Add SPDX identifier 2020-12-15 15:01:25 +00:00
Ahmet Alincak b04e7a18c7 Add SD component and Update SD card SPI interface
To support MAX32630FTHR SD card interface implicitly,
target and SD component configurations updated.
2020-12-11 23:51:09 +03:00
Lingkai Dong b829645cc1 BlockDevice design doc: TDBStore no longer requires flash simulation 2020-12-11 14:56:40 +00:00
Lingkai Dong bfbc18860b KVStore general_tests_phase_1/2: flash simulation no longer required 2020-12-11 14:56:40 +00:00
Lingkai Dong 2064adee7c TDBStore Doxygen: flash characteristics no longer required 2020-12-11 14:56:39 +00:00
Lingkai Dong cfedf1b027 TDBStore whitebox test: flash simulation no longer required 2020-12-11 14:56:39 +00:00
Lingkai Dong 2d8a566718 SecureStore whitebox test: flash simulation no longer required 2020-12-11 14:56:39 +00:00
Lingkai Dong 5880a39f1f TDBStore design doc: flash simulation no longer required 2020-12-11 14:56:38 +00:00
Lingkai Dong 15e582fc27 TDBStore unit test: flash simulation no longer required 2020-12-11 14:56:36 +00:00
Lingkai Dong 3786d3958d kv_config: TDBStore doesn't require flash simulation anymore 2020-12-11 14:55:16 +00:00
Anna Bridge 9f18c445ee
Merge pull request #13908 from LDong-Arm/kvstore_libraries
Restructure KVStore to one library per store type
2020-12-11 13:41:16 +00:00
Martin Kojtal be295e42a4
Merge pull request #13917 from LDong-Arm/move_SFDP
Move SFDP to blockdevice
2020-12-10 13:03:23 +00:00
Lingkai Dong 479b704542 "kvstore_global_api" requires "kvstore" for backward compatibility
PR #13908 replaces the umbrella library for all KVStore from
"kvstore_global_api" to "kvstore". Now "kvstore_global_api"
still exists but is restricted to the global API part only.

By adding "kvstore" as a dependency of "kvstore_global_api",
existing bare metal projects (e.g. mbed-bootloader) that use
the latter library name to pull in the KVStore prototype class
will continue to work.
2020-12-09 17:26:32 +00:00
Lingkai Dong 170c07ccdf KVStore: drop './' from CMake paths 2020-12-09 17:26:32 +00:00
Lingkai Dong 34bbcbff92 Fix astyle in KVStore unit tests 2020-12-09 17:26:32 +00:00
Lingkai Dong 0f5957df14 CMake fix: location of MBED_CONF_FILESYSTEM_PRESENT=1 2020-12-09 17:20:43 +00:00
Lingkai Dong 0c33db04d5 KVStore: componentize CMake definitions into sub-components 2020-12-09 17:20:43 +00:00
Lingkai Dong 26acbd141a Relocate kvstore Greentea tests into each store type's path 2020-12-09 17:20:43 +00:00
Lingkai Dong 8c1dd01066 Relocate kvstore unit tests into each store type's path 2020-12-09 17:20:42 +00:00
Lingkai Dong b3c13bbea9 Update UNITTEST for kvstore 2020-12-09 17:20:42 +00:00
Lingkai Dong 8ba64c4139 Update include paths 2020-12-09 17:20:42 +00:00
Lingkai Dong e27a6e0fa6 Create a kvstore_global_api for the global API and KVMap 2020-12-09 17:20:42 +00:00
Lingkai Dong c2d6e9146c Turn TDBStore and FileSystemStore into standalone libraries 2020-12-09 17:20:42 +00:00
Lingkai Dong 562b31ccd3 Move SFDP unit tests 2020-12-07 12:05:07 +00:00
Lingkai Dong a4907e89df Bring in TDBStore UNITTESTS improvements from PR #13731
Co-authored-by: Seppo Takalo <seppo.takalo@arm.com>
2020-12-02 14:57:43 +00:00
Lingkai Dong fd5b2c569d Avoid force-casting inputs when calling std::min() 2020-12-02 14:57:43 +00:00
Lingkai Dong cf977b7aae TDBStore: the work buffer is at least the program size or 64 bytes
Previously, we always set the work buffer to 64 bytes, without
checking it was no less the actual program size. But we can't
simply switch to use the program size for the work buffer,
because if it's too small (e.g. 1 byte in some cases), we
will not be able to read the status header (24 bytes), and
small buffers means more underlying write operations and
lower efficiency.

This PR changes the work buffer size to be the program size,
or 64 bytes as an absolute minimum like before.
2020-12-02 14:57:43 +00:00
Lingkai Dong ece756c0c4 TDBStore: pad record header to whole program size before storing it
Previously, when writing a record header into a TDBStore, we
took the pointer to the record_header_t variable as the input,
but used a program-aligned chunk size which is larger.
As a result, garbage from the stack memory gets written.

This commit fixes that by buffering the record header.

Co-authored-by: Seppo Takalo <seppo.takalo@arm.com>
2020-12-02 14:57:22 +00:00
Lingkai Dong 23702ff2b3 Update include paths to SFDP.h 2020-11-26 17:31:31 +00:00
Lingkai Dong 5d2fbdc11e Move SFDP into blockdevice where it belongs to 2020-11-26 17:31:31 +00:00
Martin Kojtal aea691a67a
Merge pull request #13960 from harmut01/2260_erase_size_const
Add const keyword to get_erase_size declaration
2020-11-26 15:54:07 +00:00
Martin Kojtal 61e4b55a22
Merge pull request #13947 from LDong-Arm/erase_algorithm_fix
Fix erase type determination for [Q/O/]BlockDevice::erase()
2020-11-26 15:53:03 +00:00
Lingkai Dong c41f7cb864 Fix integer type warnings in SFDP and *SPIFBlockDevice 2020-11-26 10:28:58 +00:00