Commit Graph

224 Commits (75dcacd33a15e009ca62adb15a43f68ad9aa0bd7)

Author SHA1 Message Date
Seppo Takalo ccb77384f1 Remove linefeeds from debug prints 2019-11-04 16:13:33 +02:00
Seppo Takalo 168b51c415 Add storage related files to baseline unittest.
* Refactor some headers to use relative path from Mbed OS root.
* Refactor some data types to compile on 64bit machines.
* Refactor some debug traces to use mbed_trace.
2019-11-04 16:12:36 +02:00
Martin Kojtal fe12608226
Merge pull request #11444 from jeromecoutant/PR_QSPI_EXTERNAL
QSPI : Define default pins at drivers level
2019-10-21 15:19:08 +02:00
Martin Kojtal 7ba151af99
Merge pull request #11603 from kyle-cypress/pr/qspi-bd-format-error
Report errors returned by _qspi_configure_format
2019-10-18 16:05:49 +02:00
Martin Kojtal b6266b5c01
Merge pull request #11604 from kyle-cypress/pr/qspi-inst-type
Introduce qspi_inst_t type for QSPI instructions
2019-10-18 15:46:03 +02:00
toyowata 5389536953 Add bootloader support for Seeed Arch-MAX 2019-10-17 10:05:03 +09:00
Kyle Kearney 52332f9437 QSPIFBlockDevice: Fix incomplete propagation of qspi_inst_t 2019-10-16 15:31:12 -07:00
Martin Kojtal fa6e01a69f QSPIFBlockDevice: fix type on the namespace mbed 2019-10-16 15:31:12 -07:00
Matthew Macovsky b1916fc498 Introduce qspi_inst_t type for QSPI instructions
Encourage the usage of consistent types (there are currently
 a mix of `int` and `unsigned int` used for qspi instructions)
QSPI commands are limited to 8 bits, to this is a typdef to char
2019-10-16 15:31:11 -07:00
Martin Kojtal 58fe0ba7b0
Merge pull request #11636 from maciejbocianski/fix_EFM32GG11_STK3701_qspi_block_device_config
EFM32GG11_STK3701: add QSPIF component config
2019-10-16 19:12:59 +08:00
jeromecoutant f117d3518d QSPIF frequency setting depends on QSPI memory not target.
This makes new board with the same QSPI memory addition.
2019-10-15 17:36:50 +02:00
jeromecoutant 03837a75b7 QSPIF component should use defined QSPI pins 2019-10-15 17:36:49 +02:00
Kyle Kearney 52cb2c2cfc Avoid stale mutex in QSPIFBlockDevice::read
Update to follow the same `goto exit_point` pattern that is used
by the rest of the functions to avoid leaving the mutex locked
when errors are detected and require the function to abort.
2019-10-14 13:59:47 -07:00
Kyle Kearney 3f20b80859 Reuse existing error for _qspi_configure_format
Use QSPIF_BD_ERROR_DEVICE_ERROR instead of introducing a new error code.
Add tr_error calls whenever _qspi_configure_format fails to aid in debugging.
2019-10-11 14:28:25 -07:00
Kyle Kearney 726a73c048 Report errors returned by _qspi_configure_format
The function returns a qspi_status_t but most usages in QSPIFBlockDevice
assume that it always succeeds.
2019-10-11 14:28:13 -07:00
Anna Bridge 489c30f569
Merge pull request #11297 from kyle-cypress/pr/qspi-dummy-cycles
Differentiate alt and dummy cycles in QSPIF
2019-10-11 14:34:17 +01:00
Anna Bridge 7fb52d9300
Merge pull request #11567 from kyle-cypress/pr-dev/simplify-qspi-params
Simplicy QSPIF target overrides for PSoC6
2019-10-11 12:22:09 +01:00
Maciej Bocianski f6b9d26f4d EFM32GG11_STK3701: add QSPIF component config 2019-10-04 16:37:12 +02:00
Matthew Macovsky 6bba46e48f Differentiate alt and dummy cycles in QSPIF
Propagate separate alt cycle and dummy cycle counts from QSPIFBlockDevice
down to the qspi driver, so that drivers which handle the two separately have
enough information to do so.
2019-09-30 16:17:49 -07:00
Matthew Macovsky baf375f8cb Allow for arbitrary QSPI alt sizes
The QSPI spec allows alt to be any size that is a multiple of the
number of data lines. For example, Micron's N25Q128A uses only a
single alt cycle for all read modes (1, 2, or 4 bits depending on
how many data lines are in use).
2019-09-30 14:45:08 -07:00
Ben Cooke dd778c4126 Add MTS_DRAGONFLY_F413RH platform to mbed-os 2019-09-30 13:50:40 -05:00
Kyle Kearney ea7f6683e4 Simplicy QSPIF target overrides for PSoC6
All current PSoC 6 targets support the same QSPI frequency and minimum
program size. So specify a single entry rather than duplicating for
each device.
2019-09-25 14:53:54 -07:00
Veijo Pesonen 6e26b74fdb Adds missing include required by fixed-width format specifiers 2019-09-05 13:20:11 +03:00
Martin Kojtal c74d67ed52
Merge pull request #10711 from geky/add-i2cee-driver
Add i2cee-driver to components
2019-08-30 17:04:01 +02:00
Kyle Kearney 1facc76d22 Specify QSPI frequency for more Cypress targets
Provide values for CY8CKIT_062S2_43012 and CYW943012P6EVB_01
2019-08-28 17:56:27 -07:00
Michal Paszta 5a9183c549 storage: fix potential memory corruption and check return values 2019-08-21 09:26:35 +03:00
Martin Kojtal 101ae73b87
Merge pull request #11063 from linlingao/f_cc3220sf_launchxl
Add CC3220SF_Launchxl to Mbed OS
2019-08-19 12:08:11 +02:00
Pavel Slama 4974c86b54 astyle fix bracket 2019-08-13 21:48:18 +02:00
Pavel Slama 7b0a8f23a2 atyle format 2019-08-13 21:42:10 +02:00
Michal Paszta 73b122b2c4 Coverity and compilation warnings fixes 2019-08-07 10:30:52 +03:00
Pavel Slama 7ff5a45a24 replace wait with rtos sleep 2019-08-06 15:57:16 +02:00
Michal Paszta 1fe59b70e3 Bring back SPIF module-specific debug logs
The logs are switched off by default and can be enabled with a
module-specific compile switch in mbed_app.json.

Logs brought back from PR #10501
2019-08-06 10:53:36 +03:00
int_szyk ae6f8be146 Newline at the end of files 2019-08-01 08:44:58 +02:00
int_szyk 8b68a1ea58 Updated testcases 2019-07-31 10:46:38 +02:00
Lin Gao e74fbcd79e Add CC3220SF_Launchxl to Mbed OS 2019-07-17 13:19:32 -05:00
Kevin Bracey a522dcfa0a Replace deprecated wait calls 2019-07-15 10:13:50 +03:00
Kevin Bracey fc8e8f67c6 Deprecate wait/wait_ms APIs 2019-07-15 10:13:50 +03:00
Martin Kojtal 149d53cc89
Merge pull request #10619 from jamesbeyond/fm-iap
Fastmodel: enable flashIAP and kvstore
2019-07-02 14:23:00 +01:00
Anna Bridge 61881e81fd
Merge pull request #10756 from martinichka/feature-correct-trace-level-storage-spif
Cleaned up trace log SPIF Block Device
2019-06-19 12:29:39 +01:00
Christopher Haster b0d36ebfc1 Remove mbed.h includes from I2CEEBlockDevice 2019-06-13 11:33:14 -05:00
Marten Lootsma 8a328ddc86 Changed to one more info to debug 2019-06-08 08:17:56 +02:00
Marten Lootsma e0ad71554b Fixed astyle error and removed duplicated comment 2019-06-08 07:32:10 +02:00
Qinghao Shi 7a1aafaf40 FastModel: change FVP_MPS2_M3 to FVP_MPS2 enable the MPS2 Family 2019-06-06 18:54:58 +01:00
Qinghao Shi 2e4329192e FastModel: enable FLASHIAP componment 2019-06-06 18:52:30 +01:00
Marten Lootsma aed0d054d7 Added support for SPIF of size bigger than 16Mbyte
- checks if size is bigger than 16Mbyte
- changes to 4 byte address mode of neccessary
2019-06-06 16:01:40 +02:00
Marten Lootsma ed36cc4e06 Add trace logging with size of block device 2019-06-04 16:03:56 +02:00
Marten Lootsma 5484f585a6 Cleaned up SPIF trace log.
- Test most SPIF log to DEBUG level.
- Removed DEBUG/ERROR/INFO tags.
- Removed not needed line endings.
2019-06-04 16:03:56 +02:00
Martin Kojtal 4f6035e6b1
Merge pull request #10501 from davidsaada/david_spif_driver_unlog
Remove excessive info and debug prints in SPIF driver
2019-06-03 08:33:19 +01:00
Christopher Haster 51dd44337b Add 'components/storage/blockdevice/COMPONENT_I2CEE/' from commit 'd92806c11e0e05280c08db0b3ed6459b2d8dea2c'
git-subtree-dir: components/storage/blockdevice/COMPONENT_I2CEE
git-subtree-mainline: 9cc1caa031
git-subtree-split: d92806c11e
2019-05-29 19:34:16 -05:00
Chris Snow 157debffa6 Change erase size to pages to reduce memory usage 2019-05-15 16:23:16 -06:00
Martin Kojtal 3ea1c56124
Merge pull request #10147 from kjbracey-arm/atomic_bitwise
Assembler atomics
2019-05-13 14:18:05 +01:00
Anna Bridge 97e1c9cbaf
Merge pull request #10287 from linlingao/pr10177
Enable MTS_DRAGONFLY_F411RE to register with Pelion
2019-05-10 16:21:46 +01:00
Lin Gao 438a52f15a Fix handoff issue from the bootloader to the application on MTS_DRAGONFLY_F411RE 2019-05-02 11:25:19 -05:00
Ben Cooke 3d68a53b81 Correct the default pins for the spi flash for the mts dragonfly - on behalf of Ben C. 2019-05-02 11:25:19 -05:00
Ryan Morse a8570ffe6c Added support for QSPI to Cypress Boards 2019-05-01 07:09:58 -07:00
David Saada f73544ed7e Remove excessive info and debug prints in SPIF driver. 2019-04-28 12:27:47 +03:00
Kevin Bracey 87396e0bf6 Assembler atomics
Reimplement atomic code in inline assembly. This can improve
optimisation, and avoids potential architectural problems with using
LDREX/STREX intrinsics.

API further extended:
* Bitwise operations (fetch_and/fetch_or/fetch_xor)
* fetch_add and fetch_sub (like incr/decr, but returning old value -
  aligning with C++11)
* compare_exchange_weak
* Explicit memory order specification
* Basic freestanding template overloads for C++

This gives our existing C implementation essentially all the functionality
needed by C++11.

An actual Atomic<T> template based upon these C functions could follow.
2019-04-26 13:12:35 +03:00
Martin Kojtal 6081727cbf
Merge pull request #10115 from enebular/raven
Uhuru RAVEN: Adding platform HAL
2019-04-04 11:05:23 +02:00
Martin Kojtal 040388370f
Merge pull request #10171 from offirko/offir_qspi_bus_mask_fix
Fix QSPIF Bus mode mask and quad enable write SR size
2019-04-01 11:17:23 +02:00
Offir Kochalsky 15fdb6ea7e
Update QSPIFBlockDevice.cpp 2019-03-29 17:37:00 +03:00
offirko e8e0fb4fdf If QER is undefined: do nothing but log warning and continue 2019-03-28 10:18:16 +02:00
jk 23cb826314 Add definition of RAVEN 2019-03-27 17:02:55 +09:00
Ari Parkkila a6c44f87b0 SPIF: Fix SPI_FREQ for MTB_ADV_WISE_1570 2019-03-21 01:11:40 -07:00
offirko 1a4c11e3b5 Fixed Bus Mode bit mask to select best mode.
When setting Quad Enable, either SR1, SR2 or CR setup is required.
Either way register size is up to 2 bytes.
2019-03-20 15:24:46 +02:00
offirko ce5194f2f8 Fix Bus mode mask and status register write size in
some modes in quad enable
2019-03-20 14:27:49 +02:00
Amir Cohen 4d6240d26e Add flashiap block device comment 2019-03-18 14:34:00 +02:00
Amir Cohen 7fac0722a4 Fix functionality for FlashIAPBD & SlicingBD
Due to discovery of inconsistent sector sizes in devices storage the is_valid_erase function was adjusted,
For FlashIAPBD the 'code size' was included to the calculation, preventing faulty "virtual" addresses calculation.
For SlicingBD the same error was fixed and in all 3 validation functions that sent addresses for validation and program/read/erase
different addresses.
2019-03-14 17:46:10 +02:00
Kevin Bracey c368021e37 SPIFBlockDevice.h: include SingletonPtr.h
SPIFBlockDevice was using SingletonPtr without an include,
and only getting it via SPI.h.

Spotted while changing SPI to not use SingletonPtr - now
abandoned, but still this shouldn't have been relying on it.
2019-03-01 14:33:33 +02:00
Amir Cohen 5c7f6cb755 Merge SPIF & QSPIF components test to general block device tests
The SPIF and QPIF components tests are fully merged into general block device tests and were deleted
2019-02-26 10:28:45 -06:00
Deepika d2e11966fc Revert "rand() by default does increment of 1, randomizing more"
This reverts commit f7a6d254f6.
2019-02-26 09:21:19 -06:00
Deepika f7a6d254f6 rand() by default does increment of 1, randomizing more
Random number generation in case of IAR 8, requires TLS support.
Thread local storage is not part of Mbed OS, test is updated to have random
numbers sparse, but in future random number creation should be moved to main
thread, or use some other logic for randomization instead of rand() call.
2019-02-22 16:44:54 -06:00
offirko be1c887477 Ensure unique block address for multi threaded test.
The addresses dont have to change each run, just be unique.
Because address seeds repeat themselves each run, rand() will
produce repeating results that should not collide between
different threads.
2019-02-11 14:41:41 +02:00
Cruz Monrreal ffc52e6a5e
Merge pull request #9478 from deepikabhavnani/refactor_sd
Refactor storage components
2019-01-31 10:21:38 -06:00
Cruz Monrreal 39d46280e2
Merge pull request #9475 from davidsaada/david_flashiap_no_default
FlashIAP Block device: Assert if default constructor is used without setting config parameters
2019-01-31 10:21:20 -06:00
deepikabhavnani 2952735ac0 Moved util (common test folder) inside the TESTS directory
Util was common test folder, which was kept outside as we had
no mechanism to have common files for various tests in tools.
Now same can be achieved by having COMMON folder inside tests
directory
2019-01-30 16:51:05 -06:00
deepikabhavnani 0d6bd2798f Moved `mbed_lib.json` outside config folder
This is to have consistency across all storage components
2019-01-30 16:51:05 -06:00
Martin Kojtal 88d7ef155b
Merge pull request #9531 from theamirocohen/remove_flashiap_tests
Remove COMPONENT_FLASHIAP tests
2019-01-30 09:57:35 +01:00
Martin Kojtal 1031e2d464
Merge pull request #9236 from jeromecoutant/PR_SD_TEST
COMPONENT_SD tests update for small RAM targets
2019-01-30 09:54:41 +01:00
Amir Cohen 35df2de703 Remove COMPONENT_FLASHIAP tests
FlashIAPBlockDevice LittleFS ‘fopen’ falls on nightly tests
LittleFS test on FlashIAP is not relevant and thus removed
2019-01-29 13:54:40 +02:00
Cruz Monrreal 1b1c108528
Merge pull request #9484 from offirko/offir_test_fopen_fixes
Start Component SD test by formatting SD Card
2019-01-24 13:28:33 -06:00
offirko 0bf071809c Start test by formatting SD Card, otherwise FATFS mount might fail
Fix Jira: IOTSTOR-752
2019-01-24 12:44:04 +02:00
j3hill 2a72bb67a3 NRF5x: QSPI SFDP read implementation 2019-01-23 10:24:02 -06:00
j3hill e9f08cb4d4 NRF5x: min read/write implementation 2019-01-23 09:55:27 -06:00
David Saada 22309c93d0 FlashIAP BD: Assert if default constructor is used w/o config change 2019-01-23 16:30:36 +02:00
Cruz Monrreal 0c85d441d2
Merge pull request #9408 from evva-sfw/feature/SPIF_ULBPR
SPIF - Fix command to unlock Global Block-Protection register
2019-01-22 23:59:21 -06:00
jeromecoutant f3ba34a344 DIRS and SEEK SD tests update for small RAM targets
Test buffer size can now be specified for each target
2019-01-18 09:23:40 +01:00
Philipp Steiner f0ec813d71 Update Comments 2019-01-17 11:13:16 -06:00
Philipp Steiner 167a3098c8 Add SPIF_ULBPR command also to QSPIFBlockDevice and SPIFReducedBlockDevice 2019-01-17 11:13:16 -06:00
Philipp Steiner 5f4ff5de8c Add SPIF_ULBPR command and replace wrong command to clear all write-protection bits in the Block-Protection register. 2019-01-17 11:13:16 -06:00
jeromecoutant b070fb47d7 COMPONENT_SD default configuration for ST boards is already defined in TARGET_STM 2019-01-15 17:08:54 +01:00
Mel W 66f5358c4b
some minor streamlining and editorial changes 2019-01-10 14:18:11 +02:00
Juha Ylinen a4a99d61d2 SDBlockDevice docs update 2019-01-10 13:44:10 +02:00
Juha Ylinen 96877b80e6 SPIFBlockDevice docs update 2019-01-09 15:29:34 +02:00
Martin Kojtal a9ce91686c
Merge pull request #9264 from offirko/offir_qspif_reduce_trace_level
reduce info traces to debug level to prevent logs overflow
2019-01-08 12:38:51 +00:00
Martin Kojtal 1c3b6f4f94
Merge pull request #9268 from yossi2le/yossi_fix_flashiap_test
Calculate FlashIAPBlockDevice start address and size automatically for test only
2019-01-08 09:51:28 +00:00
Yossi Levy bdeb54592f This commit fixes an issue in which boards with FlashIAP block device enabled fails the FlashIAP block device tests exists under the component directory. That's because they have no start address and size configured in the mbed_lib.json file. In order to simplify the test for targets with no definitions in the mbed_lib.json, the test will calculate the start address as the first sector after the application ends and up to the max size available. 2019-01-07 15:20:58 +02:00
Martin Kojtal 0eabafa551
Merge pull request #9135 from yossi2le/yossi_get_type_for_bd
Get type for BlockDevice
2019-01-07 12:26:29 +00:00
offirko a270cffe39 reduce info traces to debug level to prevent logs overflow 2019-01-06 12:11:30 +02:00
Cruz Monrreal 54f759176b
Merge pull request #9210 from AnttiKauppila/mbed_h_fix
mbed.h includes removed
2019-01-04 10:27:30 -06:00
Antti Kauppila 02b0f79e15 mbed.h includes removed 2018-12-28 14:36:10 +02:00