AM263Px MCU+ SDK  10.01.00

Introduction

This file contains the prototypes of the APIs present in the device abstraction layer file of MCAN. This also contains some related macros.

Go to the source code of this file.

MCAN Interrupt Line no

#define MCAN_INTR_LINE_NUM_0   (0U)
 
#define MCAN_INTR_LINE_NUM_1   (1U)
 
typedef uint32_t MCAN_IntrLineNum
 Enum to select the MCAN interrupt lines. More...
 

MCAN Id Type

#define MCAN_ID_TYPE_11_BIT   (0U)
 
#define MCAN_ID_TYPE_29_BIT   (1U)
 
typedef uint32_t MCAN_IdType
 Enum to represent the MCAN Identifier Type. More...
 

MCAN Operation Mode

#define MCAN_OPERATION_MODE_NORMAL   (0U)
 
#define MCAN_OPERATION_MODE_SW_INIT   (1U)
 
typedef uint32_t MCAN_OperationMode
 Enum to represent the MCAN mode of operation. More...
 

MCAN Mem type

#define MCAN_MEM_TYPE_BUF   (0U)
 
#define MCAN_MEM_TYPE_FIFO   (1U)
 
typedef uint32_t MCAN_MemType
 Enum to represent the MCAN Message RAM type. More...
 

MCAN Rx FIFO Number

#define MCAN_RX_FIFO_NUM_0   (0U)
 
#define MCAN_RX_FIFO_NUM_1   (1U)
 
typedef uint32_t MCAN_RxFIFONum
 Enum to represent the MCAN Rx FIFO number. More...
 

MCAN Pin Type

#define MCAN_PIN_TYPE_RX   (0U)
 
#define MCAN_PIN_TYPE_TX   (1U)
 
typedef uint32_t MCAN_PinType
 Enum to represent the MCAN pin type. More...
 

MCAN Element Size

#define MCAN_ELEM_SIZE_8BYTES   (0U)
 
#define MCAN_ELEM_SIZE_12BYTES   (1U)
 
#define MCAN_ELEM_SIZE_16BYTES   (2U)
 
#define MCAN_ELEM_SIZE_20BYTES   (3U)
 
#define MCAN_ELEM_SIZE_24BYTES   (4U)
 
#define MCAN_ELEM_SIZE_32BYTES   (5U)
 
#define MCAN_ELEM_SIZE_48BYTES   (6U)
 
#define MCAN_ELEM_SIZE_64BYTES   (7U)
 
typedef uint32_t MCAN_ElemSize
 Enum to represent FIFO/Buffer element Size. More...
 

MCAN Timeout select

#define MCAN_TIMEOUT_SELECT_CONT   (0U)
 
#define MCAN_TIMEOUT_SELECT_TX_EVENT_FIFO   (1U)
 
#define MCAN_TIMEOUT_SELECT_RX_FIFO0   (2U)
 
#define MCAN_TIMEOUT_SELECT_RX_FIFO1   (3U)
 
typedef uint32_t MCAN_TimeOutSelect
 Enum to represent the MCAN time-out counter configuration. More...
 

MCAN Interrupt Source

#define MCAN_INTR_SRC_RX_FIFO0_NEW_MSG   (MCAN_IR_RF0N_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO0_WATERMARK   (MCAN_IR_RF0W_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO0_FULL   (MCAN_IR_RF0F_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO0_MSG_LOST   (MCAN_IR_RF0L_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO1_NEW_MSG   (MCAN_IR_RF1N_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO1_WATERMARK   (MCAN_IR_RF1W_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO1_FULL   (MCAN_IR_RF1F_MASK)
 
#define MCAN_INTR_SRC_RX_FIFO1_MSG_LOST   (MCAN_IR_RF1L_MASK)
 
#define MCAN_INTR_SRC_HIGH_PRIO_MSG   (MCAN_IR_HPM_MASK)
 
#define MCAN_INTR_SRC_TRANS_COMPLETE   (MCAN_IR_TC_MASK)
 
#define MCAN_INTR_SRC_TRANS_CANCEL_FINISH   (MCAN_IR_TCF_MASK)
 
#define MCAN_INTR_SRC_TX_FIFO_EMPTY   (MCAN_IR_TFE_MASK)
 
#define MCAN_INTR_SRC_TX_EVT_FIFO_NEW_ENTRY   (MCAN_IR_TEFN_MASK)
 
#define MCAN_INTR_SRC_TX_EVT_FIFO_WATERMARK   (MCAN_IR_TEFW_MASK)
 
#define MCAN_INTR_SRC_TX_EVT_FIFO_FULL   (MCAN_IR_TEFF_MASK)
 
#define MCAN_INTR_SRC_TX_EVT_FIFO_ELEM_LOST   (MCAN_IR_TEFL_MASK)
 
#define MCAN_INTR_SRC_TIMESTAMP_WRAPAROUND   (MCAN_IR_TSW_MASK)
 
#define MCAN_INTR_SRC_MSG_RAM_ACCESS_FAILURE   (MCAN_IR_MRAF_MASK)
 
#define MCAN_INTR_SRC_TIMEOUT   (MCAN_IR_TOO_MASK)
 
#define MCAN_INTR_SRC_DEDICATED_RX_BUFF_MSG   (MCAN_IR_DRX_MASK)
 
#define MCAN_INTR_SRC_BIT_ERR_CORRECTED   (MCAN_IR_BEC_MASK)
 
#define MCAN_INTR_SRC_BIT_ERR_UNCORRECTED   (MCAN_IR_BEU_MASK)
 
#define MCAN_INTR_SRC_ERR_LOG_OVRFLW   (MCAN_IR_ELO_MASK)
 
#define MCAN_INTR_SRC_ERR_PASSIVE   (MCAN_IR_EP_MASK)
 
#define MCAN_INTR_SRC_WARNING_STATUS   (MCAN_IR_EW_MASK)
 
#define MCAN_INTR_SRC_BUS_OFF_STATUS   (MCAN_IR_BO_MASK)
 
#define MCAN_INTR_SRC_WATCHDOG   (MCAN_IR_WDI_MASK)
 
#define MCAN_INTR_SRC_PROTOCOL_ERR_ARB   (MCAN_IR_PEA_MASK)
 
#define MCAN_INTR_SRC_PROTOCOL_ERR_DATA   (MCAN_IR_PED_MASK)
 
#define MCAN_INTR_SRC_RES_ADDR_ACCESS   (MCAN_IR_ARA_MASK)
 
typedef uint32_t MCAN_IntrSrc
 Enum for MCAN interrupts. More...
 

MCAN Ecc Error Type

#define MCAN_ECC_ERR_TYPE_SEC   (0U)
 
#define MCAN_ECC_ERR_TYPE_DED   (1U)
 
typedef uint32_t MCAN_ECCErrType
 Enum to represent the ECC Error Types. More...
 

MCAN Loopback Mode

#define MCAN_LPBK_MODE_INTERNAL   (0U)
 
#define MCAN_LPBK_MODE_EXTERNAL   (1U)
 
typedef uint32_t MCAN_LpbkMode
 Enum to select the MCAN Loopback mode. More...
 

MCAN Com State

#define MCAN_COM_STATE_SYNCHRONIZING   (0U)
 
#define MCAN_COM_STATE_IDLE   (1U)
 
#define MCAN_COM_STATE_RECEIVER   (2U)
 
#define MCAN_COM_STATE_TRANSMITTER   (3U)
 
typedef uint32_t MCAN_ComState
 Enum to represent MCAN's communication state. More...
 

MCAN Error Code

#define MCAN_ERR_CODE_NO_ERROR   (0U)
 
#define MCAN_ERR_CODE_STUFF_ERROR   (1U)
 
#define MCAN_ERR_CODE_FORM_ERROR   (2U)
 
#define MCAN_ERR_CODE_ACK_ERROR   (3U)
 
#define MCAN_ERR_CODE_BIT1_ERROR   (4U)
 
#define MCAN_ERR_CODE_BIT0_ERROR   (5U)
 
#define MCAN_ERR_CODE_CRC_ERROR   (6U)
 
#define MCAN_ERR_CODE_NO_CHANGE   (7U)
 
typedef uint32_t MCAN_ErrCode
 Enum to represent MCAN's Error Code. More...
 

Data Structures

struct  MCAN_BitTimingParams
 Structure for bit timing calculation. Bit timing related to data phase will be valid only in case where MCAN is put in CAN-FD mode and will be '0' otherwise. More...
 
struct  MCAN_TDCConfig
 Structure for MCAN Transmitter Delay Compensation parameters. More...
 
struct  MCAN_GlobalFiltConfig
 Structure for MCAN Global Filter Configuration parameters. More...
 
struct  MCAN_InitParams
 Structure for MCAN initialization parameters. More...
 
struct  MCAN_ConfigParams
 Structure for MCAN configuration parameters. More...
 
struct  MCAN_ErrCntStatus
 Structure for MCAN error logging counters status. More...
 
struct  MCAN_ProtocolStatus
 Structure for MCAN protocol status. More...
 
struct  MCAN_MsgRAMConfigParams
 Structure for MCAN Message RAM Configuration Parameters. Message RAM can contain following sections: Standard ID filters, Extended ID filters, TX FIFO(or TX Q), TX Buffers, TX EventFIFO, RX FIFO0, RX FIFO1, RX Buffer. Note: If particular section in the RAM is not used then it's size should be initialized to '0' (Number of buffers in case of Tx/Rx buffer). More...
 
struct  MCAN_HighPriorityMsgInfo
 Structure for MCAN High Priority Message. More...
 
struct  MCAN_RxNewDataStatus
 Structure for MCAN new data flag for Rx buffer. More...
 
struct  MCAN_RxFIFOStatus
 Structure for MCAN Rx FIFO Status. More...
 
struct  MCAN_TxFIFOStatus
 Structure for MCAN Tx FIFO Status. More...
 
struct  MCAN_TxEventFIFOStatus
 Structure for MCAN Tx Event FIFO Status. More...
 
struct  MCAN_ECCErrForceParams
 Structure for ECC Error forcing. More...
 
struct  MCAN_ECCErrStatus
 Structure for ECC Error Status. More...
 
struct  MCAN_RevisionId
 Structure for accessing Revision ID and Core Release Info. of MCAN module. More...
 
struct  MCAN_ECCAggrRevisionId
 Structure for accessing Revision ID of ECC AGGR. More...
 
struct  MCAN_ECCConfigParams
 Structure for MCAN ECC configuration parameters. More...
 
struct  MCAN_ECCWrapRevisionId
 Structure for accessing Revision ID of ECC wrapper. More...
 
struct  MCAN_TxBufElement
 Structure for MCAN Tx Buffer element. More...
 
struct  MCAN_TxBufElementNoCpy
 Structure for MCAN Tx Buffer element which takes data as a pointer. Using this the MCAL CAN driver can optimize one full copy of CAN payload by a simple pointer assignment. Please note that as the data field is a pointer so wrong value for payload size passed from application will lead to data corruption. More...
 
struct  MCAN_RxBufElement
 Structure for MCAN Rx Buffer element. More...
 
struct  MCAN_RxBufElementNoCpy
 Structure for MCAN Rx Buffer element which takes data as a pointer. Using this the MCAL CAN driver can optimize one full copy of CAN payload by a simple pointer assignment. Please note that as the data field is a pointer so wrong value for payload size passed from application will lead to data corruption. More...
 
struct  MCAN_TxEventFIFOElement
 Structure for MCAN Tx Event FIFO element. More...
 
struct  MCAN_StdMsgIDFilterElement
 Structure for MCAN Standard Message ID Filter Element. More...
 
struct  MCAN_ExtMsgIDFilterElement
 Structure for MCAN Extended Message ID Filter Element. More...
 

Macros

#define MCAN_MAX_PAYLOAD_BYTES   (64U)
 Maximum payload supported by CAN-FD protocol in bytes. More...
 
#define MCAN_MAX_TX_MSG_OBJECTS   (32U)
 Maximum number of Tx message objects that can be supported by CANFD. More...
 
#define MCAN_MAX_RX_MSG_OBJECTS   (32U)
 Maximum number of Rx message objects that can be supported by CANFD. More...
 
#define MCAN_MAX_MSG_OBJECTS   (MCAN_MAX_TX_MSG_OBJECTS + MCAN_MAX_RX_MSG_OBJECTS)
 Maximum number of message objects that can be supported by CANFD. More...
 
Return status
#define MCAN_STATUS_SUCCESS   ((int32_t)0)
 Return status when the API execution was successful. More...
 
#define MCAN_STATUS_FAILURE   ((int32_t)-1)
 Return status when the API execution was not successful due to a failure. More...
 
#define MCAN_TIMEOUT   ((int32_t)-2)
 Return status when the API execution was not successful due to a time out. More...
 
#define MCAN_INVALID_PARAM   ((int32_t)-3)
 Return status when the API execution failed due invalid parameters. More...
 
#define MCAN_STATUS_BUSY   ((int32_t)-4)
 Return status when the API execution failed due to driver busy. More...
 
#define MCAN_INVALID_STATE   ((int32_t)-5)
 Return status when the API execution failed due to invalid state. More...
 
#define MCAN_OUT_OF_RESOURCES   ((int32_t)-6)
 Return status when the API execution failed due to lack of resources (memory / HW) More...
 
#define MCAN_INTR_MASK_ALL
 Macro defines mask for all the interrupts status for MCAN. More...
 
#define MCAN_INTR_MASK_TX
 Macro defines mask for the TX interrupts status for MCAN. More...
 
#define MCAN_INTR_MASK_RX
 Macro defines mask for the RX interrupts status for MCAN. More...
 
#define MCAN_HEADER_SIZE_BYTES   (8U)
 Size of MCAN Header in bytes. More...
 
MCAN STD, EXT and TX/RX Elememt Size

#define MCAN_MSG_RAM_STD_ELEM_SIZE   (1U)
 Macros to represent the MCAN STD, EXT and TX/RX Elememt Size. More...
 
#define MCAN_MSG_RAM_EXT_ELEM_SIZE   (2U)
 
#define MCAN_MSG_RAM_TX_RX_ELEM_SIZE   (18U)
 
MCAN RX FIFO Operation Mode

#define MCAN_RX_FIFO_OPERATION_MODE_BLOCKING   (0U)
 Macros to represent the MCAN RX FIFO mode of operation. More...
 
#define MCAN_RX_FIFO_OPERATION_MODE_OVERWRITE   (1U)
 
MCAN Tx Mem type

#define MCAN_TX_MEM_TYPE_BUF   (0U)
 Macros to represent the MCAN Tx Message RAM type. More...
 
#define MCAN_TX_MEM_TYPE_QUEUE   (1U)
 
MCAN Data Length Size

#define MCAN_DATA_SIZE_0BYTES   (0U)
 Macros to represent MCAN Data Size. More...
 
#define MCAN_DATA_SIZE_1BYTES   (1U)
 
#define MCAN_DATA_SIZE_2BYTES   (2U)
 
#define MCAN_DATA_SIZE_3BYTES   (3U)
 
#define MCAN_DATA_SIZE_4BYTES   (4U)
 
#define MCAN_DATA_SIZE_5BYTES   (5U)
 
#define MCAN_DATA_SIZE_6BYTES   (6U)
 
#define MCAN_DATA_SIZE_7BYTES   (7U)
 
#define MCAN_DATA_SIZE_8BYTES   (8U)
 
#define MCAN_DATA_SIZE_12BYTES   (9U)
 
#define MCAN_DATA_SIZE_16BYTES   (10U)
 
#define MCAN_DATA_SIZE_20BYTES   (11U)
 
#define MCAN_DATA_SIZE_24BYTES   (12U)
 
#define MCAN_DATA_SIZE_32BYTES   (13U)
 
#define MCAN_DATA_SIZE_48BYTES   (14U)
 
#define MCAN_DATA_SIZE_64BYTES   (15U)
 
MCAN Standard Filter Element Configuration

#define MCAN_STD_FILT_ELEM_DISABLE   (0U)
 Macros to represent Standard Filter Element Configuration. More...
 
#define MCAN_STD_FILT_ELEM_FIFO0   (1U)
 
#define MCAN_STD_FILT_ELEM_FIFO1   (2U)
 
#define MCAN_STD_FILT_ELEM_REJECT   (3U)
 
#define MCAN_STD_FILT_ELEM_SET_PRIORITY   (4U)
 
#define MCAN_STD_FILT_ELEM_SET_PRIORITY_FIFO0   (5U)
 
#define MCAN_STD_FILT_ELEM_SET_PRIORITY_FIFO1   (6U)
 
#define MCAN_STD_FILT_ELEM_BUFFER   (7U)
 
MCAN Standard Filter Type

#define MCAN_STD_FILT_TYPE_RANGE   (0U)
 Macros to represent Standard Filter Types. More...
 
#define MCAN_STD_FILT_TYPE_DUAL   (1U)
 
#define MCAN_STD_FILT_TYPE_CLASSIC   (2U)
 
#define MCAN_STD_FILT_TYPE_DISABLE   (3U)
 
MCAN Extended Filter Element Configuration

#define MCAN_EXT_FILT_ELEM_DISABLE   (0U)
 Macros to represent Extended Filter Element Configuration. More...
 
#define MCAN_EXT_FILT_ELEM_FIFO0   (1U)
 
#define MCAN_EXT_FILT_ELEM_FIFO1   (2U)
 
#define MCAN_EXT_FILT_ELEM_REJECT   (3U)
 
#define MCAN_EXT_FILT_ELEM_SET_PRIORITY   (4U)
 
#define MCAN_EXT_FILT_ELEM_SET_PRIORITY_FIFO0   (5U)
 
#define MCAN_EXT_FILT_ELEM_SET_PRIORITY_FIFO1   (6U)
 
#define MCAN_EXT_FILT_ELEM_BUFFER   (7U)
 
MCAN Extended Filter Type

#define MCAN_EXT_FILT_TYPE_RANGE   (0U)
 Macros to represent Extended Filter Types. More...
 
#define MCAN_EXT_FILT_TYPE_DUAL   (1U)
 
#define MCAN_EXT_FILT_TYPE_CLASSIC   (2U)
 
#define MCAN_EXT_FILT_TYPE_DISABLE   (3U)
 

Functions

void MCAN_reset (uint32_t baseAddr)
 This API is used to initiate reset for MCAN module. More...
 
uint32_t MCAN_isInReset (uint32_t baseAddr)
 This function checks if the MCAN module is in Reset. More...
 
uint32_t MCAN_isFDOpEnable (uint32_t baseAddr)
 This API will return flexible data rate operation status MCAN module. More...
 
uint32_t MCAN_isMemInitDone (uint32_t baseAddr)
 This function checks if the memory initialization is done for MCAN module. More...
 
void MCAN_setOpMode (uint32_t baseAddr, uint32_t mode)
 This API will set MCAN module mode of operation. More...
 
uint32_t MCAN_getOpMode (uint32_t baseAddr)
 This API will return MCAN module mode of operation. More...
 
int32_t MCAN_init (uint32_t baseAddr, const MCAN_InitParams *initParams)
 This API will initialize MCAN module. More...
 
int32_t MCAN_config (uint32_t baseAddr, const MCAN_ConfigParams *configParams)
 This API will configure MCAN module. More...
 
void MCAN_eccConfig (uint32_t baseAddr, const MCAN_ECCConfigParams *configParams)
 This API will enable/disable ECC on the Message RAM. More...
 
int32_t MCAN_setBitTime (uint32_t baseAddr, const MCAN_BitTimingParams *configParams)
 This API will configure a bit timings for MCAN module. More...
 
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. More...
 
int32_t MCAN_msgRAMConfig (uint32_t baseAddr, const MCAN_MsgRAMConfigParams *msgRAMConfigParams)
 This API will configure Different sections of Message RAM. More...
 
int32_t MCAN_setExtIDAndMask (uint32_t baseAddr, uint32_t idMask)
 This API will configure Extended ID AND Mask. More...
 
int32_t MCAN_getWriteMsgElemAddress (uint32_t baseAddr, uint32_t memType, uint32_t bufNum, uint32_t *elemAddr)
 This API is used to get the address of Tx buffer in message ram. More...
 
void MCAN_writeHeaderToMsgRam (uint32_t baseAddr, uint32_t memType, uint32_t bufNum, const MCAN_TxBufElement *elem)
 This API is used to write Tx message Header to message RAM. More...
 
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. More...
 
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 element which has data as a pointer instead of an array. Note that as the data is a pointer here hence corruption of data is possible in case you exceed the payload size. Also, this API should be used instead of MCAN_writeMsgRam in case a copy in the MCAL CAN driver needs to be avoided. Both can not be used together as both have different structure. More...
 
int32_t MCAN_txBufAddReq (uint32_t baseAddr, uint32_t bufNum)
 This API will set Tx Buffer Add Request. More...
 
void MCAN_getNewDataStatus (uint32_t baseAddr, MCAN_RxNewDataStatus *newDataStatus)
 This API will return New Data Message Status. More...
 
int32_t MCAN_getReadMsgElemAddress (uint32_t baseAddr, uint32_t memType, uint32_t bufNum, uint32_t fifoNum, uint32_t *elemAddr)
 This API is used to get the address of Rx buffer in message ram. More...
 
void MCAN_clearNewDataStatus (uint32_t baseAddr, const MCAN_RxNewDataStatus *newDataStatus)
 This API clear New Data Message Status. More...
 
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. More...
 
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 structure element which has data as pointer instead of an array. Note that as the data is a pointer here hence corruption of data is possible in case you exceed the payload size. Also, this API should be used instead of MCAN_readMsgRam in case a copy in the MCAL CAN driver needs to be avoided. Both can not be used together as both have different structure. More...
 
void MCAN_readTxEventFIFO (uint32_t baseAddr, MCAN_TxEventFIFOElement *txEventElem)
 This API is used to read message form Tx Event FIFO. More...
 
void MCAN_addStdMsgIDFilter (uint32_t baseAddr, uint32_t filtNum, const MCAN_StdMsgIDFilterElement *elem)
 This API is used to add Standard Message ID Filter Element. More...
 
void MCAN_addExtMsgIDFilter (uint32_t baseAddr, uint32_t filtNum, const MCAN_ExtMsgIDFilterElement *elem)
 This API is used to add Extended Message ID Filter Element. More...
 
void MCAN_lpbkModeEnable (uint32_t baseAddr, uint32_t lpbkMode, uint32_t enable)
 This API will enable/disable Loop Back Test Mode for MCAN module. More...
 
void MCAN_getErrCounters (uint32_t baseAddr, MCAN_ErrCntStatus *errCounter)
 This API will return error counter status for MCAN module. More...
 
void MCAN_getProtocolStatus (uint32_t baseAddr, MCAN_ProtocolStatus *protStatus)
 This API will return protocol status for MCAN module. More...
 
void MCAN_enableIntr (uint32_t baseAddr, uint32_t intrMask, uint32_t enable)
 This API is used to enable/disable interrupts. More...
 
void MCAN_selectIntrLine (uint32_t baseAddr, uint32_t intrMask, uint32_t lineNum)
 This API is used to select interrupt line. More...
 
uint32_t MCAN_getIntrLineSelectStatus (uint32_t baseAddr)
 This API is used to get interrupt line selected for each interrupt. More...
 
void MCAN_enableIntrLine (uint32_t baseAddr, uint32_t lineNum, uint32_t enable)
 This API is used to enable/disable selected interrupt line. More...
 
uint32_t MCAN_getIntrStatus (uint32_t baseAddr)
 This API will return interrupt status. More...
 
void MCAN_clearIntrStatus (uint32_t baseAddr, uint32_t intrMask)
 This API is used to clear the interrupt status. More...
 
void MCAN_getHighPriorityMsgStatus (uint32_t baseAddr, MCAN_HighPriorityMsgInfo *hpm)
 This API will return High Priority Message Status. More...
 
void MCAN_getRxFIFOStatus (uint32_t baseAddr, MCAN_RxFIFOStatus *fifoStatus)
 This API will Rx FIFO status. More...
 
int32_t MCAN_writeRxFIFOAck (uint32_t baseAddr, uint32_t fifoNum, uint32_t idx)
 This API will write Rx FIFO Acknowledgement. More...
 
void MCAN_getTxFIFOQueStatus (uint32_t baseAddr, MCAN_TxFIFOStatus *fifoStatus)
 This API will Tx FIFO status. More...
 
uint32_t MCAN_getTxBufReqPend (uint32_t baseAddr)
 This API will return Tx Buffer Request Pending status. More...
 
int32_t MCAN_txBufCancellationReq (uint32_t baseAddr, uint32_t buffNum)
 This API will set Tx Buffer Cancellation Request. More...
 
uint32_t MCAN_getTxBufTransmissionStatus (uint32_t baseAddr)
 This API will return Tx Buffer Transmission Occurred status. More...
 
uint32_t MCAN_txBufCancellationStatus (uint32_t baseAddr)
 This API will return Transmit Buffer Cancellation Finished status. More...
 
int32_t MCAN_txBufTransIntrEnable (uint32_t baseAddr, uint32_t bufNum, uint32_t enable)
 This API is used to enable/disable Tx Buffer Transmission Interrupt. More...
 
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. More...
 
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. More...
 
void MCAN_getTxEventFIFOStatus (uint32_t baseAddr, MCAN_TxEventFIFOStatus *fifoStatus)
 This API will Tx Event FIFO status. More...
 
int32_t MCAN_writeTxEventFIFOAck (uint32_t baseAddr, uint32_t idx)
 This API will write Event FIFO Acknowledge Index. More...
 
void MCAN_eccForceError (uint32_t baseAddr, const MCAN_ECCErrForceParams *eccErr)
 This API will Force Error on ECC. More...
 
void MCAN_eccGetErrorStatus (uint32_t baseAddr, MCAN_ECCErrStatus *eccErr)
 This API will return ECC Error status. More...
 
void MCAN_eccClearErrorStatus (uint32_t baseAddr, uint32_t errType)
 This API is used to clear the ECC Error status. More...
 
void MCAN_eccWriteEOI (uint32_t baseAddr, uint32_t errType)
 This API is used to write End of Interrupt for ECC interrupt. More...
 
void MCAN_eccEnableIntr (uint32_t baseAddr, uint32_t errType, uint32_t enable)
 This API is used to enable ECC interrupt. More...
 
uint32_t MCAN_eccGetIntrStatus (uint32_t baseAddr, uint32_t errType)
 This API is used to get ECC interrupt status. More...
 
void MCAN_eccClearIntrStatus (uint32_t baseAddr, uint32_t errType)
 This API is used to clear ECC interrupt status. More...
 
void MCAN_extTSCounterConfig (uint32_t baseAddr, uint32_t prescalar)
 This API will configure external timestamp counter for MCAN module. More...
 
void MCAN_extTSCounterEnable (uint32_t baseAddr, uint32_t enable)
 This API will enable/disable fast external time stamp counter for MCAN module. More...
 
void MCAN_extTSEnableIntr (uint32_t baseAddr, uint32_t enable)
 This API will enable/disable External TimeStamp Counter Overflow Interrupt for MCAN module. More...
 
void MCAN_extTSWriteEOI (uint32_t baseAddr)
 This API is used to write End of Interrupt for External TimeStamp Counter Overflow Interrupt. More...
 
uint32_t MCAN_extTSGetUnservicedIntrCount (uint32_t baseAddr)
 This API returns Number of unserviced rollover/overflow interrupts for external TimeStamp counter. More...
 
void MCAN_getRevisionId (uint32_t baseAddr, MCAN_RevisionId *revId)
 This API is used get the MCAN revision ID. More...
 
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 not. More...
 
void MCAN_extTSSetRawStatus (uint32_t baseAddr)
 This API will set External TimeStamp Counter Overflow Interrupt Raw status for MCAN module. More...
 
void MCAN_extTSClearRawStatus (uint32_t baseAddr)
 This API will clear External TimeStamp Counter Overflow Interrupt raw status for MCAN module. More...
 
uint32_t MCAN_getRxPinState (uint32_t baseAddr)
 This API will return Rx pin state of MCAN module. More...
 
void MCAN_setTxPinState (uint32_t baseAddr, uint32_t state)
 This API will set Tx pin state of MCAN module. More...
 
uint32_t MCAN_getTxPinState (uint32_t baseAddr)
 This API will return Tx pin state of MCAN module. More...
 
uint32_t MCAN_getTSCounterVal (uint32_t baseAddr)
 This API will return current timestamp counter value. More...
 
uint32_t MCAN_getClkStopAck (uint32_t baseAddr)
 This API will return clock stop acknowledgement for MCAN module. More...
 
void MCAN_getBitTime (uint32_t baseAddr, MCAN_BitTimingParams *configParams)
 This API will get the configured bit timings for MCAN module. More...
 
void MCAN_resetTSCounter (uint32_t baseAddr)
 This API will reset timestamp counter value. More...
 
uint32_t MCAN_getTOCounterVal (uint32_t baseAddr)
 This API will return current time-out counter value. More...
 
void MCAN_eccAggrGetRevisionId (uint32_t baseAddr, MCAN_ECCAggrRevisionId *revId)
 This API is used get the ECC AGGR revision ID. More...
 
void MCAN_eccWrapGetRevisionId (uint32_t baseAddr, MCAN_ECCWrapRevisionId *revId)
 This API is used get the ECC Wrapper revision ID. More...
 
uint32_t MCAN_extTSIsIntrEnable (uint32_t baseAddr)
 This API returns External TimeStamp Counter Overflow Interrupt enable status for MCAN module. More...
 
uint32_t MCAN_getEndianVal (uint32_t baseAddr)
 This function return endianness value of MCAN module. More...
 
uint32_t MCAN_getExtIDANDMassk (uint32_t baseAddr)
 This API will get the configured Extended ID AND Mask. More...
 
void MCAN_initTxBufElement (MCAN_TxBufElement *txMsg)
 This API will initialize TX message object with default values. More...
 
void MCAN_initOperModeParams (MCAN_InitParams *initParams)
 This API will initialize MCAN Operating mode params with default values. More...
 
void MCAN_initGlobalFilterConfigParams (MCAN_ConfigParams *configParams)
 This API will initialize MCAN Global Filter config params with default values. More...
 
void MCAN_initSetBitTimeParams (MCAN_BitTimingParams *bitTimes)
 This API will initialize MCAN GBit Timing params with default 1Mbps and 5Mbps as nominal and data bit-rate respectively. More...
 
void MCAN_initMsgRamConfigParams (MCAN_MsgRAMConfigParams *msgRAMConfigParams)
 This API will initialize MCAN message config RAM params to default. More...
 
int32_t MCAN_calcMsgRamParamsStartAddr (MCAN_MsgRAMConfigParams *msgRAMConfigParams)
 This API will calculate start addresses of message RAM params. More...