Skip to content

Commit dc86501

Browse files
committed
Fix TT_M3HQ build problem with SPI
1 parent ba3b2ab commit dc86501

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

targets/TARGET_TT/TARGET_TT_M3HQ/spi_api.c

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ void spi_init(spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel
7878
SPIName spi_data = (SPIName)pinmap_merge(spi_mosi, spi_miso);
7979
SPIName spi_cntl = (SPIName)pinmap_merge(spi_sclk, spi_ssel);
8080

81-
obj->module = (SPIName)pinmap_merge(spi_data, spi_cntl);
82-
spi = obj->spi;
83-
switch ((int)obj->module) {
81+
obj->spi.module = (SPIName)pinmap_merge(spi_data, spi_cntl);
82+
spi = obj->spi.spi;
83+
switch ((int)obj->spi.module) {
8484
case SPI_0:
8585
TSB_CG_FSYSENA_IPENA11 = ENABLE;
8686
TSB_CG_FSYSENB_IPENB00 = ENABLE;
@@ -110,7 +110,7 @@ void spi_init(spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel
110110
error("Cannot found SPI module corresponding with input pins.");
111111
break;
112112
}
113-
obj->spi = spi;
113+
obj->spi.spi = spi;
114114
// pin out the SPI pins
115115
pinmap_pinout(mosi, PinMap_SPI_MOSI);
116116
pinmap_pinout(miso, PinMap_SPI_MISO);
@@ -148,7 +148,7 @@ void spi_free(spi_t *obj)
148148
{
149149
TSB_TSPI_TypeDef* spi;
150150

151-
spi = obj->spi;
151+
spi = obj->spi.spi;
152152
spi->CR0 |= TSPI_DISABLE;
153153
spi->CR2 = TSPI_INT_ALL; // Disable all interrupt
154154
}
@@ -157,9 +157,9 @@ void spi_format(spi_t *obj, int bits, int mode, int slave)
157157
{
158158
TSB_TSPI_TypeDef* spi;
159159

160-
obj->bits = bits;
161-
spi = obj->spi;
162-
obj->bits = bits;
160+
obj->spi.bits = bits;
161+
spi = obj->spi.spi;
162+
obj->spi.bits = bits;
163163
spi->CR0 |= TSPI_DISABLE;
164164

165165
if (bits >= 8 || bits <= 32) {
@@ -177,7 +177,7 @@ void spi_frequency(spi_t *obj, int hz)
177177
TSB_TSPI_TypeDef* spi;
178178
int clk_div = 1;
179179
uint32_t clocks = ((SystemCoreClock / 2) / hz);
180-
obj->spi->CR0 |= TSPI_DISABLE;
180+
obj->spi.spi->CR0 |= TSPI_DISABLE;
181181

182182
while (clk_div < 10) {
183183
if (clocks < 16) {
@@ -190,7 +190,7 @@ void spi_frequency(spi_t *obj, int hz)
190190
if (clk_div == 0) {
191191
clocks++;
192192
}
193-
spi = obj->spi;
193+
spi = obj->spi.spi;
194194
spi->CR0 |= TSPI_DISABLE;
195195
spi->BR = ((clk_div << 4) | clocks);
196196
spi->CR0 |= TSPI_ENABLE;
@@ -200,7 +200,7 @@ int spi_master_write(spi_t *obj, int value)
200200
{
201201
TSB_TSPI_TypeDef* spi;
202202
MBED_ASSERT(obj != NULL);
203-
spi = obj->spi;
203+
spi = obj->spi.spi;
204204
spi->CR3 |= TSPI_TX_BUFF_CLR_DONE; // FIFO Cear
205205
// Check if the TSPI is already enabled
206206
if((spi->CR0 & TSPI_ENABLE) != TSPI_ENABLE) {
@@ -261,7 +261,7 @@ int spi_busy(spi_t *obj)
261261
TSB_TSPI_TypeDef* spi;
262262
uint8_t result = 0;
263263

264-
spi = obj->spi;
264+
spi = obj->spi.spi;
265265
if( (spi->SR & (1<<7)) || (spi->SR & (1<<23))) {
266266
result = 1;
267267
} else {
@@ -272,7 +272,7 @@ int spi_busy(spi_t *obj)
272272

273273
uint8_t spi_get_module(spi_t *obj)
274274
{
275-
return (uint8_t)(obj->module);
275+
return (uint8_t)(obj->spi.module);
276276
}
277277

278278
const PinMap *spi_master_mosi_pinmap()

0 commit comments

Comments
 (0)