Skip to content

Commit 366fdf0

Browse files
committed
Revert "STM32 QSPI: Use defines for setting address size"
This reverts commit 283ea6f.
1 parent a89ebe3 commit 366fdf0

File tree

1 file changed

+17
-31
lines changed

1 file changed

+17
-31
lines changed

targets/TARGET_STM/qspi_api.c

Lines changed: 17 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -262,42 +262,28 @@ qspi_status_t qspi_prepare_command(const qspi_command_t *command, QSPI_CommandTy
262262
st_command->DdrMode = QSPI_DDR_MODE_DISABLE;
263263
st_command->DdrHoldHalfCycle = QSPI_DDR_HHC_ANALOG_DELAY;
264264

265+
switch (command->address.bus_width) {
266+
case QSPI_CFG_BUS_SINGLE:
267+
st_command->AddressMode = QSPI_ADDRESS_1_LINE;
268+
break;
269+
case QSPI_CFG_BUS_DUAL:
270+
st_command->AddressMode = QSPI_ADDRESS_2_LINES;
271+
break;
272+
case QSPI_CFG_BUS_QUAD:
273+
st_command->AddressMode = QSPI_ADDRESS_4_LINES;
274+
break;
275+
default:
276+
st_command->AddressMode = QSPI_ADDRESS_NONE;
277+
break;
278+
}
279+
265280
if (command->address.disabled == true) {
266281
st_command->AddressMode = QSPI_ADDRESS_NONE;
267282
st_command->AddressSize = 0;
268283
} else {
269284
st_command->Address = command->address.value;
270-
switch (command->address.bus_width) {
271-
case QSPI_CFG_BUS_SINGLE:
272-
st_command->AddressMode = QSPI_ADDRESS_1_LINE;
273-
break;
274-
case QSPI_CFG_BUS_DUAL:
275-
st_command->AddressMode = QSPI_ADDRESS_2_LINES;
276-
break;
277-
case QSPI_CFG_BUS_QUAD:
278-
st_command->AddressMode = QSPI_ADDRESS_4_LINES;
279-
break;
280-
default:
281-
error("Command param error: wrong address size\n");
282-
return QSPI_STATUS_ERROR;
283-
}
284-
switch (command->address.size) {
285-
case QSPI_CFG_ADDR_SIZE_8:
286-
st_command->AddressSize = QSPI_ADDRESS_8_BITS;
287-
break;
288-
case QSPI_CFG_ADDR_SIZE_16:
289-
st_command->AddressSize = QSPI_ADDRESS_16_BITS;
290-
break;
291-
case QSPI_CFG_ADDR_SIZE_24:
292-
st_command->AddressSize = QSPI_ADDRESS_24_BITS;
293-
break;
294-
case QSPI_CFG_ADDR_SIZE_32:
295-
st_command->AddressSize = QSPI_ADDRESS_32_BITS;
296-
break;
297-
default:
298-
error("Command param error: wrong address size\n");
299-
return QSPI_STATUS_ERROR;
300-
}
285+
/* command->address.size needs to be shifted by QUADSPI_CCR_ADSIZE_Pos */
286+
st_command->AddressSize = (command->address.size << QUADSPI_CCR_ADSIZE_Pos) & QUADSPI_CCR_ADSIZE_Msk;
301287
}
302288

303289
uint8_t alt_lines = 0;

0 commit comments

Comments
 (0)