  | 
  
    AM64x MCU+ SDK
    11.01.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.