Skip to content

Commit 3be2b8b

Browse files
author
Veijo Pesonen
committed
QSPIFBlockDevice: Makes default configuration to use mbed_lib.json settings
QSPIFBlockDevice parameters come from mbed_lib.json if not provided explicitly. Introduced an app config file for running filesystem tests with QSPIF modules
1 parent 803ae34 commit 3be2b8b

File tree

3 files changed

+53
-13
lines changed

3 files changed

+53
-13
lines changed

components/storage/blockdevice/COMPONENT_QSPIF/QSPIFBlockDevice.h

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,31 @@
1919
#include "drivers/QSPI.h"
2020
#include "features/storage/blockdevice/BlockDevice.h"
2121

22+
#ifndef MBED_CONF_QSPIF_QSPI_IO0
23+
#define MBED_CONF_QSPIF_QSPI_IO0 NC
24+
#endif
25+
#ifndef MBED_CONF_QSPIF_QSPI_IO1
26+
#define MBED_CONF_QSPIF_QSPI_IO1 NC
27+
#endif
28+
#ifndef MBED_CONF_QSPIF_QSPI_IO2
29+
#define MBED_CONF_QSPIF_QSPI_IO2 NC
30+
#endif
31+
#ifndef MBED_CONF_QSPIF_QSPI_IO3
32+
#define MBED_CONF_QSPIF_QSPI_IO3 NC
33+
#endif
34+
#ifndef MBED_CONF_QSPIF_QSPI_SCK
35+
#define MBED_CONF_QSPIF_QSPI_SCK NC
36+
#endif
37+
#ifndef MBED_CONF_QSPIF_QSPI_CSN
38+
#define MBED_CONF_QSPIF_QSPI_CSN NC
39+
#endif
40+
#ifndef MBED_CONF_QSPIF_QSPI_POLARITY_MODE
41+
#define MBED_CONF_QSPIF_QSPI_POLARITY_MODE 0
42+
#endif
43+
#ifndef MBED_CONF_QSPIF_QSPI_FREQ
44+
#define MBED_CONF_QSPIF_QSPI_FREQ 40000000
45+
#endif
46+
2247
/** Enum qspif standard error codes
2348
*
2449
* @enum qspif_bd_error
@@ -98,10 +123,15 @@ class QSPIFBlockDevice : public mbed::BlockDevice {
98123
* @param clock_mode specifies the QSPI Clock Polarity mode (QSPIF_POLARITY_MODE_0/QSPIF_POLARITY_MODE_1)
99124
* default value = 0
100125
* @param freq Clock frequency of the QSPI bus (defaults to 40MHz)
101-
*
102126
*/
103-
QSPIFBlockDevice(PinName io0, PinName io1, PinName io2, PinName io3, PinName sclk, PinName csel,
104-
int clock_mode, int freq = MBED_CONF_QSPIF_QSPI_FREQ);
127+
QSPIFBlockDevice(PinName io0 = MBED_CONF_QSPIF_QSPI_IO0,
128+
PinName io1 = MBED_CONF_QSPIF_QSPI_IO1,
129+
PinName io2 = MBED_CONF_QSPIF_QSPI_IO2,
130+
PinName io3 = MBED_CONF_QSPIF_QSPI_IO3,
131+
PinName sclk = MBED_CONF_QSPIF_QSPI_SCK,
132+
PinName csel = MBED_CONF_QSPIF_QSPI_CSN,
133+
int clock_mode = MBED_CONF_QSPIF_QSPI_POLARITY_MODE,
134+
int freq = MBED_CONF_QSPIF_QSPI_FREQ);
105135

106136
/** Initialize a block device
107137
*

features/storage/system_storage/SystemStorage.cpp

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -88,16 +88,7 @@ MBED_WEAK BlockDevice *BlockDevice::get_default_instance()
8888

8989
#elif COMPONENT_QSPIF
9090

91-
static QSPIFBlockDevice default_bd(
92-
MBED_CONF_QSPIF_QSPI_IO0,
93-
MBED_CONF_QSPIF_QSPI_IO1,
94-
MBED_CONF_QSPIF_QSPI_IO2,
95-
MBED_CONF_QSPIF_QSPI_IO3,
96-
MBED_CONF_QSPIF_QSPI_SCK,
97-
MBED_CONF_QSPIF_QSPI_CSN,
98-
MBED_CONF_QSPIF_QSPI_POLARITY_MODE,
99-
MBED_CONF_QSPIF_QSPI_FREQ
100-
);
91+
static QSPIFBlockDevice default_bd;
10192

10293
return &default_bd;
10394

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"config": {
3+
"sim-blockdevice": {
4+
"help": "Simulated block device, requires sufficient heap",
5+
"macro_name": "MBED_TEST_SIM_BLOCKDEVICE",
6+
"value": "HeapBlockDevice"
7+
},
8+
"test-blockdevice": {
9+
"help": "Used blockdevice",
10+
"macro_name": "MBED_TEST_BLOCKDEVICE",
11+
"value": "QSPIFBlockDevice"
12+
},
13+
"test-filesystem": {
14+
"help": "Used filesystem",
15+
"macro_name": "MBED_TEST_FILESYSTEM",
16+
"value": "LittleFileSystem"
17+
}
18+
}
19+
}

0 commit comments

Comments
 (0)