|
AM243x MCU+ SDK
10.00.00
|
|
Go to the documentation of this file.
57 #include <drivers/hw_include/cslr.h>
58 #include <drivers/hw_include/cslr_mcan.h>
59 #include <drivers/hw_include/csl_types.h>
72 #define MCAN_INTR_MASK_ALL (MCAN_IR_RF0N_MASK | \
106 #define MCAN_HEADER_SIZE_BYTES (8U)
111 #define MCAN_MAX_PAYLOAD_BYTES (64U)
121 #define MCAN_MSG_RAM_STD_ELEM_SIZE (1U)
123 #define MCAN_MSG_RAM_EXT_ELEM_SIZE (2U)
125 #define MCAN_MSG_RAM_TX_RX_ELEM_SIZE (18U)
138 #define MCAN_RX_FIFO_OPERATION_MODE_BLOCKING (0U)
140 #define MCAN_RX_FIFO_OPERATION_MODE_OVERWRITE (1U)
152 #define MCAN_TX_MEM_TYPE_BUF (0U)
154 #define MCAN_TX_MEM_TYPE_QUEUE (1U)
166 #define MCAN_DATA_SIZE_0BYTES (0U)
168 #define MCAN_DATA_SIZE_1BYTES (1U)
170 #define MCAN_DATA_SIZE_2BYTES (2U)
172 #define MCAN_DATA_SIZE_3BYTES (3U)
174 #define MCAN_DATA_SIZE_4BYTES (4U)
176 #define MCAN_DATA_SIZE_5BYTES (5U)
178 #define MCAN_DATA_SIZE_6BYTES (6U)
180 #define MCAN_DATA_SIZE_7BYTES (7U)
182 #define MCAN_DATA_SIZE_8BYTES (8U)
184 #define MCAN_DATA_SIZE_12BYTES (9U)
186 #define MCAN_DATA_SIZE_16BYTES (10U)
188 #define MCAN_DATA_SIZE_20BYTES (11U)
190 #define MCAN_DATA_SIZE_24BYTES (12U)
192 #define MCAN_DATA_SIZE_32BYTES (13U)
194 #define MCAN_DATA_SIZE_48BYTES (14U)
196 #define MCAN_DATA_SIZE_64BYTES (15U)
208 #define MCAN_STD_FILT_ELEM_DISABLE (0U)
210 #define MCAN_STD_FILT_ELEM_FIFO0 (1U)
212 #define MCAN_STD_FILT_ELEM_FIFO1 (2U)
214 #define MCAN_STD_FILT_ELEM_REJECT (3U)
216 #define MCAN_STD_FILT_ELEM_SET_PRIORITY (4U)
218 #define MCAN_STD_FILT_ELEM_SET_PRIORITY_FIFO0 (5U)
220 #define MCAN_STD_FILT_ELEM_SET_PRIORITY_FIFO1 (6U)
222 #define MCAN_STD_FILT_ELEM_BUFFER (7U)
235 #define MCAN_STD_FILT_TYPE_RANGE (0U)
237 #define MCAN_STD_FILT_TYPE_DUAL (1U)
239 #define MCAN_STD_FILT_TYPE_CLASSIC (2U)
241 #define MCAN_STD_FILT_TYPE_DISABLE (3U)
253 #define MCAN_EXT_FILT_ELEM_DISABLE (0U)
255 #define MCAN_EXT_FILT_ELEM_FIFO0 (1U)
257 #define MCAN_EXT_FILT_ELEM_FIFO1 (2U)
259 #define MCAN_EXT_FILT_ELEM_REJECT (3U)
261 #define MCAN_EXT_FILT_ELEM_SET_PRIORITY (4U)
263 #define MCAN_EXT_FILT_ELEM_SET_PRIORITY_FIFO0 (5U)
265 #define MCAN_EXT_FILT_ELEM_SET_PRIORITY_FIFO1 (6U)
267 #define MCAN_EXT_FILT_ELEM_BUFFER (7U)
280 #define MCAN_EXT_FILT_TYPE_RANGE (0U)
282 #define MCAN_EXT_FILT_TYPE_DUAL (1U)
284 #define MCAN_EXT_FILT_TYPE_CLASSIC (2U)
286 #define MCAN_EXT_FILT_TYPE_DISABLE (3U)
300 #define MCAN_INTR_LINE_NUM_0 (0U)
302 #define MCAN_INTR_LINE_NUM_1 (1U)
316 #define MCAN_ID_TYPE_11_BIT (0U)
318 #define MCAN_ID_TYPE_29_BIT (1U)
332 #define MCAN_OPERATION_MODE_NORMAL (0U)
334 #define MCAN_OPERATION_MODE_SW_INIT (1U)
348 #define MCAN_MEM_TYPE_BUF (0U)
350 #define MCAN_MEM_TYPE_FIFO (1U)
364 #define MCAN_RX_FIFO_NUM_0 (0U)
366 #define MCAN_RX_FIFO_NUM_1 (1U)
380 #define MCAN_PIN_TYPE_RX (0U)
382 #define MCAN_PIN_TYPE_TX (1U)
396 #define MCAN_ELEM_SIZE_8BYTES (0U)
398 #define MCAN_ELEM_SIZE_12BYTES (1U)
400 #define MCAN_ELEM_SIZE_16BYTES (2U)
402 #define MCAN_ELEM_SIZE_20BYTES (3U)
404 #define MCAN_ELEM_SIZE_24BYTES (4U)
406 #define MCAN_ELEM_SIZE_32BYTES (5U)
408 #define MCAN_ELEM_SIZE_48BYTES (6U)
410 #define MCAN_ELEM_SIZE_64BYTES (7U)
424 #define MCAN_TIMEOUT_SELECT_CONT (0U)
426 #define MCAN_TIMEOUT_SELECT_TX_EVENT_FIFO (1U)
428 #define MCAN_TIMEOUT_SELECT_RX_FIFO0 (2U)
430 #define MCAN_TIMEOUT_SELECT_RX_FIFO1 (3U)
444 #define MCAN_INTR_SRC_RX_FIFO0_NEW_MSG (MCAN_IR_RF0N_MASK)
446 #define MCAN_INTR_SRC_RX_FIFO0_WATERMARK (MCAN_IR_RF0W_MASK)
448 #define MCAN_INTR_SRC_RX_FIFO0_FULL (MCAN_IR_RF0F_MASK)
450 #define MCAN_INTR_SRC_RX_FIFO0_MSG_LOST (MCAN_IR_RF0L_MASK)
452 #define MCAN_INTR_SRC_RX_FIFO1_NEW_MSG (MCAN_IR_RF1N_MASK)
454 #define MCAN_INTR_SRC_RX_FIFO1_WATERMARK (MCAN_IR_RF1W_MASK)
456 #define MCAN_INTR_SRC_RX_FIFO1_FULL (MCAN_IR_RF1F_MASK)
458 #define MCAN_INTR_SRC_RX_FIFO1_MSG_LOST (MCAN_IR_RF1L_MASK)
460 #define MCAN_INTR_SRC_HIGH_PRIO_MSG (MCAN_IR_HPM_MASK)
462 #define MCAN_INTR_SRC_TRANS_COMPLETE (MCAN_IR_TC_MASK)
464 #define MCAN_INTR_SRC_TRANS_CANCEL_FINISH (MCAN_IR_TCF_MASK)
466 #define MCAN_INTR_SRC_TX_FIFO_EMPTY (MCAN_IR_TFE_MASK)
468 #define MCAN_INTR_SRC_TX_EVT_FIFO_NEW_ENTRY (MCAN_IR_TEFN_MASK)
470 #define MCAN_INTR_SRC_TX_EVT_FIFO_WATERMARK (MCAN_IR_TEFW_MASK)
472 #define MCAN_INTR_SRC_TX_EVT_FIFO_FULL (MCAN_IR_TEFF_MASK)
474 #define MCAN_INTR_SRC_TX_EVT_FIFO_ELEM_LOST (MCAN_IR_TEFL_MASK)
476 #define MCAN_INTR_SRC_TIMESTAMP_WRAPAROUND (MCAN_IR_TSW_MASK)
478 #define MCAN_INTR_SRC_MSG_RAM_ACCESS_FAILURE (MCAN_IR_MRAF_MASK)
480 #define MCAN_INTR_SRC_TIMEOUT (MCAN_IR_TOO_MASK)
482 #define MCAN_INTR_SRC_DEDICATED_RX_BUFF_MSG (MCAN_IR_DRX_MASK)
484 #define MCAN_INTR_SRC_BIT_ERR_CORRECTED (MCAN_IR_BEC_MASK)
486 #define MCAN_INTR_SRC_BIT_ERR_UNCORRECTED (MCAN_IR_BEU_MASK)
488 #define MCAN_INTR_SRC_ERR_LOG_OVRFLW (MCAN_IR_ELO_MASK)
490 #define MCAN_INTR_SRC_ERR_PASSIVE (MCAN_IR_EP_MASK)
492 #define MCAN_INTR_SRC_WARNING_STATUS (MCAN_IR_EW_MASK)
494 #define MCAN_INTR_SRC_BUS_OFF_STATUS (MCAN_IR_BO_MASK)
496 #define MCAN_INTR_SRC_WATCHDOG (MCAN_IR_WDI_MASK)
498 #define MCAN_INTR_SRC_PROTOCOL_ERR_ARB (MCAN_IR_PEA_MASK)
500 #define MCAN_INTR_SRC_PROTOCOL_ERR_DATA (MCAN_IR_PED_MASK)
502 #define MCAN_INTR_SRC_RES_ADDR_ACCESS (MCAN_IR_ARA_MASK)
516 #define MCAN_ECC_ERR_TYPE_SEC (0U)
518 #define MCAN_ECC_ERR_TYPE_DED (1U)
532 #define MCAN_LPBK_MODE_INTERNAL (0U)
537 #define MCAN_LPBK_MODE_EXTERNAL (1U)
555 #define MCAN_COM_STATE_SYNCHRONIZING (0U)
557 #define MCAN_COM_STATE_IDLE (1U)
559 #define MCAN_COM_STATE_RECEIVER (2U)
561 #define MCAN_COM_STATE_TRANSMITTER (3U)
575 #define MCAN_ERR_CODE_NO_ERROR (0U)
579 #define MCAN_ERR_CODE_STUFF_ERROR (1U)
583 #define MCAN_ERR_CODE_FORM_ERROR (2U)
585 #define MCAN_ERR_CODE_ACK_ERROR (3U)
589 #define MCAN_ERR_CODE_BIT1_ERROR (4U)
595 #define MCAN_ERR_CODE_BIT0_ERROR (5U)
605 #define MCAN_ERR_CODE_CRC_ERROR (6U)
610 #define MCAN_ERR_CODE_NO_CHANGE (7U)
2224 uint32_t prescalar);
2489 *msgRAMConfigParams);
2500 *msgRAMConfigParams);
uint8_t * data
Definition: mcan/v0/mcan.h:1486
uint32_t bu
Definition: mcan/v0/mcan.h:1186
uint32_t secErr
Definition: mcan/v0/mcan.h:1155
uint32_t rfdf
Definition: mcan/v0/mcan.h:895
uint32_t tdcv
Definition: mcan/v0/mcan.h:906
uint32_t getIdx
Definition: mcan/v0/mcan.h:1068
uint32_t scheme
Definition: mcan/v0/mcan.h:1260
void MCAN_getBitTime(uint32_t baseAddr, MCAN_BitTimingParams *configParams)
This API will get the configured bit timings for MCAN module.
void MCAN_readMsgRamNoCpy(uint32_t baseAddr, uint32_t memType, uint32_t bufNum, uint32_t fifoNum, MCAN_RxBufElementNoCpy *elem)
This API is used to read received message from message RAM. This uses the MCAN_RxBufElementNoCpy stru...
Structure for MCAN Global Filter Configuration parameters.
Definition: mcan/v0/mcan.h:683
uint32_t fdf
Definition: mcan/v0/mcan.h:1417
uint32_t emulationFAck
Definition: mcan/v0/mcan.h:761
uint32_t rbrs
Definition: mcan/v0/mcan.h:890
void MCAN_eccGetErrorStatus(uint32_t baseAddr, MCAN_ECCErrStatus *eccErr)
This API will return ECC Error status.
uint32_t freeLvl
Definition: mcan/v0/mcan.h:1086
uint32_t putIdx
Definition: mcan/v0/mcan.h:1110
uint32_t lse
Definition: mcan/v0/mcan.h:927
uint32_t esi
Definition: mcan/v0/mcan.h:1348
Structure for MCAN ECC configuration parameters.
Definition: mcan/v0/mcan.h:1237
uint32_t sfec
Definition: mcan/v0/mcan.h:1553
uint32_t errType
Definition: mcan/v0/mcan.h:1130
Structure for MCAN Rx Buffer element.
Definition: mcan/v0/mcan.h:1386
uint32_t efbi
Definition: mcan/v0/mcan.h:729
uint32_t mm
Definition: mcan/v0/mcan.h:1540
uint32_t act
Definition: mcan/v0/mcan.h:861
uint32_t MCAN_IntrLineNum
Enum to select the MCAN interrupt lines.
Definition: mcan/v0/mcan.h:298
uint32_t xtd
Definition: mcan/v0/mcan.h:1394
Structure for MCAN Tx Event FIFO element.
Definition: mcan/v0/mcan.h:1496
void MCAN_extTSClearRawStatus(uint32_t baseAddr)
This API will clear External TimeStamp Counter Overflow Interrupt raw status for MCAN module.
uint32_t timeoutPreload
Definition: mcan/v0/mcan.h:817
uint32_t anmf
Definition: mcan/v0/mcan.h:1424
uint32_t minor
Definition: mcan/v0/mcan.h:1229
void MCAN_eccAggrGetRevisionId(uint32_t baseAddr, MCAN_ECCAggrRevisionId *revId)
This API is used get the ECC AGGR revision ID.
uint32_t txStartAddr
Definition: mcan/v0/mcan.h:1006
uint32_t xtd
Definition: mcan/v0/mcan.h:1343
uint32_t pxe
Definition: mcan/v0/mcan.h:901
void MCAN_enableIntr(uint32_t baseAddr, uint32_t intrMask, uint32_t enable)
This API is used to enable/disable interrupts.
uint32_t esi
Definition: mcan/v0/mcan.h:1509
uint32_t xtd
Definition: mcan/v0/mcan.h:1288
uint32_t esi
Definition: mcan/v0/mcan.h:1456
void MCAN_setOpMode(uint32_t baseAddr, uint32_t mode)
This API will set MCAN module mode of operation.
MCAN_TDCConfig tdcConfig
Definition: mcan/v0/mcan.h:775
uint32_t fifoFull
Definition: mcan/v0/mcan.h:1072
void MCAN_eccClearIntrStatus(uint32_t baseAddr, uint32_t errType)
This API is used to clear ECC interrupt status.
uint32_t et
Definition: mcan/v0/mcan.h:1532
uint32_t msgLost
Definition: mcan/v0/mcan.h:1077
Structure for MCAN configuration parameters.
Definition: mcan/v0/mcan.h:790
uint32_t MCAN_PinType
Enum to represent the MCAN pin type.
Definition: mcan/v0/mcan.h:378
void MCAN_getTxEventFIFOStatus(uint32_t baseAddr, MCAN_TxEventFIFOStatus *fifoStatus)
This API will Tx Event FIFO status.
Structure for MCAN Tx Buffer element.
Definition: mcan/v0/mcan.h:1280
void MCAN_getRevisionId(uint32_t baseAddr, MCAN_RevisionId *revId)
This API is used get the MCAN revision ID.
uint32_t rxFIFO0StartAddr
Definition: mcan/v0/mcan.h:1012
uint32_t xtd
Definition: mcan/v0/mcan.h:1504
uint32_t MCAN_isFDOpEnable(uint32_t baseAddr)
This API will return flexible data rate operation status MCAN module.
uint32_t dlec
Definition: mcan/v0/mcan.h:881
uint32_t rxFIFO0ElemSize
Definition: mcan/v0/mcan.h:980
uint32_t MCAN_getRxPinState(uint32_t baseAddr)
This API will return Rx pin state of MCAN module.
uint32_t rxFIFO1OpMode
Definition: mcan/v0/mcan.h:973
uint32_t wdcPreload
Definition: mcan/v0/mcan.h:771
uint32_t efid1
Definition: mcan/v0/mcan.h:1581
uint32_t rxBufStartAddr
Definition: mcan/v0/mcan.h:1016
uint32_t dlc
Definition: mcan/v0/mcan.h:1353
uint32_t efid2
Definition: mcan/v0/mcan.h:1597
uint32_t txBufElemSize
Definition: mcan/v0/mcan.h:1008
uint32_t MCAN_txBufCancellationStatus(uint32_t baseAddr)
This API will return Transmit Buffer Cancellation Finished status.
uint8_t state
Definition: tisci_pm_clock.h:3
uint32_t busOffStatus
Definition: mcan/v0/mcan.h:876
Structure for ECC Error forcing.
Definition: mcan/v0/mcan.h:1129
uint32_t txEventFIFOStartAddr
Definition: mcan/v0/mcan.h:1010
uint32_t MCAN_getOpMode(uint32_t baseAddr)
This API will return MCAN module mode of operation.
void MCAN_eccConfig(uint32_t baseAddr, const MCAN_ECCConfigParams *configParams)
This API will enable/disable ECC on the Message RAM.
uint32_t MCAN_ECCErrType
Enum to represent the ECC Error Types.
Definition: mcan/v0/mcan.h:514
void MCAN_enableIntrLine(uint32_t baseAddr, uint32_t lineNum, uint32_t enable)
This API is used to enable/disable selected interrupt line.
uint32_t rxFIFO0WaterMark
Definition: mcan/v0/mcan.h:990
uint32_t rxBufElemSize
Definition: mcan/v0/mcan.h:978
uint32_t MCAN_LpbkMode
Enum to select the MCAN Loopback mode.
Definition: mcan/v0/mcan.h:530
uint32_t txEventFIFOWaterMark
Definition: mcan/v0/mcan.h:984
uint32_t MCAN_IntrSrc
Enum for MCAN interrupts.
Definition: mcan/v0/mcan.h:442
uint32_t fifoFull
Definition: mcan/v0/mcan.h:1112
void MCAN_selectIntrLine(uint32_t baseAddr, uint32_t intrMask, uint32_t lineNum)
This API is used to select interrupt line.
void MCAN_initMsgRamConfigParams(MCAN_MsgRAMConfigParams *msgRAMConfigParams)
This API will initialize MCAN message config RAM params to default.
uint32_t data
Definition: tisci_rm_psil.h:1
uint32_t dlc
Definition: mcan/v0/mcan.h:1463
uint32_t efec
Definition: mcan/v0/mcan.h:1583
uint32_t MCAN_RxFIFONum
Enum to represent the MCAN Rx FIFO number.
Definition: mcan/v0/mcan.h:362
uint32_t rpStatus
Definition: mcan/v0/mcan.h:843
uint32_t fillLvl
Definition: mcan/v0/mcan.h:1106
uint32_t putIdx
Definition: mcan/v0/mcan.h:1070
uint32_t flssa
Definition: mcan/v0/mcan.h:1002
uint32_t dedErr
Definition: mcan/v0/mcan.h:1160
uint32_t nomRatePrescalar
Definition: mcan/v0/mcan.h:630
uint8_t * data
Definition: mcan/v0/mcan.h:1376
uint32_t major
Definition: mcan/v0/mcan.h:1268
uint32_t enable
Definition: mcan/v0/mcan.h:1238
int32_t MCAN_calcMsgRamParamsStartAddr(MCAN_MsgRAMConfigParams *msgRAMConfigParams)
This API will calculate start addresses of message RAM params.
void MCAN_getErrCounters(uint32_t baseAddr, MCAN_ErrCntStatus *errCounter)
This API will return error counter status for MCAN module.
uint32_t fidx
Definition: mcan/v0/mcan.h:1479
uint32_t fdMode
Definition: mcan/v0/mcan.h:713
void MCAN_initSetBitTimeParams(MCAN_BitTimingParams *bitTimes)
This API will initialize MCAN GBit Timing params with default 1Mbps and 5Mbps as nominal and data bit...
uint32_t pxhddisable
Definition: mcan/v0/mcan.h:735
uint32_t fifoFull
Definition: mcan/v0/mcan.h:1094
uint32_t enableRdModWr
Definition: mcan/v0/mcan.h:1248
uint32_t rtlRev
Definition: mcan/v0/mcan.h:1190
uint32_t anfe
Definition: mcan/v0/mcan.h:694
void MCAN_reset(uint32_t baseAddr)
This API is used to initiate reset for MCAN module.
uint32_t modId
Definition: mcan/v0/mcan.h:1188
uint32_t MCAN_ComState
Enum to represent MCAN's communication state.
Definition: mcan/v0/mcan.h:553
uint32_t brsEnable
Definition: mcan/v0/mcan.h:718
uint32_t MCAN_TimeOutSelect
Enum to represent the MCAN time-out counter configuration.
Definition: mcan/v0/mcan.h:422
uint32_t MCAN_getExtIDANDMassk(uint32_t baseAddr)
This API will get the configured Extended ID AND Mask.
uint32_t rtr
Definition: mcan/v0/mcan.h:1389
uint32_t MCAN_isInReset(uint32_t baseAddr)
This function checks if the MCAN module is in Reset.
uint32_t rxFIFO1WaterMark
Definition: mcan/v0/mcan.h:996
uint32_t anfs
Definition: mcan/v0/mcan.h:700
void MCAN_getRxFIFOStatus(uint32_t baseAddr, MCAN_RxFIFOStatus *fifoStatus)
This API will Rx FIFO status.
uint32_t MCAN_extTSIsIntrEnable(uint32_t baseAddr)
This API returns External TimeStamp Counter Overflow Interrupt enable status for MCAN module.
uint32_t fdf
Definition: mcan/v0/mcan.h:1527
uint32_t resi
Definition: mcan/v0/mcan.h:885
int32_t MCAN_txBufCancellationIntrEnable(uint32_t baseAddr, uint32_t bufNum, uint32_t enable)
This API is used to enable/disable Tx Buffer Cancellation Finished Interrupt.
uint32_t dlc
Definition: mcan/v0/mcan.h:1406
uint32_t monEnable
Definition: mcan/v0/mcan.h:791
uint32_t MCAN_getEndianVal(uint32_t baseAddr)
This function return endianness value of MCAN module.
uint32_t major
Definition: mcan/v0/mcan.h:1225
uint32_t MCAN_getTxBufReqPend(uint32_t baseAddr)
This API will return Tx Buffer Request Pending status.
uint32_t filterIdx
Definition: mcan/v0/mcan.h:1037
void MCAN_eccForceError(uint32_t baseAddr, const MCAN_ECCErrForceParams *eccErr)
This API will Force Error on ECC.
uint32_t nomTimeSeg2
Definition: mcan/v0/mcan.h:638
void MCAN_eccWrapGetRevisionId(uint32_t baseAddr, MCAN_ECCWrapRevisionId *revId)
This API is used get the ECC Wrapper revision ID.
void MCAN_clearNewDataStatus(uint32_t baseAddr, const MCAN_RxNewDataStatus *newDataStatus)
This API clear New Data Message Status.
Structure for MCAN protocol status.
Definition: mcan/v0/mcan.h:856
int32_t MCAN_setBitTime(uint32_t baseAddr, const MCAN_BitTimingParams *configParams)
This API will configure a bit timings for MCAN module.
Structure for bit timing calculation. Bit timing related to data phase will be valid only in case whe...
Definition: mcan/v0/mcan.h:629
void MCAN_resetTSCounter(uint32_t baseAddr)
This API will reset timestamp counter value.
uint32_t xtd
Definition: mcan/v0/mcan.h:1451
uint32_t brs
Definition: mcan/v0/mcan.h:1522
uint32_t errPassive
Definition: mcan/v0/mcan.h:865
uint32_t esi
Definition: mcan/v0/mcan.h:1293
uint32_t warningStatus
Definition: mcan/v0/mcan.h:870
uint32_t fidx
Definition: mcan/v0/mcan.h:1422
uint32_t txpEnable
Definition: mcan/v0/mcan.h:724
uint32_t MCAN_getClkStopAck(uint32_t baseAddr)
This API will return clock stop acknowledgement for MCAN module.
uint32_t putIdx
Definition: mcan/v0/mcan.h:1092
uint32_t dataTimeSeg1
Definition: mcan/v0/mcan.h:650
uint32_t MCAN_getTOCounterVal(uint32_t baseAddr)
This API will return current time-out counter value.
void MCAN_clearIntrStatus(uint32_t baseAddr, uint32_t intrMask)
This API is used to clear the interrupt status.
void MCAN_initOperModeParams(MCAN_InitParams *initParams)
This API will initialize MCAN Operating mode params with default values.
uint32_t rxts
Definition: mcan/v0/mcan.h:1461
uint32_t autoWkupEnable
Definition: mcan/v0/mcan.h:751
uint32_t tsSelect
Definition: mcan/v0/mcan.h:806
uint32_t efc
Definition: mcan/v0/mcan.h:1369
uint32_t MCAN_ElemSize
Enum to represent FIFO/Buffer element Size.
Definition: mcan/v0/mcan.h:394
uint32_t transErrLogCnt
Definition: mcan/v0/mcan.h:839
void MCAN_writeMsgRam(uint32_t baseAddr, uint32_t memType, uint32_t bufNum, const MCAN_TxBufElement *elem)
This API is used to write Tx message to message RAM.
uint32_t rtr
Definition: mcan/v0/mcan.h:1338
uint32_t MCAN_extTSGetUnservicedIntrCount(uint32_t baseAddr)
This API returns Number of unserviced rollover/overflow interrupts for external TimeStamp counter.
uint32_t filterList
Definition: mcan/v0/mcan.h:1039
void MCAN_getHighPriorityMsgStatus(uint32_t baseAddr, MCAN_HighPriorityMsgInfo *hpm)
This API will return High Priority Message Status.
uint32_t id
Definition: mcan/v0/mcan.h:1444
uint32_t eleLost
Definition: mcan/v0/mcan.h:1117
Structure for accessing Revision ID of ECC AGGR.
Definition: mcan/v0/mcan.h:1216
Structure for MCAN Standard Message ID Filter Element.
Definition: mcan/v0/mcan.h:1548
uint32_t mon
Definition: mcan/v0/mcan.h:1200
Structure for MCAN Rx FIFO Status.
Definition: mcan/v0/mcan.h:1061
Structure for MCAN Rx Buffer element which takes data as a pointer. Using this the MCAL CAN driver ca...
Definition: mcan/v0/mcan.h:1443
uint32_t modId
Definition: mcan/v0/mcan.h:1264
uint32_t tdcf
Definition: mcan/v0/mcan.h:669
uint32_t custom
Definition: mcan/v0/mcan.h:1270
uint32_t rxFIFO1StartAddr
Definition: mcan/v0/mcan.h:1014
uint32_t num
Definition: mcan/v0/mcan.h:1062
Structure for MCAN High Priority Message.
Definition: mcan/v0/mcan.h:1024
void MCAN_extTSSetRawStatus(uint32_t baseAddr)
This API will set External TimeStamp Counter Overflow Interrupt Raw status for MCAN module.
uint32_t tsPrescalar
Definition: mcan/v0/mcan.h:802
int32_t MCAN_msgRAMConfig(uint32_t baseAddr, const MCAN_MsgRAMConfigParams *msgRAMConfigParams)
This API will configure Different sections of Message RAM.
uint32_t MCAN_OperationMode
Enum to represent the MCAN mode of operation.
Definition: mcan/v0/mcan.h:330
MCAN_GlobalFiltConfig filterConfig
Definition: mcan/v0/mcan.h:828
uint32_t statusHigh
Definition: mcan/v0/mcan.h:1053
uint32_t getIdx
Definition: mcan/v0/mcan.h:1108
uint32_t lastErrCode
Definition: mcan/v0/mcan.h:857
uint32_t msi
Definition: mcan/v0/mcan.h:1029
uint32_t MCAN_MemType
Enum to represent the MCAN Message RAM type.
Definition: mcan/v0/mcan.h:346
uint32_t MCAN_IdType
Enum to represent the MCAN Identifier Type.
Definition: mcan/v0/mcan.h:314
uint32_t brs
Definition: mcan/v0/mcan.h:1469
uint32_t tdcEnable
Definition: mcan/v0/mcan.h:779
void MCAN_getNewDataStatus(uint32_t baseAddr, MCAN_RxNewDataStatus *newDataStatus)
This API will return New Data Message Status.
void MCAN_eccEnableIntr(uint32_t baseAddr, uint32_t errType, uint32_t enable)
This API is used to enable ECC interrupt.
uint32_t bit1
Definition: mcan/v0/mcan.h:1169
Structure for MCAN Message RAM Configuration Parameters. Message RAM can contain following sections: ...
Definition: mcan/v0/mcan.h:920
void MCAN_eccClearErrorStatus(uint32_t baseAddr, uint32_t errType)
This API is used to clear the ECC Error status.
Structure for accessing Revision ID and Core Release Info. of MCAN module.
Definition: mcan/v0/mcan.h:1183
void MCAN_extTSWriteEOI(uint32_t baseAddr)
This API is used to write End of Interrupt for External TimeStamp Counter Overflow Interrupt.
void MCAN_readMsgRam(uint32_t baseAddr, uint32_t memType, uint32_t bufNum, uint32_t fifoNum, MCAN_RxBufElement *elem)
This API is used to read received message form message RAM.
uint32_t rxFIFO0OpMode
Definition: mcan/v0/mcan.h:962
uint32_t wkupReqEnable
Definition: mcan/v0/mcan.h:746
uint32_t id
Definition: mcan/v0/mcan.h:1497
uint32_t year
Definition: mcan/v0/mcan.h:1202
void MCAN_addExtMsgIDFilter(uint32_t baseAddr, uint32_t filtNum, const MCAN_ExtMsgIDFilterElement *elem)
This API is used to add Extended Message ID Filter Element.
uint32_t rel
Definition: mcan/v0/mcan.h:1208
uint32_t brs
Definition: mcan/v0/mcan.h:1412
uint32_t rrfs
Definition: mcan/v0/mcan.h:689
void MCAN_getProtocolStatus(uint32_t baseAddr, MCAN_ProtocolStatus *protStatus)
This API will return protocol status for MCAN module.
uint32_t dataTimeSeg2
Definition: mcan/v0/mcan.h:654
uint32_t subStep
Definition: mcan/v0/mcan.h:1204
Structure for ECC Error Status.
Definition: mcan/v0/mcan.h:1154
uint32_t row
Definition: mcan/v0/mcan.h:1165
uint32_t custom
Definition: mcan/v0/mcan.h:1227
Structure for MCAN Tx FIFO Status.
Definition: mcan/v0/mcan.h:1085
uint32_t anmf
Definition: mcan/v0/mcan.h:1481
char mode[32]
Definition: tisci_pm_core.h:1
#define MCAN_MAX_PAYLOAD_BYTES
Maximum payload supported by CAN-FD protocol in bytes.
Definition: mcan/v0/mcan.h:111
uint32_t errOnce
Definition: mcan/v0/mcan.h:1142
uint32_t custom
Definition: mcan/v0/mcan.h:1194
void MCAN_eccWriteEOI(uint32_t baseAddr, uint32_t errType)
This API is used to write End of Interrupt for ECC interrupt.
void MCAN_extTSEnableIntr(uint32_t baseAddr, uint32_t enable)
This API will enable/disable External TimeStamp Counter Overflow Interrupt for MCAN module.
uint32_t brs
Definition: mcan/v0/mcan.h:1359
uint32_t dlc
Definition: mcan/v0/mcan.h:1516
uint32_t MCAN_getTSCounterVal(uint32_t baseAddr)
This API will return current timestamp counter value.
uint32_t scheme
Definition: mcan/v0/mcan.h:1217
uint32_t darEnable
Definition: mcan/v0/mcan.h:740
uint32_t rowNum
Definition: mcan/v0/mcan.h:1134
uint32_t rtlRev
Definition: mcan/v0/mcan.h:1223
uint32_t rtlRev
Definition: mcan/v0/mcan.h:1266
int32_t MCAN_writeRxFIFOAck(uint32_t baseAddr, uint32_t fifoNum, uint32_t idx)
This API will write Rx FIFO Acknowledgement.
uint32_t txFIFOCnt
Definition: mcan/v0/mcan.h:939
int32_t MCAN_init(uint32_t baseAddr, const MCAN_InitParams *initParams)
This API will initialize MCAN module.
uint32_t txEventFIFOCnt
Definition: mcan/v0/mcan.h:950
uint32_t scheme
Definition: mcan/v0/mcan.h:1184
Structure for MCAN Extended Message ID Filter Element.
Definition: mcan/v0/mcan.h:1580
uint32_t recErrCnt
Definition: mcan/v0/mcan.h:841
uint32_t sft
Definition: mcan/v0/mcan.h:1567
Structure for MCAN initialization parameters.
Definition: mcan/v0/mcan.h:712
void MCAN_addStdMsgIDFilter(uint32_t baseAddr, uint32_t filtNum, const MCAN_StdMsgIDFilterElement *elem)
This API is used to add Standard Message ID Filter Element.
int32_t MCAN_txBufCancellationReq(uint32_t baseAddr, uint32_t buffNum)
This API will set Tx Buffer Cancellation Request.
void MCAN_writeMsgRamNoCpy(uint32_t baseAddr, uint32_t memType, uint32_t bufNum, const MCAN_TxBufElementNoCpy *elem)
This API is used to write Tx message to message RAM. This uses the MCAN_TxBufElementNoCpy structure e...
int32_t MCAN_writeDmaHeader(const void *data, const MCAN_TxBufElement *elem)
This API is used to write only the message header to MCAN TX data buffer and is required in DMA mode.
uint32_t rtr
Definition: mcan/v0/mcan.h:1446
uint32_t esi
Definition: mcan/v0/mcan.h:1399
uint32_t flesa
Definition: mcan/v0/mcan.h:1004
int32_t MCAN_config(uint32_t baseAddr, const MCAN_ConfigParams *configParams)
This API will configure MCAN module.
Structure for MCAN Tx Buffer element which takes data as a pointer. Using this the MCAL CAN driver ca...
Definition: mcan/v0/mcan.h:1335
uint32_t fdf
Definition: mcan/v0/mcan.h:1364
uint32_t canErrLogCnt
Definition: mcan/v0/mcan.h:848
uint32_t tdco
Definition: mcan/v0/mcan.h:673
uint32_t errForce
Definition: mcan/v0/mcan.h:1146
Structure for MCAN error logging counters status.
Definition: mcan/v0/mcan.h:838
uint32_t brs
Definition: mcan/v0/mcan.h:1304
uint32_t bit1
Definition: mcan/v0/mcan.h:1136
uint32_t id
Definition: mcan/v0/mcan.h:1281
uint32_t mm
Definition: mcan/v0/mcan.h:1374
void MCAN_setTxPinState(uint32_t baseAddr, uint32_t state)
This API will set Tx pin state of MCAN module.
Structure for accessing Revision ID of ECC wrapper.
Definition: mcan/v0/mcan.h:1259
Structure for MCAN new data flag for Rx buffer.
Definition: mcan/v0/mcan.h:1050
void MCAN_lpbkModeEnable(uint32_t baseAddr, uint32_t lpbkMode, uint32_t enable)
This API will enable/disable Loop Back Test Mode for MCAN module.
uint32_t dataSynchJumpWidth
Definition: mcan/v0/mcan.h:658
uint32_t MCAN_ErrCode
Enum to represent MCAN's Error Code.
Definition: mcan/v0/mcan.h:573
uint32_t MCAN_getIntrLineSelectStatus(uint32_t baseAddr)
This API is used to get interrupt line selected for each interrupt.
uint32_t bu
Definition: mcan/v0/mcan.h:1219
uint32_t timeoutCntEnable
Definition: mcan/v0/mcan.h:823
uint32_t day
Definition: mcan/v0/mcan.h:1198
uint32_t id
Definition: mcan/v0/mcan.h:1336
uint32_t fillLvl
Definition: mcan/v0/mcan.h:1066
int32_t MCAN_writeTxEventFIFOAck(uint32_t baseAddr, uint32_t idx)
This API will write Event FIFO Acknowledge Index.
uint32_t modId
Definition: mcan/v0/mcan.h:1221
Structure for MCAN Transmitter Delay Compensation parameters.
Definition: mcan/v0/mcan.h:668
uint32_t mm
Definition: mcan/v0/mcan.h:1319
uint32_t txts
Definition: mcan/v0/mcan.h:1514
uint32_t MCAN_getIntrStatus(uint32_t baseAddr)
This API will return interrupt status.
uint32_t eft
Definition: mcan/v0/mcan.h:1599
uint32_t MCAN_getTxBufTransmissionStatus(uint32_t baseAddr)
This API will return Tx Buffer Transmission Occurred status.
uint32_t getIdx
Definition: mcan/v0/mcan.h:1088
uint32_t enableChk
Definition: mcan/v0/mcan.h:1243
uint32_t bit2
Definition: mcan/v0/mcan.h:1172
uint32_t sfid2
Definition: mcan/v0/mcan.h:1549
void MCAN_initGlobalFilterConfigParams(MCAN_ConfigParams *configParams)
This API will initialize MCAN Global Filter config params with default values.
uint32_t txBufCnt
Definition: mcan/v0/mcan.h:933
uint32_t major
Definition: mcan/v0/mcan.h:1192
uint32_t MCAN_eccGetIntrStatus(uint32_t baseAddr, uint32_t errType)
This API is used to get ECC interrupt status.
Structure for MCAN Tx Event FIFO Status.
Definition: mcan/v0/mcan.h:1105
uint32_t fdf
Definition: mcan/v0/mcan.h:1474
uint32_t asmEnable
Definition: mcan/v0/mcan.h:796
uint32_t rtr
Definition: mcan/v0/mcan.h:1499
uint32_t id
Definition: mcan/v0/mcan.h:1387
uint32_t efc
Definition: mcan/v0/mcan.h:1314
uint32_t bu
Definition: mcan/v0/mcan.h:1262
int32_t MCAN_setExtIDAndMask(uint32_t baseAddr, uint32_t idMask)
This API will configure Extended ID AND Mask.
uint32_t rxts
Definition: mcan/v0/mcan.h:1404
void MCAN_getTxFIFOQueStatus(uint32_t baseAddr, MCAN_TxFIFOStatus *fifoStatus)
This API will Tx FIFO status.
void MCAN_extTSCounterEnable(uint32_t baseAddr, uint32_t enable)
This API will enable/disable fast external time stamp counter for MCAN module.
uint32_t rxFIFO1ElemSize
Definition: mcan/v0/mcan.h:982
uint32_t lss
Definition: mcan/v0/mcan.h:921
uint32_t nomSynchJumpWidth
Definition: mcan/v0/mcan.h:642
uint32_t statusLow
Definition: mcan/v0/mcan.h:1051
uint32_t MCAN_getClockStopAck(uint32_t baseAddr)
This API get clock stop acknowledgement for MCAN module. It return whether MCAN is power down mode or...
uint32_t minor
Definition: mcan/v0/mcan.h:1196
void MCAN_readTxEventFIFO(uint32_t baseAddr, MCAN_TxEventFIFOElement *txEventElem)
This API is used to read message form Tx Event FIFO.
int32_t MCAN_txBufAddReq(uint32_t baseAddr, uint32_t bufNum)
This API will set Tx Buffer Add Request.
uint32_t bufIdx
Definition: mcan/v0/mcan.h:1025
uint32_t MCAN_isMemInitDone(uint32_t baseAddr)
This function checks if the memory initialization is done for MCAN module.
uint32_t minor
Definition: mcan/v0/mcan.h:1272
uint32_t step
Definition: mcan/v0/mcan.h:1206
uint32_t fdf
Definition: mcan/v0/mcan.h:1309
uint32_t MCAN_getTxPinState(uint32_t baseAddr)
This API will return Tx pin state of MCAN module.
int32_t MCAN_txBufTransIntrEnable(uint32_t baseAddr, uint32_t bufNum, uint32_t enable)
This API is used to enable/disable Tx Buffer Transmission Interrupt.
void MCAN_extTSCounterConfig(uint32_t baseAddr, uint32_t prescalar)
This API will configure external timestamp counter for MCAN module.
uint32_t timeoutSelect
Definition: mcan/v0/mcan.h:813
uint32_t dataRatePrescalar
Definition: mcan/v0/mcan.h:646
uint32_t dlc
Definition: mcan/v0/mcan.h:1298
uint32_t rrfe
Definition: mcan/v0/mcan.h:684
uint32_t rxFIFO1Cnt
Definition: mcan/v0/mcan.h:967
uint32_t rtr
Definition: mcan/v0/mcan.h:1283
uint32_t nomTimeSeg1
Definition: mcan/v0/mcan.h:634
uint32_t clkStopFAck
Definition: mcan/v0/mcan.h:766
uint32_t sfid1
Definition: mcan/v0/mcan.h:1551
void MCAN_initTxBufElement(MCAN_TxBufElement *txMsg)
This API will initialize TX message object with default values.
uint32_t emulationEnable
Definition: mcan/v0/mcan.h:756
uint32_t rxFIFO0Cnt
Definition: mcan/v0/mcan.h:956
uint32_t bit2
Definition: mcan/v0/mcan.h:1140
uint32_t txBufMode
Definition: mcan/v0/mcan.h:945
void MCAN_addClockStopRequest(uint32_t baseAddr, uint32_t enable)
This API add clock stop request for MCAN module to put it in power down mode.