| iLLD_TC27xC
    1.0
    | 
|   | 
| Data Structures | |
| struct | SpiIf_Flags | 
| struct | SpiIf_Job | 
| struct | SpiIf_funcs | 
| struct | SpiIf_ | 
| struct | SpiIf_Config | 
| struct | Spi_ErrorChecks | 
| struct | SpiIf_ChMode | 
| struct | SpiIf_Ch_ | 
| struct | SpiIf_ChConfig_ | 
| Macros | |
| #define | IFXQSPI_BACONSIZE(Datasize) ((((Datasize) % 16)== 0) ? ((uint8)((Datasize)/16)) : ((uint8)((Datasize)/16) + 1)) | 
| #define | IFXQSPI_FIFO32BITSIZE(Datasize) (((Datasize) % 4)== 0) ? ((uint8)((Datasize)/4)) : ((uint8)((Datasize)/4) + 1) | 
| #define | IFXQSPI_GETLONGMODEFIFOSIZE(Datasize) IFXQSPI_BACONSIZE(Datasize) + IFXQSPI_FIFO32BITSIZE(Datasize) | 
| Typedefs | |
| typedef struct SpiIf_Ch_ | SpiIf_Ch | 
| Alias to the channel structure.  More... | |
| typedef struct SpiIf_ChConfig_ | SpiIf_ChConfig | 
| typedef struct SpiIf_ | SpiIf | 
| typedef SpiIf_Status(* | SpiIf_Exchange )(SpiIf_Ch *handle, const void *src, void *dest, Ifx_SizeT numOfData) | 
| typedef SpiIf_Status(* | SpiIf_GetStatus )(SpiIf_Ch *handle) | 
| typedef void(* | SpiIf_OnEvent )(SpiIf *handle) | 
| typedef void(* | SpiIf_Cbk )(void *data) | 
| SPI channel callback prototype.  More... | |
| typedef void(* | TxRxHandler )(SpiIf_Ch *handle) | 
| Enumerations | |
| enum | SpiIf_Status { SpiIf_Status_ok, SpiIf_Status_busy, SpiIf_Status_unknown } | 
| SPI Interface Status.  More... | |
| enum | SpiIf_SlsoTiming { SpiIf_SlsoTiming_0 = 0, SpiIf_SlsoTiming_1, SpiIf_SlsoTiming_2, SpiIf_SlsoTiming_3, SpiIf_SlsoTiming_4, SpiIf_SlsoTiming_5, SpiIf_SlsoTiming_6, SpiIf_SlsoTiming_7 } | 
| Slave select output timing.  More... | |
| enum | SpiIf_DataHeading { SpiIf_DataHeading_lsbFirst = 0, SpiIf_DataHeading_msbFirst } | 
| Heading.  More... | |
| enum | SpiIf_ShiftClock { SpiIf_ShiftClock_shiftTransmitDataOnLeadingEdge = 0, SpiIf_ShiftClock_shiftTransmitDataOnTrailingEdge } | 
| Clock phase.  More... | |
| enum | SpiIf_ClockPolarity { SpiIf_ClockPolarity_idleLow = 0, SpiIf_ClockPolarity_idleHigh } | 
| Clock polarity.  More... | |
| enum | SpiIf_Mode { SpiIf_Mode_master, SpiIf_Mode_slave, SpiIf_Mode_undefined } | 
| Functions | |
| IFX_INLINE void | SpiIf_wait (SpiIf_Ch *handle) | 
| IFX_EXTERN void | SpiIf_initConfig (SpiIf_Config *config) | 
| IFX_EXTERN void | SpiIf_initChannelConfig (SpiIf_ChConfig *config, SpiIf *driver) | 
| Virtual functions | |
| IFX_INLINE SpiIf_Status | SpiIf_exchange (SpiIf_Ch *handle, const void *src, void *dest, Ifx_SizeT numOfData) | 
| IFX_INLINE SpiIf_Status | SpiIf_getStatus (SpiIf_Ch *handle) | 
| struct SpiIf_Flags | 
| struct SpiIf_Job | 
| struct SpiIf_funcs | 

| Data Fields | ||
|---|---|---|
| SpiIf_Exchange | exchange | |
| SpiIf_GetStatus | getStatus | |
| SpiIf_OnEvent | onError | |
| SpiIf_OnEvent | onRx | |
| SpiIf_OnEvent | onTx | |
| struct SpiIf_ | 
| struct SpiIf_Config | 
| Data Fields | ||
|---|---|---|
| void * | buffer | Specifies the buffer location.The buffer parameter must point on a free memory location where the buffer object will be initialised. The Size of this area must be at least equals to "Size + sizeof(Ifx_Fifo) + 8", with "Size=config->bufferSize * Ifx_AlignOn32(sizeof(Spi_Ch*))". Not tacking this in account may result in unpredictable behaviour. | 
| Ifx_SizeT | bufferSize | Specifies the number of channels that can be buffered. If 0, buffering is disabled. | 
| Ifx_Priority | erPriority | Specifies the priority of the error interrupt. | 
| IfxSrc_Tos | isrProvider | Specifies the handler of the interrupts. | 
| float32 | maximumBaudrate | Maximum baudrate used by the channels, this value is used to optimise the SPI internal clock. | 
| SpiIf_Mode | mode | Specifies the interface operation mode. | 
| Ifx_Priority | rxPriority | Specifies the priority of the receive interrupt. | 
| Ifx_Priority | txPriority | Specifies the priority of the transmit interrupt. | 
| struct Spi_ErrorChecks | 
| struct SpiIf_ChMode | 
| Data Fields | ||
|---|---|---|
| uint32 | autoCS: 1 | 1 = chip select is controlled by the hardware module or, 0 = by software. | 
| uint32 | clockPolarity: 1 | SpiIf_ClockPolarity | 
| uint32 | csActiveLevel: 1 | Ifx_ActiveState | 
| uint32 | csInactiveDelay: 3 | SpiIf_SlsoTiming | 
| uint32 | csLeadDelay: 3 | SpiIf_SlsoTiming | 
| uint32 | csTrailDelay: 3 | SpiIf_SlsoTiming | 
| uint32 | dataHeading: 1 | SpiIf_DataHeading | 
| uint32 | dataWidth: 6 | range 2 .. 32 bits (note 2 = 2-bits, 3 = 3-bits ... | 
| uint32 | enabled: 1 | 1 = channel enabled, 0 = channel disabled | 
| uint32 | loopback: 1 | 0 = normal mode, 1 = loopback mode | 
| uint32 | parityCheck: 1 | 0 = disabled, 1 = enabled | 
| uint32 | parityMode: 1 | Ifx_ParityMode | 
| uint32 | shiftClock: 1 | SpiIf_ShiftClock | 
| struct SpiIf_Ch_ | 

| Data Fields | ||
|---|---|---|
| sint32 | baudrate | Real baudrate. | 
| void * | callbackData | Specifies pointer to the user specific data on transmit end. | 
| SpiIf * | driver | Pointer to the SPI interface driver. | 
| Spi_ErrorChecks | errorChecks | Error checks. | 
| SpiIf_Flags | flags | |
| SpiIf_Cbk | onExchangeEnd | Specifies the callback function on end of exchange. | 
| SpiIf_Job | rx | |
| TxRxHandler | rxHandler | |
| SpiIf_Job | tx | |
| TxRxHandler | txHandler | |
| struct SpiIf_ChConfig_ | 

| Data Fields | ||
|---|---|---|
| float32 | baudrate | Specifies the SPI baudrate. | 
| SpiIf * | driver | Pointer to an implementation of SPI interface driver, e.g. IfxQspi_SpiMaster_ChannelConfig. | 
| Spi_ErrorChecks | errorChecks | |
| SpiIf_ChMode | mode | |
| #define IFXQSPI_GETLONGMODEFIFOSIZE | ( | Datasize) | IFXQSPI_BACONSIZE(Datasize) + IFXQSPI_FIFO32BITSIZE(Datasize) | 
| typedef void(* SpiIf_Cbk)(void *data) | 
| typedef struct SpiIf_ChConfig_ SpiIf_ChConfig | 
| typedef SpiIf_Status(* SpiIf_Exchange)(SpiIf_Ch *handle, const void *src, void *dest, Ifx_SizeT numOfData) | 
| typedef SpiIf_Status(* SpiIf_GetStatus)(SpiIf_Ch *handle) | 
| enum SpiIf_ClockPolarity | 
| enum SpiIf_DataHeading | 
| enum SpiIf_Mode | 
| enum SpiIf_ShiftClock | 
| enum SpiIf_SlsoTiming | 
Slave select output timing.
| enum SpiIf_Status | 
| IFX_INLINE SpiIf_Status SpiIf_exchange | ( | SpiIf_Ch * | handle, | 
| const void * | src, | ||
| void * | dest, | ||
| Ifx_SizeT | numOfData | ||
| ) | 
Perform the SPI exchange operation.
| handle | Pointer to an implementation of SPI interface driver | 
| src | Pointer to the start of data buffer for data to transmit | 
| dest | Pointer to the start of data buffer for received data | 
| numOfData | specifies number of byte/bit to transfer | 
| IFX_INLINE SpiIf_Status SpiIf_getStatus | ( | SpiIf_Ch * | handle) | 
| IFX_EXTERN void SpiIf_initChannelConfig | ( | SpiIf_ChConfig * | config, | 
| SpiIf * | driver | ||
| ) | 
Definition at line 40 of file SpiIf.c.
Referenced by IfxQspi_SpiMaster_initChannelConfig(), and IfxQspi_SpiSlave_initModule().
| IFX_EXTERN void SpiIf_initConfig | ( | SpiIf_Config * | config) | 
Definition at line 27 of file SpiIf.c.
Referenced by IfxQspi_SpiMaster_initModuleConfig(), and IfxQspi_SpiSlave_initModuleConfig().
| IFX_INLINE void SpiIf_wait | ( | SpiIf_Ch * | handle) |