45 #ifndef ADI_SPI_DEF_H_ 46 #define ADI_SPI_DEF_H_ 50 #include <drivers/spi/adi_spi.h> 52 #define ADI_SPI_NUM_INSTANCES (3u) 53 #define ADI_SPI_FIFO_SIZE (8u) 54 #define ADI_SPI_IRQ_PARAM (7u) 57 #if defined(__ADUCM302x__) 58 #define DMA_SPIH_TX_Int_Handler(void) DMA_SPI2_TX_Int_Handler(void) 59 #define DMA_SPIH_RX_Int_Handler(void) DMA_SPI2_RX_Int_Handler(void) 69 #define ADI_SPI_BITRATE_INITIALIZER 250000u 77 #define ADI_SPI_MASTERCON_INITIALIZER BITM_SPI_CTL_MASEN 84 #define ADI_SPI_SLAVECON_INITIALIZER BITM_SPI_CTL_OEN \ 89 #define ADI_DMA_DATA_WIDTH ADI_DMA_WIDTH_2_BYTE 90 #define ADI_DMA_DATA_INCREMENT ADI_DMA_INCR_HALFWORD 98 typedef struct ADI_SPI_CONFIG 106 typedef struct __ADI_SPI_DEVICE_INFO
108 const uint16_t dmaTxIrqNumber;
109 const uint16_t dmaTxChannelNumber;
110 const uint16_t dmaRxIrqNumber;
111 const uint16_t dmaRxChannelNumber;
112 volatile ADI_SPI_TypeDef *pSpiRegs;
113 const IRQn_Type eIRQn;
115 }ADI_SPI_DEVICE_INFO;
119 typedef struct __ADI_SPI_DEV_DATA_TYPE
123 volatile ADI_SPI_TypeDef *pSpi;
124 ADI_SPI_DEVICE_INFO *pDevInfo;
127 ADI_CALLBACK pfCallback;
134 uint16_t TxRemaining;
135 uint16_t RxRemaining;
139 volatile bool bTransferComplete;
147 } ADI_SPI_DEV_DATA_TYPE;
struct __ADI_SPI_DEV_DATA_TYPE * ADI_SPI_HANDLE