18#ifndef __ST_HAL_QSPI_H__
19#define __ST_HAL_QSPI_H__
25#if defined(HAL_QSPI_MODULE_ENABLED) && VSF_HAL_USE_SPI == ENABLED && defined(VSF_SPI_CTRL_QSPI_ENABLE)
33#define HAL_QSPI_ERROR_NONE 0x00000000U
34#define HAL_QSPI_ERROR_TIMEOUT 0x00000001U
35#define HAL_QSPI_ERROR_TRANSFER 0x00000002U
36#define HAL_QSPI_ERROR_DMA 0x00000004U
37#define HAL_QSPI_ERROR_INVALID_PARAM 0x00000008U
39#if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
40# define HAL_QSPI_ERROR_INVALID_CALLBACK 0x00000010U
43#ifdef VSF_SPI_QSPI_SAMPLE_SHIFTING_NONE
44# define QSPI_SAMPLE_SHIFTING_NONE VSF_SPI_QSPI_SAMPLE_SHIFTING_NONE
46# define QSPI_SAMPLE_SHIFTING_NONE 0
49#ifdef VSF_SPI_QSPI_SAMPLE_SHIFTING_HALFCYCLE
50# define QSPI_SAMPLE_SHIFTING_HALFCYCLE VSF_SPI_QSPI_SAMPLE_SHIFTING_HALFCYCLE
52# define QSPI_SAMPLE_SHIFTING_HALFCYCLE 0
55#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_1_CYCLE
56# define QSPI_CS_HIGH_TIME_1_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_1_CYCLE
58# define QSPI_CS_HIGH_TIME_1_CYCLE 0
61#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_2_CYCLE
62# define QSPI_CS_HIGH_TIME_2_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_2_CYCLE
64# define QSPI_CS_HIGH_TIME_2_CYCLE 0
67#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_3_CYCLE
68# define QSPI_CS_HIGH_TIME_3_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_3_CYCLE
70# define QSPI_CS_HIGH_TIME_3_CYCLE 0
73#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_4_CYCLE
74# define QSPI_CS_HIGH_TIME_4_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_4_CYCLE
76# define QSPI_CS_HIGH_TIME_4_CYCLE 0
79#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_5_CYCLE
80# define QSPI_CS_HIGH_TIME_5_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_5_CYCLE
82# define QSPI_CS_HIGH_TIME_5_CYCLE 0
85#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_6_CYCLE
86# define QSPI_CS_HIGH_TIME_6_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_6_CYCLE
88# define QSPI_CS_HIGH_TIME_6_CYCLE 0
91#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_7_CYCLE
92# define QSPI_CS_HIGH_TIME_7_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_7_CYCLE
94# define QSPI_CS_HIGH_TIME_7_CYCLE 0
97#ifdef VSF_SPI_QSPI_CS_HIGH_TIME_8_CYCLE
98# define QSPI_CS_HIGH_TIME_8_CYCLE VSF_SPI_QSPI_CS_HIGH_TIME_8_CYCLE
100# define QSPI_CS_HIGH_TIME_8_CYCLE 0
103#define QSPI_CLOCK_MODE_0 VSF_SPI_MODE_0
104#define QSPI_CLOCK_MODE_3 VSF_SPI_MODE_3
106#ifdef VSF_SPI_QSPI_DUALFLASH_ENABLE
107# define QSPI_DUALFLASH_ENABLE VSF_SPI_QSPI_DUALFLASH_ENABLE
109# define QSPI_DUALFLASH_ENABLE 0
112#ifdef VSF_SPI_QSPI_DUALFLASH_DISABLE
113# define QSPI_DUALFLASH_DISABLE VSF_SPI_QSPI_DUALFLASH_DISABLE
115# define QSPI_DUALFLASH_DISABLE 0
118#ifdef VSF_SPI_QSPI_FLASH_ID_1
119# define QSPI_FLASH_ID_1 VSF_SPI_QSPI_FLASH_ID_1
121# define QSPI_FLASH_ID_1 0
124#ifdef VSF_SPI_QSPI_FLASH_ID_2
125# define QSPI_FLASH_ID_2 VSF_SPI_QSPI_FLASH_ID_2
127# define QSPI_FLASH_ID_2 0
130#ifdef VSF_SPI_CTRL_QSPI_ADDRESS_BITS_8
131# define QSPI_ADDRESS_8_BITS VSF_SPI_CTRL_QSPI_ADDRESS_BITS_8
133# define QSPI_ADDRESS_8_BITS 0
136#ifdef VSF_SPI_CTRL_QSPI_ADDRESS_BITS_16
137# define QSPI_ADDRESS_16_BITS VSF_SPI_CTRL_QSPI_ADDRESS_BITS_16
139# define QSPI_ADDRESS_16_BITS 0
142#ifdef VSF_SPI_CTRL_QSPI_ADDRESS_BITS_24
143# define QSPI_ADDRESS_24_BITS VSF_SPI_CTRL_QSPI_ADDRESS_BITS_24
145# define QSPI_ADDRESS_24_BITS 0
148#ifdef VSF_SPI_CTRL_QSPI_ADDRESS_BITS_32
149# define QSPI_ADDRESS_32_BITS VSF_SPI_CTRL_QSPI_ADDRESS_BITS_32
151# define QSPI_ADDRESS_32_BITS 0
154#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_8_BITS
155# define QSPI_ALTERNATE_BYTES_8_BITS VSF_SPI_QSPI_ALTERNATE_BYTES_8_BITS
157# define QSPI_ALTERNATE_BYTES_8_BITS 0
160#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_16_BITS
161# define QSPI_ALTERNATE_BYTES_16_BITS VSF_SPI_QSPI_ALTERNATE_BYTES_16_BITS
163# define QSPI_ALTERNATE_BYTES_16_BITS 0
166#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_24_BITS
167# define QSPI_ALTERNATE_BYTES_24_BITS VSF_SPI_QSPI_ALTERNATE_BYTES_24_BITS
169# define QSPI_ALTERNATE_BYTES_24_BITS 0
172#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_32_BITS
173# define QSPI_ALTERNATE_BYTES_32_BITS VSF_SPI_QSPI_ALTERNATE_BYTES_32_BITS
175# define QSPI_ALTERNATE_BYTES_32_BITS 0
178#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_NONE
179# define QSPI_ALTERNATE_BYTES_NONE VSF_SPI_QSPI_ALTERNATE_BYTES_NONE
181# define QSPI_ALTERNATE_BYTES_NONE 0
184#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_1_LINE
185# define QSPI_ALTERNATE_BYTES_1_LINE VSF_SPI_QSPI_ALTERNATE_BYTES_1_LINE
187# define QSPI_ALTERNATE_BYTES_1_LINE 0
190#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_2_LINES
191# define QSPI_ALTERNATE_BYTES_2_LINES VSF_SPI_QSPI_ALTERNATE_BYTES_2_LINES
193# define QSPI_ALTERNATE_BYTES_2_LINES 0
196#ifdef VSF_SPI_QSPI_ALTERNATE_BYTES_4_LINES
197# define QSPI_ALTERNATE_BYTES_4_LINES VSF_SPI_QSPI_ALTERNATE_BYTES_4_LINES
199# define QSPI_ALTERNATE_BYTES_4_LINES 0
202#define QSPI_INSTRUCTION_NONE 0
203#define QSPI_INSTRUCTION_1_LINE 1
204#define QSPI_INSTRUCTION_2_LINES 2
205#define QSPI_INSTRUCTION_4_LINES 3
207#define QSPI_ADDRESS_NONE 0
208#define QSPI_ADDRESS_1_LINE 1
209#define QSPI_ADDRESS_2_LINES 2
210#define QSPI_ADDRESS_4_LINES 3
212#ifdef VSF_SPI_QSPI_DATA_NONE
213# define QSPI_DATA_NONE VSF_SPI_CTRL_QSPI_DATA_PHASE_SINGLE
215# define QSPI_DATA_NONE 0
218#ifdef VSF_SPI_CTRL_QSPI_DATA_PHASE_SINGLE
219# define QSPI_DATA_1_LINE VSF_SPI_CTRL_QSPI_DATA_PHASE_SINGLE
221# define QSPI_DATA_1_LINE 0
224#ifdef VSF_SPI_CTRL_QSPI_DATA_PHASE_DUAL
225# define QSPI_DATA_2_LINES VSF_SPI_CTRL_QSPI_DATA_PHASE_DUAL
227# define QSPI_DATA_2_LINES 0
230#ifdef VSF_SPI_CTRL_QSPI_DATA_PHASE_QUAD
231# define QSPI_DATA_4_LINES VSF_SPI_CTRL_QSPI_DATA_PHASE_QUAD
233# define QSPI_DATA_4_LINES 0
236#ifdef VSF_SPI_QSPI_DDR_MODE_DISABLE
237# define QSPI_DDR_MODE_DISABLE VSF_SPI_QSPI_DDR_MODE_DISABLE
239# define QSPI_DDR_MODE_DISABLE 0
242#ifdef VSF_SPI_QSPI_DDR_MODE_ENABLE
243# define QSPI_DDR_MODE_ENABLE VSF_SPI_QSPI_DDR_MODE_ENABLE
245# define QSPI_DDR_MODE_ENABLE 0
248#ifdef VSF_SPI_QSPI_DDR_HHC_ANALOG_DELAY
249# define QSPI_DDR_HHC_ANALOG_DELAY VSF_SPI_QSPI_DDR_HHC_ANALOG_DELAY
251# define QSPI_DDR_HHC_ANALOG_DELAY 0
254#ifdef VSF_SPI_QSPI_DDR_HHC_HALF_CLK_DELAY
255# define QSPI_DDR_HHC_HALF_CLK_DELAY VSF_SPI_QSPI_DDR_HHC_HALF_CLK_DELAY
257# define QSPI_DDR_HHC_HALF_CLK_DELAY 0
260#ifdef VSF_SPI_QSPI_SIOO_INST_EVERY_CMD
261# define QSPI_SIOO_INST_EVERY_CMD VSF_SPI_QSPI_SIOO_INST_EVERY_CMD
263# define QSPI_SIOO_INST_EVERY_CMD 0
266#ifdef VSF_SPI_QSPI_SIOO_INST_ONLY_FIRST_CMD
267# define QSPI_SIOO_INST_ONLY_FIRST_CMD VSF_SPI_QSPI_SIOO_INST_ONLY_FIRST_CMD
269# define QSPI_SIOO_INST_ONLY_FIRST_CMD 0
272#ifdef VSF_SPI_QSPI_MATCH_MODE_AND
273# define QSPI_MATCH_MODE_AND VSF_SPI_QSPI_MATCH_MODE_AND
275# define QSPI_MATCH_MODE_AND 0x00000000U
278#ifdef VSF_SPI_QSPI_MATCH_MODE_OR
279# define QSPI_MATCH_MODE_OR VSF_SPI_QSPI_MATCH_MODE_OR
281# define QSPI_MATCH_MODE_OR 0
284#ifdef VSF_SPI_QSPI_AUTOMATIC_STOP_DISABLE
285# define QSPI_AUTOMATIC_STOP_DISABLE VSF_SPI_QSPI_AUTOMATIC_STOP_DISABLE
287# define QSPI_AUTOMATIC_STOP_DISABLE 0x00000000U
290#ifdef VSF_SPI_QSPI_AUTOMATIC_STOP_ENABLE
291# define QSPI_AUTOMATIC_STOP_ENABLE VSF_SPI_QSPI_AUTOMATIC_STOP_ENABLE
293# define QSPI_AUTOMATIC_STOP_ENABLE 0
296#ifdef VSF_SPI_QSPI_TIMEOUT_COUNTER_DISABLE
297# define QSPI_TIMEOUT_COUNTER_DISABLE VSF_SPI_QSPI_TIMEOUT_COUNTER_DISABLE
299# define QSPI_TIMEOUT_COUNTER_DISABLE 0
302#ifdef VSF_SPI_QSPI_TIMEOUT_COUNTER_ENABLE
303# define QSPI_TIMEOUT_COUNTER_ENABLE VSF_SPI_QSPI_TIMEOUT_COUNTER_ENABLE
305# define QSPI_TIMEOUT_COUNTER_ENABLE 0
308#define HAL_QSPI_TIMEOUT_DEFAULT_VALUE 5000U
310#define IS_QSPI_CLOCK_PRESCALER(PRESCALER) ((PRESCALER) <= 0xFFU)
311#define IS_QSPI_FIFO_THRESHOLD(THR) (((THR) > 0U) && ((THR) <= 32U))
312#define IS_QSPI_SSHIFT(SSHIFT) \
313 (((SSHIFT) == QSPI_SAMPLE_SHIFTING_NONE) || \
314 ((SSHIFT) == QSPI_SAMPLE_SHIFTING_HALFCYCLE))
315#define IS_QSPI_FLASH_SIZE(FSIZE) (((FSIZE) <= 31U))
316#define IS_QSPI_CS_HIGH_TIME(CSHTIME) \
317 (((CSHTIME) == QSPI_CS_HIGH_TIME_1_CYCLE) || \
318 ((CSHTIME) == QSPI_CS_HIGH_TIME_2_CYCLE) || \
319 ((CSHTIME) == QSPI_CS_HIGH_TIME_3_CYCLE) || \
320 ((CSHTIME) == QSPI_CS_HIGH_TIME_4_CYCLE) || \
321 ((CSHTIME) == QSPI_CS_HIGH_TIME_5_CYCLE) || \
322 ((CSHTIME) == QSPI_CS_HIGH_TIME_6_CYCLE) || \
323 ((CSHTIME) == QSPI_CS_HIGH_TIME_7_CYCLE) || \
324 ((CSHTIME) == QSPI_CS_HIGH_TIME_8_CYCLE))
325#define IS_QSPI_CLOCK_MODE(CLKMODE) \
326 (((CLKMODE) == QSPI_CLOCK_MODE_0) || ((CLKMODE) == QSPI_CLOCK_MODE_3))
327#define IS_QSPI_FLASH_ID(FLASH_ID) \
328 (((FLASH_ID) == QSPI_FLASH_ID_1) || ((FLASH_ID) == QSPI_FLASH_ID_2))
329#define IS_QSPI_DUAL_FLASH_MODE(MODE) \
330 (((MODE) == QSPI_DUALFLASH_ENABLE) || ((MODE) == QSPI_DUALFLASH_DISABLE))
331#define IS_QSPI_INSTRUCTION(INSTRUCTION) ((INSTRUCTION) <= 0xFFU)
332#define IS_QSPI_ADDRESS_SIZE(ADDR_SIZE) \
333 (((ADDR_SIZE) == QSPI_ADDRESS_8_BITS) || \
334 ((ADDR_SIZE) == QSPI_ADDRESS_16_BITS) || \
335 ((ADDR_SIZE) == QSPI_ADDRESS_24_BITS) || \
336 ((ADDR_SIZE) == QSPI_ADDRESS_32_BITS))
337#define IS_QSPI_ALTERNATE_BYTES_SIZE(SIZE) \
338 (((SIZE) == QSPI_ALTERNATE_BYTES_8_BITS) || \
339 ((SIZE) == QSPI_ALTERNATE_BYTES_16_BITS) || \
340 ((SIZE) == QSPI_ALTERNATE_BYTES_24_BITS) || \
341 ((SIZE) == QSPI_ALTERNATE_BYTES_32_BITS))
342#define IS_QSPI_DUMMY_CYCLES(DCY) ((DCY) <= 31U)
343#define IS_QSPI_INSTRUCTION_MODE(MODE) \
344 (((MODE) == QSPI_INSTRUCTION_NONE) || \
345 ((MODE) == QSPI_INSTRUCTION_1_LINE) || \
346 ((MODE) == QSPI_INSTRUCTION_2_LINES) || \
347 ((MODE) == QSPI_INSTRUCTION_4_LINES))
348#define IS_QSPI_ADDRESS_MODE(MODE) \
349 (((MODE) == QSPI_ADDRESS_NONE) || ((MODE) == QSPI_ADDRESS_1_LINE) || \
350 ((MODE) == QSPI_ADDRESS_2_LINES) || ((MODE) == QSPI_ADDRESS_4_LINES))
351#define IS_QSPI_ALTERNATE_BYTES_MODE(MODE) \
352 (((MODE) == QSPI_ALTERNATE_BYTES_NONE) || \
353 ((MODE) == QSPI_ALTERNATE_BYTES_1_LINE) || \
354 ((MODE) == QSPI_ALTERNATE_BYTES_2_LINES) || \
355 ((MODE) == QSPI_ALTERNATE_BYTES_4_LINES))
356#define IS_QSPI_DATA_MODE(MODE) \
357 (((MODE) == QSPI_DATA_NONE) || ((MODE) == QSPI_DATA_1_LINE) || \
358 ((MODE) == QSPI_DATA_2_LINES) || ((MODE) == QSPI_DATA_4_LINES))
359#define IS_QSPI_DDR_MODE(DDR_MODE) \
360 (((DDR_MODE) == QSPI_DDR_MODE_DISABLE) || \
361 ((DDR_MODE) == QSPI_DDR_MODE_ENABLE))
362#define IS_QSPI_DDR_HHC(DDR_HHC) \
363 (((DDR_HHC) == QSPI_DDR_HHC_ANALOG_DELAY) || \
364 ((DDR_HHC) == QSPI_DDR_HHC_HALF_CLK_DELAY))
365#define IS_QSPI_SIOO_MODE(SIOO_MODE) \
366 (((SIOO_MODE) == QSPI_SIOO_INST_EVERY_CMD) || \
367 ((SIOO_MODE) == QSPI_SIOO_INST_ONLY_FIRST_CMD))
368#define IS_QSPI_INTERVAL(INTERVAL) ((INTERVAL) <= 0xFFFFUL)
369#define IS_QSPI_STATUS_BYTES_SIZE(SIZE) (((SIZE) >= 1U) && ((SIZE) <= 4U))
370#define IS_QSPI_MATCH_MODE(MODE) \
371 (((MODE) == QSPI_MATCH_MODE_AND) || ((MODE) == QSPI_MATCH_MODE_OR))
372#define IS_QSPI_AUTOMATIC_STOP(APMS) \
373 (((APMS) == QSPI_AUTOMATIC_STOP_DISABLE) || \
374 ((APMS) == QSPI_AUTOMATIC_STOP_ENABLE))
375#define IS_QSPI_TIMEOUT_ACTIVATION(TCEN) \
376 (((TCEN) == QSPI_TIMEOUT_COUNTER_DISABLE) || \
377 ((TCEN) == QSPI_TIMEOUT_COUNTER_ENABLE))
378#define IS_QSPI_TIMEOUT_PERIOD(PERIOD) ((PERIOD) <= 0xFFFFU)
397 HAL_QSPI_STATE_RESET = 0x00U,
398 HAL_QSPI_STATE_READY = 0x01U,
399 HAL_QSPI_STATE_BUSY = 0x02U,
400 HAL_QSPI_STATE_BUSY_INDIRECT_TX = 0x12U,
401 HAL_QSPI_STATE_BUSY_INDIRECT_RX = 0x22U,
402 HAL_QSPI_STATE_BUSY_AUTO_POLLING = 0x42U,
403 HAL_QSPI_STATE_BUSY_MEM_MAPPED = 0x82U,
404 HAL_QSPI_STATE_ABORT = 0x08U,
405 HAL_QSPI_STATE_ERROR = 0x04U
406} HAL_QSPI_StateTypeDef;
432} QSPI_CommandTypeDef;
441} QSPI_AutoPollingTypeDef;
446} QSPI_MemoryMappedTypeDef;
448#if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
450 HAL_QSPI_ERROR_CB_ID = 0x00U,
451 HAL_QSPI_ABORT_CB_ID = 0x01U,
452 HAL_QSPI_FIFO_THRESHOLD_CB_ID = 0x02U,
453 HAL_QSPI_CMD_CPLT_CB_ID = 0x03U,
454 HAL_QSPI_RX_CPLT_CB_ID = 0x04U,
455 HAL_QSPI_TX_CPLT_CB_ID = 0x05U,
456 HAL_QSPI_RX_HALF_CPLT_CB_ID = 0x06U,
457 HAL_QSPI_TX_HALF_CPLT_CB_ID = 0x07U,
458 HAL_QSPI_STATUS_MATCH_CB_ID = 0x08U,
459 HAL_QSPI_TIMEOUT_CB_ID = 0x09U,
460 HAL_QSPI_MSP_INIT_CB_ID = 0x0AU,
461 HAL_QSPI_MSP_DEINIT_CB_ID = 0x0BU
462} HAL_QSPI_CallbackIDTypeDef;
463typedef void (*pQSPI_CallbackTypeDef)(QSPI_HandleTypeDef *hqspi);
466typedef struct __QSPI_HandleTypeDef {
467 QUADSPI_TypeDef *Instance;
468 QSPI_InitTypeDef
Init;
475 DMA_HandleTypeDef *hdma;
477 volatile HAL_QSPI_StateTypeDef State;
483#if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
484 void (*ErrorCallback)(
struct __QSPI_HandleTypeDef *hqspi);
485 void (*AbortCpltCallback)(
struct __QSPI_HandleTypeDef *hqspi);
486 void (*FifoThresholdCallback)(
struct __QSPI_HandleTypeDef *hqspi);
487 void (*CmdCpltCallback)(
struct __QSPI_HandleTypeDef *hqspi);
488 void (*RxCpltCallback)(
struct __QSPI_HandleTypeDef *hqspi);
489 void (*TxCpltCallback)(
struct __QSPI_HandleTypeDef *hqspi);
490 void (*RxHalfCpltCallback)(
struct __QSPI_HandleTypeDef *hqspi);
491 void (*TxHalfCpltCallback)(
struct __QSPI_HandleTypeDef *hqspi);
492 void (*StatusMatchCallback)(
struct __QSPI_HandleTypeDef *hqspi);
493 void (*TimeOutCallback)(
struct __QSPI_HandleTypeDef *hqspi);
494 void (*MspInitCallback)(
struct __QSPI_HandleTypeDef *hqspi);
495 void (*MspDeInitCallback)(
struct __QSPI_HandleTypeDef *hqspi);
504void HAL_QSPI_MspInit(QSPI_HandleTypeDef *hqspi);
505void HAL_QSPI_MspDeInit(QSPI_HandleTypeDef *hqspi);
507#if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
509 QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef CallbackId,
510 pQSPI_CallbackTypeDef pCallback);
512 QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef CallbackId);
516 QSPI_CommandTypeDef *cmd,
uint32_t Timeout);
522 QSPI_CommandTypeDef *cmd);
532 QSPI_CommandTypeDef *cmd,
533 QSPI_AutoPollingTypeDef *cfg,
536 QSPI_CommandTypeDef *cmd,
537 QSPI_AutoPollingTypeDef *cfg);
539 QSPI_CommandTypeDef *cmd,
540 QSPI_MemoryMappedTypeDef *cfg);
541void HAL_QSPI_ErrorCallback(QSPI_HandleTypeDef *hqspi);
542void HAL_QSPI_AbortCpltCallback(QSPI_HandleTypeDef *hqspi);
543void HAL_QSPI_FifoThresholdCallback(QSPI_HandleTypeDef *hqspi);
544void HAL_QSPI_CmdCpltCallback(QSPI_HandleTypeDef *hqspi);
545void HAL_QSPI_RxCpltCallback(QSPI_HandleTypeDef *hqspi);
546void HAL_QSPI_TxCpltCallback(QSPI_HandleTypeDef *hqspi);
547void HAL_QSPI_RxHalfCpltCallback(QSPI_HandleTypeDef *hqspi);
548void HAL_QSPI_TxHalfCpltCallback(QSPI_HandleTypeDef *hqspi);
549void HAL_QSPI_StatusMatchCallback(QSPI_HandleTypeDef *hqspi);
550void HAL_QSPI_TimeOutCallback(QSPI_HandleTypeDef *hqspi);
551HAL_QSPI_StateTypeDef HAL_QSPI_GetState(
const QSPI_HandleTypeDef *hqspi);
552uint32_t HAL_QSPI_GetError(
const QSPI_HandleTypeDef *hqspi);
555void HAL_QSPI_SetTimeout(QSPI_HandleTypeDef *hqspi,
uint32_t Timeout);
558uint32_t HAL_QSPI_GetFifoThreshold(
const QSPI_HandleTypeDef *hqspi);
vsf_err_t(* Init)(vsf_adc_cfg_t *pCfg)
Definition adc_interface.h:38
unsigned uint32_t
Definition stdint.h:9
unsigned char uint8_t
Definition stdint.h:5
HAL_StatusTypeDef
Definition sthal_def.h:61
HAL_LockTypeDef
Definition sthal_def.h:68
SPI instance structure, used for SPI Multi Class support, not needed in non Multi Class mode.
Definition vsf_template_spi.h:990