Skip to content

Commit e04a16f

Browse files
committed
QSPI: Move destructor into source file
This allows the entire QSPI class to be mocked/faked for unit testing purpose, without dependencies from the real implementation such as `qspi_free()` from the HAL.
1 parent 0cb62c4 commit e04a16f

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
lines changed

drivers/include/drivers/QSPI.h

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -115,12 +115,7 @@ class QSPI : private NonCopyable<QSPI> {
115115
QSPI(const qspi_pinmap_t &pinmap, int mode = 0);
116116
QSPI(const qspi_pinmap_t &&, int = 0) = delete; // prevent passing of temporary objects
117117

118-
virtual ~QSPI()
119-
{
120-
lock();
121-
qspi_free(&_qspi);
122-
unlock();
123-
}
118+
virtual ~QSPI();
124119

125120
/** Configure the data transmission format
126121
*

drivers/source/QSPI.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,13 @@ QSPI::QSPI(const qspi_pinmap_t &pinmap, int mode) : _qspi()
9292
MBED_ASSERT(success);
9393
}
9494

95+
QSPI::~QSPI()
96+
{
97+
lock();
98+
qspi_free(&_qspi);
99+
unlock();
100+
}
101+
95102
qspi_status_t QSPI::configure_format(qspi_bus_width_t inst_width, qspi_bus_width_t address_width, qspi_address_size_t address_size, qspi_bus_width_t alt_width, qspi_alt_size_t alt_size, qspi_bus_width_t data_width, int dummy_cycles)
96103
{
97104
// Check that alt_size/alt_width are a valid combination

0 commit comments

Comments
 (0)