50 #ifndef _APP_SPI_V2_H_
51 #define _APP_SPI_V2_H_
62 #ifdef HAL_SPI_V2_MODULE_ENABLED
66 #error "NOT Support USING app_spi AND app_spi_v2 AT The Same Time !!!"
73 #define APP_SPI_PIN_ENABLE 1
74 #define APP_SPI_PIN_DISABLE 0
107 APP_SPI_DATAWIDTH_8BIT = 0x00,
108 APP_SPI_DATAWIDTH_32BIT,
109 } app_spi_datawidth_t;
170 uint32_t rx_sample_delay;
240 uint16_t app_spi_v2_transmit_poll_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t *p_data, uint16_t size, uint32_t timeout);
257 uint16_t app_spi_v2_transmit_with_ia_poll_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t inst, uint32_t addr, uint8_t *p_data, uint16_t size, uint32_t timeout);
272 uint16_t app_spi_v2_receive_poll_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t *p_data, uint16_t size, uint32_t timeout);
289 uint16_t app_spi_v2_receive_with_ia_poll_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t inst, uint32_t addr, uint8_t *p_data, uint16_t size, uint32_t timeout);
305 uint16_t app_spi_v2_transmit_receive_8bit_poll_sync(
app_spi_id_t id, uint8_t *tx_data, uint16_t tx_size, uint8_t *rx_data, uint16_t rx_size, uint32_t timeout);
319 uint16_t app_spi_v2_transmit_dma_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t *p_data, uint16_t size);
335 uint16_t app_spi_v2_transmit_with_ia_dma_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t inst, uint32_t addr, uint8_t *p_data, uint16_t size);
349 uint16_t app_spi_v2_receive_dma_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t *p_data, uint16_t size);
365 uint16_t app_spi_v2_receive_with_ia_dma_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t inst, uint32_t addr, uint8_t *p_data, uint16_t size);
379 uint16_t app_spi_v2_cs_toggle_transmit_dma_sync(
app_spi_id_t id, uint32_t data_width, uint8_t *p_data, uint16_t size);
393 uint16_t app_spi_v2_cs_toggle_transmit_dma_async(
app_spi_id_t id, uint32_t data_width, uint8_t *p_data, uint16_t size);
395 #ifdef ENV_RTOS_USE_SEMP
411 uint16_t app_spi_v2_transmit_with_ia_dma_sem_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t inst, uint32_t addr, uint8_t *p_data, uint16_t size);
425 uint16_t app_spi_v2_transmit_dma_sem_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t *p_data, uint16_t size);
441 uint16_t app_spi_v2_receive_with_ia_dma_sem_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t inst, uint32_t addr, uint8_t *p_data, uint16_t size);
455 uint16_t app_spi_v2_receive_dma_sem_sync(
app_spi_id_t id, app_spi_datawidth_t data_width, uint8_t *p_data, uint16_t size);