AM263Px MCU+ SDK: fsi_tx.h File Reference

| AM263Px MCU+ SDK 26.00.00 |

Functions
fsi_tx.h File Reference
APIs for SOC Specific Device Drivers » APIs for FSI TX

## Introduction

Header file containing various enumerations, structure definitions and function declarations for the FSI TX IP.

Go to the source code of this file.

## FSI TX Enum type
#define | FSI_TX_EVT_FRAME_DONE ((uint16_t)0x1U)
#define | FSI_TX_EVT_BUF_UNDERRUN ((uint16_t)0x2U)
#define | FSI_TX_EVT_BUF_OVERRUN ((uint16_t)0x4U)
#define | FSI_TX_EVT_PING_TIMEOUT ((uint16_t)0x8U)
#define | FSI_TX_EVT_PING_HW_TRIG ((uint16_t)0x8U)
#define | FSI_TX_EVTMASK ((uint16_t)0xFU)
| Mask of all TX Event types. More...
#define | FSI_TX_MAX_NUM_EXT_TRIGGERS ((uint16_t)0x40U)
| maximum number of external input for triggering frame-transmission More...
#define | FSI_TX_INT2_CTRL_S ((uint16_t)0x8U)
| Shifts needed to control FSI TX interrupt generation on INT2. More...
typedef uint32_t | FSI_TxEnumType
| This enumerator defines the types of possible FSI TX events. More...

## FSI TX submodules can be in reset
#define | FSI_TX_MAIN_CORE_RESET ((uint32_t)0x0U)
#define | FSI_TX_CLOCK_RESET ((uint32_t)0x1U)
#define | FSI_TX_PING_TIMEOUT_CNT_RESET ((uint32_t)0x2U)
typedef uint32_t | FSI_TxSubmoduleInReset
| TX submodules that can be reset with reset APIs. More...

## FSI TX start mode
#define | FSI_TX_START_FRAME_CTRL ((uint32_t)0x0U)
#define | FSI_TX_START_EXT_TRIG ((uint32_t)0x1U)
#define | FSI_TX_START_FRAME_CTRL_OR_UDATA_TAG ((uint32_t)0x2U)
typedef uint32_t | FSI_TxStartMode
| Start Mode for TX frame transmission (i.e. how transmission will start) More...

## FSI TX input clock select
#define | FSI_TX_CLK_SEL0 ((uint32_t)0x0U)
#define | FSI_TX_CLK_SEL1 ((uint32_t)0x1U)
typedef uint32_t | FSI_TxClkSel
| FSI TX input clock select. More...

## FSI frame tag
#define | FSI_FRAME_TAG0 ((uint32_t)0x0U)
#define | FSI_FRAME_TAG1 ((uint32_t)0x1U)
#define | FSI_FRAME_TAG2 ((uint32_t)0x2U)
#define | FSI_FRAME_TAG3 ((uint32_t)0x3U)
#define | FSI_FRAME_TAG4 ((uint32_t)0x4U)
#define | FSI_FRAME_TAG5 ((uint32_t)0x5U)
#define | FSI_FRAME_TAG6 ((uint32_t)0x6U)
#define | FSI_FRAME_TAG7 ((uint32_t)0x7U)
#define | FSI_FRAME_TAG8 ((uint32_t)0x8U)
#define | FSI_FRAME_TAG9 ((uint32_t)0x9U)
#define | FSI_FRAME_TAG10 ((uint32_t)0xAU)
#define | FSI_FRAME_TAG11 ((uint32_t)0xBU)
#define | FSI_FRAME_TAG12 ((uint32_t)0xCU)
#define | FSI_FRAME_TAG13 ((uint32_t)0xDU)
#define | FSI_FRAME_TAG14 ((uint32_t)0xEU)
#define | FSI_FRAME_TAG15 ((uint32_t)0xFU)
typedef uint32_t | FSI_FrameTag
| FSI frame tag values. More...

## Functions
int32_t | FSI_sendTxFlush (uint32_t base)
| This API sends FLUSH pattern. More...
int32_t | FSI_stopTxFlush (uint32_t base)
| This API stops FLUSH pattern transmission. More...
int32_t | FSI_selectTxPLLClock (uint32_t base, FSI_TxClkSel clkSel)
| This API selects PLL clock as source for clock dividers. More...
int32_t | FSI_enableTxClock (uint32_t base, uint16_t preScaleValue)
| This API sets clock division prescalar and enables the transmit clock. More...
int32_t | FSI_disableTxClock (uint32_t base)
| This API disables transmit clock. More...
int32_t | FSI_setTxDataWidth (uint32_t base, FSI_DataWidth dataWidth)
| This API sets Data width for transmission. More...
int32_t | FSI_enableTxSPIMode (uint32_t base)
| This API enables SPI compatible mode. More...
int32_t | FSI_disableTxSPIMode (uint32_t base)
| This API disables SPI compatible mode. More...
int32_t | FSI_setTxStartMode (uint32_t base, FSI_TxStartMode txStartMode)
| This API sets start mode for any frame transmission. More...
int32_t | FSI_setTxPingTimeoutMode (uint32_t base, FSI_PingTimeoutMode pingTimeoutMode)
| This API sets HW/SW initiated TX ping timeout mode. More...
int32_t | FSI_setTxExtFrameTrigger (uint32_t base, uint16_t extInputNum)
| This API sets a particular external input to trigger transmission. More...
int32_t | FSI_enableTxCRCForceError (uint32_t base)
| This API enables CRC value of a data frame to be forced to zero. More...
int32_t | FSI_disableTxCRCForceError (uint32_t base)
| This API disables forcing of CRC value of a data frame to zero. More...
int32_t | FSI_setTxECCComputeWidth (uint32_t base, FSI_ECCComputeWidth eccComputeWidth)
| This API select between 16-bit and 32-bit ECC computation for FSI TX. More...
int32_t | FSI_setTxFrameType (uint32_t base, FSI_FrameType frameType)
| This API sets frame type for transmission. More...
int32_t | FSI_setTxSoftwareFrameSize (uint32_t base, uint16_t nWords)
| This API sets the frame size if frame type is user/software defined frame. More...
int32_t | FSI_startTxTransmit (uint32_t base)
| This API starts transmitting frames. More...
int32_t | FSI_setTxFrameTag (uint32_t base, FSI_FrameTag frameTag)
| This API sets frame tag for transmission. More...
int32_t | FSI_setTxUserDefinedData (uint32_t base, uint16_t userDefData)
| This API sets user defined data for transmission It is an extra data field (8 bit) apart from regular data. More...
int32_t | FSI_setTxBufferPtr (uint32_t base, uint16_t bufPtrOff)
| This API sets the value for transmit buffer pointer at desired location. More...
int32_t | FSI_getTxBufferPtr (uint32_t base, uint16_t *pBufPtrLoc)
| This API gets current buffer pointer locationn. More...
int32_t | FSI_getTxWordCount (uint32_t base, uint16_t *pWordCnt)
| This API gets valid number of data words present in buffer which have not been transmitted yet. More...
int32_t | FSI_enableTxPingTimer (uint32_t base, uint32_t refValue, FSI_FrameTag pingFrameTag)
| This API enables ping timer logic and once set time elapses it sends signal to transmitter to send ping frame. More...
int32_t | FSI_setTxPingTag (uint32_t base, FSI_FrameTag frameTag)
| This API sets the ping tag value, used by either timeout counter initiated PING frame transfer or by external ping trigger input. More...
int32_t | FSI_disableTxPingTimer (uint32_t base)
| This API disables ping timer logic. More...
int32_t | FSI_enableTxExtPingTrigger (uint32_t base, uint16_t extTrigSel)
| This API enables external trigger to transmit a ping frame. More...
int32_t | FSI_disableTxExtPingTrigger (uint32_t base)
| This API disables external trigger logic. More...
int32_t | FSI_getTxCurrentPingTimeoutCounter (uint32_t base, uint32_t *pPingToCnt)
| This API gets current value of ping timeout logic counter. More...
int32_t | FSI_lockTxCtrl (uint32_t base)
| This API locks the control of all transmit control registers, once locked further writes will not take effect until system reset occurs. More...
int32_t | FSI_getTxEventStatus (uint32_t base, uint16_t *pEvtFlags)
| This API gets current status of all the error flags. More...
int32_t | FSI_forceTxEvents (uint32_t base, uint16_t evtFlags)
| This API enables user to set TX error flags. More...
int32_t | FSI_clearTxEvents (uint32_t base, uint16_t evtFlags)
| This API enables user to clear TX error flags. More...
int32_t | FSI_enableTxUserCRC (uint32_t base, uint16_t userCRCValue)
| This API sets the CRC value to be picked transmission if transmission is configured to use user defined SW CRC. More...
int32_t | FSI_disableTxUserCRC (uint32_t base)
| This API disables user defined CRC value, the transmitted CRC value is computed by hardware. More...
int32_t | FSI_setTxECCdata (uint32_t base, uint32_t data)
| This API sets data for ECC logic computaion. More...
int32_t | FSI_getTxECCValue (uint32_t base, uint16_t *pEccVal)
| This API gets ECC value evaluated for 16/32 bit data. More...
int32_t | FSI_enableTxInterrupt (uint32_t base, FSI_InterruptNum intNum, uint16_t intFlags)
| This API enables user to generate interrupt on occurrence of FSI_TxEventList events. More...
int32_t | FSI_disableTxInterrupt (uint32_t base, FSI_InterruptNum intNum, uint16_t intFlags)
| This API enables user to disable generation interrupt on occurrence of FSI TX events. More...
int32_t | FSI_getTxBufferAddress (uint32_t base, uint32_t *pBufAddr)
| This API gets address of TX data buffer. More...
int32_t | FSI_resetTxModule (uint32_t base, FSI_TxSubmoduleInReset submodule)
| This API resets clock or ping timeout counter or entire TX module. More...
int32_t | FSI_clearTxModuleReset (uint32_t base, FSI_TxSubmoduleInReset submodule)
| This API clears reset on clock or ping timeout counter or entire TX module. More...
int32_t | FSI_writeTxBuffer (uint32_t base, const uint16_t *pArray, uint16_t length, uint16_t bufOffset)
| This API writes data in FSI TX buffer. More...
int32_t | FSI_performTxInitialization (uint32_t base, uint16_t prescalar)
| This API initializes FSI TX module. More...
int32_t | FSI_executeTxFlushSequence (uint32_t base, uint16_t prescalar)
| This API sends Flush pattern sequence. More...