S32 SDK
flexio_i2s_driver.c File Reference
#include "flexio_i2s_driver.h"
#include "flexio_hw_access.h"
#include "flexio_common.h"
#include "clock_manager.h"

Go to the source code of this file.

Functions

status_t FLEXIO_I2S_DRV_MasterInit (uint32_t instance, const flexio_i2s_master_user_config_t *userConfigPtr, flexio_i2s_master_state_t *master)
 Initialize the FLEXIO_I2S master mode driver. More...
 
status_t FLEXIO_I2S_DRV_MasterDeinit (flexio_i2s_master_state_t *master)
 De-initialize the FLEXIO_I2S master mode driver. More...
 
status_t FLEXIO_I2S_DRV_MasterSetConfig (flexio_i2s_master_state_t *master, uint32_t baudRate, uint8_t bitsWidth)
 Set the baud rate and bit width for any subsequent I2S communication. More...
 
status_t FLEXIO_I2S_DRV_MasterGetBaudRate (flexio_i2s_master_state_t *master, uint32_t *baudRate)
 Get the currently configured baud rate. More...
 
status_t FLEXIO_I2S_DRV_MasterSendData (flexio_i2s_master_state_t *master, const uint8_t *txBuff, uint32_t txSize)
 Perform a non-blocking send transaction on the I2S bus. More...
 
status_t FLEXIO_I2S_DRV_MasterSendDataBlocking (flexio_i2s_master_state_t *master, const uint8_t *txBuff, uint32_t txSize, uint32_t timeout)
 Perform a blocking send transaction on the I2S bus. More...
 
status_t FLEXIO_I2S_DRV_MasterReceiveData (flexio_i2s_master_state_t *master, uint8_t *rxBuff, uint32_t rxSize)
 Perform a non-blocking receive transaction on the I2S bus. More...
 
status_t FLEXIO_I2S_DRV_MasterReceiveDataBlocking (flexio_i2s_master_state_t *master, uint8_t *rxBuff, uint32_t rxSize, uint32_t timeout)
 Perform a blocking receive transaction on the I2S bus. More...
 
status_t FLEXIO_I2S_DRV_MasterTransferAbort (flexio_i2s_master_state_t *master)
 Aborts a non-blocking I2S master transaction. More...
 
status_t FLEXIO_I2S_DRV_MasterGetStatus (flexio_i2s_master_state_t *master, uint32_t *bytesRemaining)
 Get the status of the current non-blocking I2S master transaction. More...
 
status_t FLEXIO_I2S_DRV_MasterSetRxBuffer (flexio_i2s_master_state_t *master, uint8_t *rxBuff, uint32_t rxSize)
 Provide a buffer for receiving data. More...
 
status_t FLEXIO_I2S_DRV_MasterSetTxBuffer (flexio_i2s_master_state_t *master, const uint8_t *txBuff, uint32_t txSize)
 Provide a buffer for transmitting data. More...
 
status_t FLEXIO_I2S_DRV_SlaveInit (uint32_t instance, const flexio_i2s_slave_user_config_t *userConfigPtr, flexio_i2s_slave_state_t *slave)
 Initialize the FLEXIO_I2S slave mode driver. More...
 
status_t FLEXIO_I2S_DRV_SlaveSetConfig (flexio_i2s_slave_state_t *slave, uint8_t bitsWidth)
 Set the bit width for any subsequent I2S communication. More...