21 #ifndef STM32L4xx_HAL_QSPI_H 22 #define STM32L4xx_HAL_QSPI_H 51 uint32_t ClockPrescaler;
53 uint32_t FifoThreshold;
55 uint32_t SampleShifting;
63 uint32_t ChipSelectHighTime;
68 #if defined(QUADSPI_CR_DFM) 95 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1) 96 typedef struct __QSPI_HandleTypeDef
112 __IO uint32_t ErrorCode;
114 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1) 115 void (* ErrorCallback) (
struct __QSPI_HandleTypeDef *hqspi);
116 void (* AbortCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
117 void (* FifoThresholdCallback)(
struct __QSPI_HandleTypeDef *hqspi);
118 void (* CmdCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
119 void (* RxCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
120 void (* TxCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
121 void (* RxHalfCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
122 void (* TxHalfCpltCallback) (
struct __QSPI_HandleTypeDef *hqspi);
123 void (* StatusMatchCallback) (
struct __QSPI_HandleTypeDef *hqspi);
124 void (* TimeOutCallback) (
struct __QSPI_HandleTypeDef *hqspi);
126 void (* MspInitCallback) (
struct __QSPI_HandleTypeDef *hqspi);
127 void (* MspDeInitCallback) (
struct __QSPI_HandleTypeDef *hqspi);
199 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1) 237 #define HAL_QSPI_ERROR_NONE 0x00000000U 238 #define HAL_QSPI_ERROR_TIMEOUT 0x00000001U 239 #define HAL_QSPI_ERROR_TRANSFER 0x00000002U 240 #define HAL_QSPI_ERROR_DMA 0x00000004U 241 #define HAL_QSPI_ERROR_INVALID_PARAM 0x00000008U 242 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1) 243 #define HAL_QSPI_ERROR_INVALID_CALLBACK 0x00000010U 252 #define QSPI_SAMPLE_SHIFTING_NONE 0x00000000U 253 #define QSPI_SAMPLE_SHIFTING_HALFCYCLE ((uint32_t)QUADSPI_CR_SSHIFT) 261 #define QSPI_CS_HIGH_TIME_1_CYCLE 0x00000000U 262 #define QSPI_CS_HIGH_TIME_2_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_0) 263 #define QSPI_CS_HIGH_TIME_3_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_1) 264 #define QSPI_CS_HIGH_TIME_4_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_0 | QUADSPI_DCR_CSHT_1) 265 #define QSPI_CS_HIGH_TIME_5_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_2) 266 #define QSPI_CS_HIGH_TIME_6_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_2 | QUADSPI_DCR_CSHT_0) 267 #define QSPI_CS_HIGH_TIME_7_CYCLE ((uint32_t)QUADSPI_DCR_CSHT_2 | QUADSPI_DCR_CSHT_1) 268 #define QSPI_CS_HIGH_TIME_8_CYCLE ((uint32_t)QUADSPI_DCR_CSHT) 276 #define QSPI_CLOCK_MODE_0 0x00000000U 277 #define QSPI_CLOCK_MODE_3 ((uint32_t)QUADSPI_DCR_CKMODE) 282 #if defined(QUADSPI_CR_DFM) 286 #define QSPI_FLASH_ID_1 0x00000000U 287 #define QSPI_FLASH_ID_2 ((uint32_t)QUADSPI_CR_FSEL) 295 #define QSPI_DUALFLASH_ENABLE ((uint32_t)QUADSPI_CR_DFM) 296 #define QSPI_DUALFLASH_DISABLE 0x00000000U 305 #define QSPI_ADDRESS_8_BITS 0x00000000U 306 #define QSPI_ADDRESS_16_BITS ((uint32_t)QUADSPI_CCR_ADSIZE_0) 307 #define QSPI_ADDRESS_24_BITS ((uint32_t)QUADSPI_CCR_ADSIZE_1) 308 #define QSPI_ADDRESS_32_BITS ((uint32_t)QUADSPI_CCR_ADSIZE) 316 #define QSPI_ALTERNATE_BYTES_8_BITS 0x00000000U 317 #define QSPI_ALTERNATE_BYTES_16_BITS ((uint32_t)QUADSPI_CCR_ABSIZE_0) 318 #define QSPI_ALTERNATE_BYTES_24_BITS ((uint32_t)QUADSPI_CCR_ABSIZE_1) 319 #define QSPI_ALTERNATE_BYTES_32_BITS ((uint32_t)QUADSPI_CCR_ABSIZE) 327 #define QSPI_INSTRUCTION_NONE 0x00000000U 328 #define QSPI_INSTRUCTION_1_LINE ((uint32_t)QUADSPI_CCR_IMODE_0) 329 #define QSPI_INSTRUCTION_2_LINES ((uint32_t)QUADSPI_CCR_IMODE_1) 330 #define QSPI_INSTRUCTION_4_LINES ((uint32_t)QUADSPI_CCR_IMODE) 338 #define QSPI_ADDRESS_NONE 0x00000000U 339 #define QSPI_ADDRESS_1_LINE ((uint32_t)QUADSPI_CCR_ADMODE_0) 340 #define QSPI_ADDRESS_2_LINES ((uint32_t)QUADSPI_CCR_ADMODE_1) 341 #define QSPI_ADDRESS_4_LINES ((uint32_t)QUADSPI_CCR_ADMODE) 349 #define QSPI_ALTERNATE_BYTES_NONE 0x00000000U 350 #define QSPI_ALTERNATE_BYTES_1_LINE ((uint32_t)QUADSPI_CCR_ABMODE_0) 351 #define QSPI_ALTERNATE_BYTES_2_LINES ((uint32_t)QUADSPI_CCR_ABMODE_1) 352 #define QSPI_ALTERNATE_BYTES_4_LINES ((uint32_t)QUADSPI_CCR_ABMODE) 360 #define QSPI_DATA_NONE 0x00000000U 361 #define QSPI_DATA_1_LINE ((uint32_t)QUADSPI_CCR_DMODE_0) 362 #define QSPI_DATA_2_LINES ((uint32_t)QUADSPI_CCR_DMODE_1) 363 #define QSPI_DATA_4_LINES ((uint32_t)QUADSPI_CCR_DMODE) 371 #define QSPI_DDR_MODE_DISABLE 0x00000000U 372 #define QSPI_DDR_MODE_ENABLE ((uint32_t)QUADSPI_CCR_DDRM) 380 #define QSPI_DDR_HHC_ANALOG_DELAY 0x00000000U 381 #if defined(QUADSPI_CCR_DHHC) 382 #define QSPI_DDR_HHC_HALF_CLK_DELAY ((uint32_t)QUADSPI_CCR_DHHC) 391 #define QSPI_SIOO_INST_EVERY_CMD 0x00000000U 392 #define QSPI_SIOO_INST_ONLY_FIRST_CMD ((uint32_t)QUADSPI_CCR_SIOO) 400 #define QSPI_MATCH_MODE_AND 0x00000000U 401 #define QSPI_MATCH_MODE_OR ((uint32_t)QUADSPI_CR_PMM) 409 #define QSPI_AUTOMATIC_STOP_DISABLE 0x00000000U 410 #define QSPI_AUTOMATIC_STOP_ENABLE ((uint32_t)QUADSPI_CR_APMS) 418 #define QSPI_TIMEOUT_COUNTER_DISABLE 0x00000000U 419 #define QSPI_TIMEOUT_COUNTER_ENABLE ((uint32_t)QUADSPI_CR_TCEN) 427 #define QSPI_FLAG_BUSY QUADSPI_SR_BUSY 428 #define QSPI_FLAG_TO QUADSPI_SR_TOF 429 #define QSPI_FLAG_SM QUADSPI_SR_SMF 430 #define QSPI_FLAG_FT QUADSPI_SR_FTF 431 #define QSPI_FLAG_TC QUADSPI_SR_TCF 432 #define QSPI_FLAG_TE QUADSPI_SR_TEF 440 #define QSPI_IT_TO QUADSPI_CR_TOIE 441 #define QSPI_IT_SM QUADSPI_CR_SMIE 442 #define QSPI_IT_FT QUADSPI_CR_FTIE 443 #define QSPI_IT_TC QUADSPI_CR_TCIE 444 #define QSPI_IT_TE QUADSPI_CR_TEIE 453 #define HAL_QSPI_TIMEOUT_DEFAULT_VALUE 5000U 470 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1) 471 #define __HAL_QSPI_RESET_HANDLE_STATE(__HANDLE__) do { \ 472 (__HANDLE__)->State = HAL_QSPI_STATE_RESET; \ 473 (__HANDLE__)->MspInitCallback = NULL; \ 474 (__HANDLE__)->MspDeInitCallback = NULL; \ 477 #define __HAL_QSPI_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_QSPI_STATE_RESET) 484 #define __HAL_QSPI_ENABLE(__HANDLE__) SET_BIT((__HANDLE__)->Instance->CR, QUADSPI_CR_EN) 490 #define __HAL_QSPI_DISABLE(__HANDLE__) CLEAR_BIT((__HANDLE__)->Instance->CR, QUADSPI_CR_EN) 503 #define __HAL_QSPI_ENABLE_IT(__HANDLE__, __INTERRUPT__) SET_BIT((__HANDLE__)->Instance->CR, (__INTERRUPT__)) 517 #define __HAL_QSPI_DISABLE_IT(__HANDLE__, __INTERRUPT__) CLEAR_BIT((__HANDLE__)->Instance->CR, (__INTERRUPT__)) 530 #define __HAL_QSPI_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) (READ_BIT((__HANDLE__)->Instance->CR, (__INTERRUPT__)) == (__INTERRUPT__)) 545 #define __HAL_QSPI_GET_FLAG(__HANDLE__, __FLAG__) ((READ_BIT((__HANDLE__)->Instance->SR, (__FLAG__)) != 0U) ? SET : RESET) 557 #define __HAL_QSPI_CLEAR_FLAG(__HANDLE__, __FLAG__) WRITE_REG((__HANDLE__)->Instance->FCR, (__FLAG__)) 621 #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1) 641 #if defined(QUADSPI_CR_DFM) 657 #define IS_QSPI_CLOCK_PRESCALER(PRESCALER) ((PRESCALER) <= 0xFFU) 659 #define IS_QSPI_FIFO_THRESHOLD(THR) (((THR) > 0U) && ((THR) <= 16U)) 661 #define IS_QSPI_SSHIFT(SSHIFT) (((SSHIFT) == QSPI_SAMPLE_SHIFTING_NONE) || \ 662 ((SSHIFT) == QSPI_SAMPLE_SHIFTING_HALFCYCLE)) 664 #define IS_QSPI_FLASH_SIZE(FSIZE) (((FSIZE) <= 31U)) 666 #define IS_QSPI_CS_HIGH_TIME(CSHTIME) (((CSHTIME) == QSPI_CS_HIGH_TIME_1_CYCLE) || \ 667 ((CSHTIME) == QSPI_CS_HIGH_TIME_2_CYCLE) || \ 668 ((CSHTIME) == QSPI_CS_HIGH_TIME_3_CYCLE) || \ 669 ((CSHTIME) == QSPI_CS_HIGH_TIME_4_CYCLE) || \ 670 ((CSHTIME) == QSPI_CS_HIGH_TIME_5_CYCLE) || \ 671 ((CSHTIME) == QSPI_CS_HIGH_TIME_6_CYCLE) || \ 672 ((CSHTIME) == QSPI_CS_HIGH_TIME_7_CYCLE) || \ 673 ((CSHTIME) == QSPI_CS_HIGH_TIME_8_CYCLE)) 675 #define IS_QSPI_CLOCK_MODE(CLKMODE) (((CLKMODE) == QSPI_CLOCK_MODE_0) || \ 676 ((CLKMODE) == QSPI_CLOCK_MODE_3)) 678 #if defined(QUADSPI_CR_DFM) 679 #define IS_QSPI_FLASH_ID(FLASH_ID) (((FLASH_ID) == QSPI_FLASH_ID_1) || \ 680 ((FLASH_ID) == QSPI_FLASH_ID_2)) 682 #define IS_QSPI_DUAL_FLASH_MODE(MODE) (((MODE) == QSPI_DUALFLASH_ENABLE) || \ 683 ((MODE) == QSPI_DUALFLASH_DISABLE)) 686 #define IS_QSPI_INSTRUCTION(INSTRUCTION) ((INSTRUCTION) <= 0xFFU) 688 #define IS_QSPI_ADDRESS_SIZE(ADDR_SIZE) (((ADDR_SIZE) == QSPI_ADDRESS_8_BITS) || \ 689 ((ADDR_SIZE) == QSPI_ADDRESS_16_BITS) || \ 690 ((ADDR_SIZE) == QSPI_ADDRESS_24_BITS) || \ 691 ((ADDR_SIZE) == QSPI_ADDRESS_32_BITS)) 693 #define IS_QSPI_ALTERNATE_BYTES_SIZE(SIZE) (((SIZE) == QSPI_ALTERNATE_BYTES_8_BITS) || \ 694 ((SIZE) == QSPI_ALTERNATE_BYTES_16_BITS) || \ 695 ((SIZE) == QSPI_ALTERNATE_BYTES_24_BITS) || \ 696 ((SIZE) == QSPI_ALTERNATE_BYTES_32_BITS)) 698 #define IS_QSPI_DUMMY_CYCLES(DCY) ((DCY) <= 31U) 700 #define IS_QSPI_INSTRUCTION_MODE(MODE) (((MODE) == QSPI_INSTRUCTION_NONE) || \ 701 ((MODE) == QSPI_INSTRUCTION_1_LINE) || \ 702 ((MODE) == QSPI_INSTRUCTION_2_LINES) || \ 703 ((MODE) == QSPI_INSTRUCTION_4_LINES)) 705 #define IS_QSPI_ADDRESS_MODE(MODE) (((MODE) == QSPI_ADDRESS_NONE) || \ 706 ((MODE) == QSPI_ADDRESS_1_LINE) || \ 707 ((MODE) == QSPI_ADDRESS_2_LINES) || \ 708 ((MODE) == QSPI_ADDRESS_4_LINES)) 710 #define IS_QSPI_ALTERNATE_BYTES_MODE(MODE) (((MODE) == QSPI_ALTERNATE_BYTES_NONE) || \ 711 ((MODE) == QSPI_ALTERNATE_BYTES_1_LINE) || \ 712 ((MODE) == QSPI_ALTERNATE_BYTES_2_LINES) || \ 713 ((MODE) == QSPI_ALTERNATE_BYTES_4_LINES)) 715 #define IS_QSPI_DATA_MODE(MODE) (((MODE) == QSPI_DATA_NONE) || \ 716 ((MODE) == QSPI_DATA_1_LINE) || \ 717 ((MODE) == QSPI_DATA_2_LINES) || \ 718 ((MODE) == QSPI_DATA_4_LINES)) 720 #define IS_QSPI_DDR_MODE(DDR_MODE) (((DDR_MODE) == QSPI_DDR_MODE_DISABLE) || \ 721 ((DDR_MODE) == QSPI_DDR_MODE_ENABLE)) 723 #if defined(QUADSPI_CCR_DHHC) 724 #define IS_QSPI_DDR_HHC(DDR_HHC) (((DDR_HHC) == QSPI_DDR_HHC_ANALOG_DELAY) || \ 725 ((DDR_HHC) == QSPI_DDR_HHC_HALF_CLK_DELAY)) 728 #define IS_QSPI_DDR_HHC(DDR_HHC) (((DDR_HHC) == QSPI_DDR_HHC_ANALOG_DELAY)) 731 #define IS_QSPI_SIOO_MODE(SIOO_MODE) (((SIOO_MODE) == QSPI_SIOO_INST_EVERY_CMD) || \ 732 ((SIOO_MODE) == QSPI_SIOO_INST_ONLY_FIRST_CMD)) 734 #define IS_QSPI_INTERVAL(INTERVAL) ((INTERVAL) <= QUADSPI_PIR_INTERVAL) 736 #define IS_QSPI_STATUS_BYTES_SIZE(SIZE) (((SIZE) >= 1U) && ((SIZE) <= 4U)) 738 #define IS_QSPI_MATCH_MODE(MODE) (((MODE) == QSPI_MATCH_MODE_AND) || \ 739 ((MODE) == QSPI_MATCH_MODE_OR)) 741 #define IS_QSPI_AUTOMATIC_STOP(APMS) (((APMS) == QSPI_AUTOMATIC_STOP_DISABLE) || \ 742 ((APMS) == QSPI_AUTOMATIC_STOP_ENABLE)) 744 #define IS_QSPI_TIMEOUT_ACTIVATION(TCEN) (((TCEN) == QSPI_TIMEOUT_COUNTER_DISABLE) || \ 745 ((TCEN) == QSPI_TIMEOUT_COUNTER_ENABLE)) 747 #define IS_QSPI_TIMEOUT_PERIOD(PERIOD) ((PERIOD) <= 0xFFFFU) __IO HAL_QSPI_StateTypeDef State
__IO uint32_t TxXferCount
void HAL_QSPI_TimeOutCallback(QSPI_HandleTypeDef *hqspi)
Timeout callback.
uint32_t TimeOutActivation
DMA handle Structure definition.
HAL_StatusTypeDef HAL_QSPI_MemoryMapped(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_MemoryMappedTypeDef *cfg)
Configure the Memory Mapped mode.
QUADSPI_TypeDef * Instance
HAL_StatusTypeDef HAL_QSPI_RegisterCallback(QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef CallbackId, pQSPI_CallbackTypeDef pCallback)
Register a User QSPI Callback To be used instead of the weak (surcharged) predefined callback...
HAL_StatusTypeDef HAL_QSPI_Receive_IT(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Receive an amount of data in non-blocking mode with interrupt.
void(* pQSPI_CallbackTypeDef)(QSPI_HandleTypeDef *hqspi)
HAL QSPI Callback pointer definition.
HAL_StatusTypeDef HAL_QSPI_Init(QSPI_HandleTypeDef *hqspi)
Initialize the QSPI mode according to the specified parameters in the QSPI_InitTypeDef and initialize...
HAL_StatusTypeDef HAL_QSPI_SetFlashID(QSPI_HandleTypeDef *hqspi, uint32_t FlashID)
Set FlashID.
This file contains HAL common defines, enumeration, macros and structures definitions.
struct __QSPI_HandleTypeDef else typedef struct endif QSPI_HandleTypeDef
QSPI Handle Structure definition.
HAL_StatusTypeDef HAL_QSPI_Abort_IT(QSPI_HandleTypeDef *hqspi)
Abort the current transmission (non-blocking function)
QSPI Memory Mapped mode configuration structure definition.
uint32_t AlternateByteMode
HAL_StatusTypeDef HAL_QSPI_Command_IT(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd)
Set the command configuration in interrupt mode.
HAL_QSPI_StateTypeDef
HAL QSPI State structures definition.
void HAL_QSPI_MspDeInit(QSPI_HandleTypeDef *hqspi)
DeInitialize the QSPI MSP.
HAL_StatusTypeDef HAL_QSPI_Receive_DMA(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Receive an amount of data in non-blocking mode with DMA.
QSPI Auto Polling mode configuration structure definition.
__IO HAL_LockTypeDef Lock
HAL_QSPI_StateTypeDef HAL_QSPI_GetState(QSPI_HandleTypeDef *hqspi)
Return the QSPI handle state.
HAL_StatusTypeDef HAL_QSPI_Command(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, uint32_t Timeout)
Set the command configuration.
void HAL_QSPI_IRQHandler(QSPI_HandleTypeDef *hqspi)
Handle QSPI interrupt request.
uint32_t HAL_QSPI_GetFifoThreshold(QSPI_HandleTypeDef *hqspi)
Get QSPI Fifo threshold.
HAL_StatusTypeDef HAL_QSPI_UnRegisterCallback(QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef CallbackId)
Unregister a User QSPI Callback QSPI Callback is redirected to the weak (surcharged) predefined callb...
HAL_StatusTypeDef HAL_QSPI_DeInit(QSPI_HandleTypeDef *hqspi)
De-Initialize the QSPI peripheral.
void HAL_QSPI_MspInit(QSPI_HandleTypeDef *hqspi)
Initialize the QSPI MSP.
QSPI Command structure definition.
HAL_StatusTypeDef HAL_QSPI_Transmit_IT(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Send an amount of data in non-blocking mode with interrupt.
HAL_StatusTypeDef HAL_QSPI_SetFifoThreshold(QSPI_HandleTypeDef *hqspi, uint32_t Threshold)
Set QSPI Fifo threshold.
void HAL_QSPI_RxCpltCallback(QSPI_HandleTypeDef *hqspi)
Rx Transfer completed callback.
uint32_t DdrHoldHalfCycle
uint32_t HAL_QSPI_GetError(QSPI_HandleTypeDef *hqspi)
Return the QSPI error code.
HAL_LockTypeDef
HAL Lock structures definition.
void HAL_QSPI_AbortCpltCallback(QSPI_HandleTypeDef *hqspi)
Abort completed callback.
void HAL_QSPI_ErrorCallback(QSPI_HandleTypeDef *hqspi)
Transfer Error callback.
void HAL_QSPI_SetTimeout(QSPI_HandleTypeDef *hqspi, uint32_t Timeout)
Set QSPI timeout.
void HAL_QSPI_FifoThresholdCallback(QSPI_HandleTypeDef *hqspi)
FIFO Threshold callback.
HAL_StatusTypeDef HAL_QSPI_Transmit_DMA(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
Send an amount of data in non-blocking mode with DMA.
void HAL_QSPI_TxCpltCallback(QSPI_HandleTypeDef *hqspi)
Tx Transfer completed callback.
HAL_StatusTypeDef HAL_QSPI_AutoPolling_IT(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_AutoPollingTypeDef *cfg)
Configure the QSPI Automatic Polling Mode in non-blocking mode.
HAL_StatusTypeDef HAL_QSPI_Transmit(QSPI_HandleTypeDef *hqspi, uint8_t *pData, uint32_t Timeout)
Transmit an amount of data in blocking mode.
__IO uint32_t RxXferCount
ADC handle Structure definition.
void HAL_QSPI_RxHalfCpltCallback(QSPI_HandleTypeDef *hqspi)
Rx Half Transfer completed callback.
uint32_t AlternateBytesSize
void HAL_QSPI_CmdCpltCallback(QSPI_HandleTypeDef *hqspi)
Command completed callback.
void HAL_QSPI_StatusMatchCallback(QSPI_HandleTypeDef *hqspi)
Status Match callback.
void HAL_QSPI_TxHalfCpltCallback(QSPI_HandleTypeDef *hqspi)
Tx Half Transfer completed callback.
HAL_StatusTypeDef HAL_QSPI_Receive(QSPI_HandleTypeDef *hqspi, uint8_t *pData, uint32_t Timeout)
Receive an amount of data in blocking mode.
HAL_StatusTypeDef HAL_QSPI_AutoPolling(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_AutoPollingTypeDef *cfg, uint32_t Timeout)
Configure the QSPI Automatic Polling Mode in blocking mode.
HAL_QSPI_CallbackIDTypeDef
HAL QSPI Callback ID enumeration definition.
HAL_StatusTypeDef HAL_QSPI_Abort(QSPI_HandleTypeDef *hqspi)
Abort the current transmission.