|
AM64x MCU+ SDK
10.00.00
|
|
Go to the documentation of this file.
53 #if defined (SOC_AM64X) || defined (SOC_AM243X)
54 #define FSI_TX_BUFFER_ACCESS_64BIT
61 #include <drivers/hw_include/cslr_fsi_tx.h>
96 #define FSI_TX_EVT_FRAME_DONE ((uint16_t)0x1U)
98 #define FSI_TX_EVT_BUF_UNDERRUN ((uint16_t)0x2U)
100 #define FSI_TX_EVT_BUF_OVERRUN ((uint16_t)0x4U)
102 #define FSI_TX_EVT_PING_TIMEOUT ((uint16_t)0x8U)
104 #define FSI_TX_EVT_PING_HW_TRIG ((uint16_t)0x8U)
110 #define FSI_TX_EVTMASK ((uint16_t)0xFU)
115 #define FSI_TX_MAX_NUM_EXT_TRIGGERS ((uint16_t)0x40U)
120 #define FSI_TX_INT2_CTRL_S ((uint16_t)0x8U)
133 #define FSI_TX_MAIN_CORE_RESET ((uint32_t)0x0U)
135 #define FSI_TX_CLOCK_RESET ((uint32_t)0x1U)
137 #define FSI_TX_PING_TIMEOUT_CNT_RESET ((uint32_t)0x2U)
151 #define FSI_TX_START_FRAME_CTRL ((uint32_t)0x0U)
153 #define FSI_TX_START_EXT_TRIG ((uint32_t)0x1U)
155 #define FSI_TX_START_FRAME_CTRL_OR_UDATA_TAG ((uint32_t)0x2U)
169 #define FSI_TX_CLK_SEL0 ((uint32_t)0x0U)
171 #define FSI_TX_CLK_SEL1 ((uint32_t)0x1U)
188 #define FSI_FRAME_TAG0 ((uint32_t)0x0U)
190 #define FSI_FRAME_TAG1 ((uint32_t)0x1U)
192 #define FSI_FRAME_TAG2 ((uint32_t)0x2U)
194 #define FSI_FRAME_TAG3 ((uint32_t)0x3U)
196 #define FSI_FRAME_TAG4 ((uint32_t)0x4U)
198 #define FSI_FRAME_TAG5 ((uint32_t)0x5U)
200 #define FSI_FRAME_TAG6 ((uint32_t)0x6U)
202 #define FSI_FRAME_TAG7 ((uint32_t)0x7U)
204 #define FSI_FRAME_TAG8 ((uint32_t)0x8U)
206 #define FSI_FRAME_TAG9 ((uint32_t)0x9U)
208 #define FSI_FRAME_TAG10 ((uint32_t)0xAU)
210 #define FSI_FRAME_TAG11 ((uint32_t)0xBU)
212 #define FSI_FRAME_TAG12 ((uint32_t)0xCU)
214 #define FSI_FRAME_TAG13 ((uint32_t)0xDU)
216 #define FSI_FRAME_TAG14 ((uint32_t)0xEU)
218 #define FSI_FRAME_TAG15 ((uint32_t)0xFU)
564 uint32_t *pPingToCnt);
749 const uint16_t *pArray,
int32_t FSI_setTxBufferPtr(uint32_t base, uint16_t bufPtrOff)
This API sets the value for transmit buffer pointer at desired location.
int32_t FSI_sendTxFlush(uint32_t base)
This API sends FLUSH pattern.
uint32_t FSI_InterruptNum
Interrupt lines supported in FSI.
Definition: fsi/v0/fsi.h:136
int32_t FSI_startTxTransmit(uint32_t base)
This API starts transmitting frames.
int32_t FSI_enableTxExtPingTrigger(uint32_t base, uint16_t extTrigSel)
This API enables external trigger to transmit a ping frame.
int32_t FSI_getTxEventStatus(uint32_t base, uint16_t *pEvtFlags)
This API gets current status of all the error flags.
int32_t FSI_setTxPingTimeoutMode(uint32_t base, FSI_PingTimeoutMode pingTimeoutMode)
This API sets HW/SW initiated TX ping timeout mode.
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 ...
int32_t FSI_stopTxFlush(uint32_t base)
This API stops FLUSH pattern transmission.
int32_t FSI_enableTxCRCForceError(uint32_t base)
This API enables CRC value of a data frame to be forced to zero.
uint32_t FSI_PingTimeoutMode
FSI ping timeout mode.
Definition: fsi/v0/fsi.h:190
int32_t FSI_enableTxSPIMode(uint32_t base)
This API enables SPI compatible mode.
uint32_t data
Definition: tisci_rm_psil.h:1
int32_t FSI_disableTxPingTimer(uint32_t base)
This API disables ping timer logic.
uint32_t FSI_TxStartMode
Start Mode for TX frame transmission (i.e. how transmission will start)
Definition: fsi_tx.h:149
int32_t FSI_clearTxEvents(uint32_t base, uint16_t evtFlags)
This API enables user to clear TX error flags.
int32_t FSI_setTxSoftwareFrameSize(uint32_t base, uint16_t nWords)
This API sets the frame size if frame type is user/software defined frame.
int32_t FSI_setTxFrameType(uint32_t base, FSI_FrameType frameType)
This API sets frame type for transmission.
int32_t FSI_disableTxExtPingTrigger(uint32_t base)
This API disables external trigger logic.
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 defin...
int32_t FSI_setTxExtFrameTrigger(uint32_t base, uint16_t extInputNum)
This API sets a particular external input to trigger transmission.
int32_t FSI_executeTxFlushSequence(uint32_t base, uint16_t prescalar)
This API sends Flush pattern sequence.
int32_t FSI_getTxECCValue(uint32_t base, uint16_t *pEccVal)
This API gets ECC value evaluated for 16/32 bit data.
int32_t FSI_disableTxCRCForceError(uint32_t base)
This API disables forcing of CRC value of a data frame to zero.
int32_t FSI_resetTxModule(uint32_t base, FSI_TxSubmoduleInReset submodule)
This API resets clock or ping timeout counter or entire TX module.
int32_t FSI_enableTxClock(uint32_t base, uint16_t preScaleValue)
This API sets clock division prescalar and enables the transmit clock.
int32_t FSI_performTxInitialization(uint32_t base, uint16_t prescalar)
This API initializes FSI TX module.
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.
uint32_t FSI_TxClkSel
FSI TX input clock select.
Definition: fsi_tx.h:167
uint32_t FSI_TxEnumType
This enumerator defines the types of possible FSI TX events.
Definition: fsi_tx.h:94
uint32_t FSI_FrameType
FSI frame type.
Definition: fsi/v0/fsi.h:163
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.
int32_t FSI_getTxCurrentPingTimeoutCounter(uint32_t base, uint32_t *pPingToCnt)
This API gets current value of ping timeout logic counter.
uint32_t FSI_FrameTag
FSI frame tag values.
Definition: fsi_tx.h:186
int32_t FSI_disableTxClock(uint32_t base)
This API disables transmit clock.
int32_t FSI_setTxECCComputeWidth(uint32_t base, FSI_ECCComputeWidth eccComputeWidth)
This API select between 16-bit and 32-bit ECC computation for FSI TX.
uint32_t FSI_ECCComputeWidth
ECC Computation width - 16 bit or 32 bit.
Definition: fsi/v0/fsi.h:117
int32_t FSI_setTxFrameTag(uint32_t base, FSI_FrameTag frameTag)
This API sets frame tag for transmission.
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...
int32_t FSI_disableTxUserCRC(uint32_t base)
This API disables user defined CRC value, the transmitted CRC value is computed by hardware.
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.
uint32_t FSI_TxSubmoduleInReset
TX submodules that can be reset with reset APIs.
Definition: fsi_tx.h:131
int32_t FSI_forceTxEvents(uint32_t base, uint16_t evtFlags)
This API enables user to set TX error flags.
int32_t FSI_disableTxSPIMode(uint32_t base)
This API disables SPI compatible mode.
int32_t FSI_setTxDataWidth(uint32_t base, FSI_DataWidth dataWidth)
This API sets Data width for transmission.
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 pi...
int32_t FSI_setTxECCdata(uint32_t base, uint32_t data)
This API sets data for ECC logic computaion.
int32_t FSI_getTxBufferAddress(uint32_t base, uint32_t *pBufAddr)
This API gets address of TX data buffer.
uint32_t FSI_DataWidth
Data lines used for transmit/receive operation.
Definition: fsi/v0/fsi.h:97
int32_t FSI_clearTxModuleReset(uint32_t base, FSI_TxSubmoduleInReset submodule)
This API clears reset on clock or ping timeout counter or entire TX module.
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.
int32_t FSI_selectTxPLLClock(uint32_t base, FSI_TxClkSel clkSel)
This API selects PLL clock as source for clock dividers.
int32_t FSI_getTxBufferPtr(uint32_t base, uint16_t *pBufPtrLoc)
This API gets current buffer pointer locationn.
int32_t FSI_lockTxCtrl(uint32_t base)
This API locks the control of all transmit control registers, once locked further writes will not tak...
int32_t FSI_setTxStartMode(uint32_t base, FSI_TxStartMode txStartMode)
This API sets start mode for any frame transmission.