i2stx
Xilinx SDK Drivers API Documentation
xi2stx.h File Reference

Data Structures

struct  XI2stx_Config
 This typedef contains configuration information for the I2s Transmitter. More...
 
struct  XI2s_Tx
 This typedef implements the I2s Transmitter driver instance data. More...
 

Typedefs

typedef void(* XI2s_Tx_Callback) (void *CallbackRef)
 Callback function data type for handling interrupt requests from the I2s Transmitter peripheral. More...
 

Enumerations

enum  XI2s_Tx_ChannelId {
  XI2S_TX_CHID0 = 0, XI2S_TX_CHID1, XI2S_TX_CHID2, XI2S_TX_CHID3,
  XI2S_TX_NUM_CHANNELS
}
 These constants specify different channel ID's. More...
 
XI2S_Tx_Handlertype
enum  XI2s_Tx_HandlerType {
  XI2S_TX_HANDLER_AES_BLKCMPLT = 0, XI2S_TX_HANDLER_AES_BLKSYNCERR, XI2S_TX_HANDLER_AES_CHSTSUPD, XI2S_TX_HANDLER_AUD_UNDRFLW,
  XI2S_TX_NUM_HANDLERS
}
 these constants specify different types of handlers and is used to differentiate interrupt requests from the I2s Transmitter peripheral. More...
 
XI2s_Tx_ChMuxInput
enum  XI2s_Tx_ChMuxInput {
  XI2S_TX_CHMUX_DISABLED = 0, XI2S_TX_CHMUX_AXIS_01, XI2S_TX_CHMUX_AXIS_23, XI2S_TX_CHMUX_AXIS_45,
  XI2S_TX_CHMUX_AXIS_67, XI2S_TX_CHMUX_WAVEGEN
}
 This typedef specifies the input sources of the the I2s Transmitter. More...
 

Functions

int XI2s_Tx_SelfTest (XI2s_Tx *InstancePtr)
 Runs a self-test on the driver/device. More...
 
XI2stx_ConfigXI2s_Tx_LookupConfig (u16 DeviceId)
 This function returns a reference to an XI2stx_Config structure based on the core id, DeviceId. More...
 
int XI2s_Tx_CfgInitialize (XI2s_Tx *InstancePtr, XI2stx_Config *CfgPtr, UINTPTR EffectiveAddr)
 This function initializes the I2S Transmitter. More...
 
void XI2s_Tx_Enable (XI2s_Tx *InstancePtr, u8 Enable)
 This function enables/disables the I2s Transmitter. More...
 
int XI2s_Tx_SetChMux (XI2s_Tx *InstancePtr, XI2s_Tx_ChannelId ChID, XI2s_Tx_ChMuxInput InputSource)
 This function sets the input source for the specified I2s channel. More...
 
u32 XI2s_Tx_SetSclkOutDiv (XI2s_Tx *InstancePtr, u32 MClk, u32 Fs)
 This function calculates the SCLK Output divider value of the I2S timing generator. More...
 
void XI2s_Tx_IntrEnable (XI2s_Tx *InstancePtr, u32 Mask)
 This function enables the specified interrupt of the I2s Transmitter. More...
 
void XI2s_Tx_IntrHandler (void *InstancePtr)
 This function is the interrupt handler for the I2S Transmitter driver. More...
 
int XI2s_Tx_SetHandler (XI2s_Tx *InstancePtr, XI2s_Tx_HandlerType HandlerType, XI2s_Tx_Callback FuncPtr, void *CallbackRef)
 This function installs an asynchronous callback function for the given HandlerType: More...
 
void XI2s_Tx_GetAesChStatus (XI2s_Tx *InstancePtr, u8 *AesChStatusBuf)
 This function gets the captured AES Channel Status bits. More...
 
void XI2s_Tx_ClrAesChStatRegs (XI2s_Tx *InstancePtr)
 This function clears the captured AES Channel Status bits. More...
 
void XI2s_Tx_LogDisplay (XI2s_Tx *InstancePtr)
 This function prints the contents of the logging buffer. More...
 
void XI2s_Tx_LogWrite (XI2s_Tx *InstancePtr, XI2s_Tx_LogEvt Event, u8 Data)
 This function writes I2S Transmitter logs into the buffer. More...
 
XI2s_Tx_LogItemXI2s_Tx_LogRead (XI2s_Tx *InstancePtr)
 This function returns the next item in the logging buffer. More...
 
void XI2s_Tx_LogReset (XI2s_Tx *InstancePtr)
 This function clears the contents of the logging buffer. More...
 

Typedef Documentation

◆ XI2s_Tx_Callback

typedef void(* XI2s_Tx_Callback) (void *CallbackRef)

Callback function data type for handling interrupt requests from the I2s Transmitter peripheral.

The application using this driver is expected to define a handler of this type to support interrupt driven mode. The handler is called in an interrupt context such that minimal processing should be performed.

Parameters
CallBackRefis a callback reference passed in by the upper layer when setting the callback functions, and passed back to the upper layer when the callback is invoked.
Returns
None
Note
None

Enumeration Type Documentation

◆ XI2s_Tx_ChMuxInput

This typedef specifies the input sources of the the I2s Transmitter.

Enumerator
XI2S_TX_CHMUX_DISABLED 

Channel disabled.

XI2S_TX_CHMUX_AXIS_01 

AXI-Stream Audio Channel 0 and 1.

XI2S_TX_CHMUX_AXIS_23 

AXI-Stream Audio Channel 2 and 3.

XI2S_TX_CHMUX_AXIS_45 

AXI-Stream Audio Channel 4 and 5.

XI2S_TX_CHMUX_AXIS_67 

AXI-Stream Audio Channel 6 and 7.

XI2S_TX_CHMUX_WAVEGEN 

Wave Generator.