 |
AM261x MCU+ SDK
10.02.00
|
|
Go to the documentation of this file.
101 #include <drivers/hw_include/cslr_soc.h>
117 #define MCAN_STATUS_SUCCESS ((int32_t)0)
122 #define MCAN_STATUS_FAILURE ((int32_t)-1)
144 #define CANFD_TRANSFER_MODE_BLOCKING (0U)
149 #define CANFD_TRANSFER_MODE_CALLBACK (1U)
160 #define CANFD_OPER_MODE_POLLED (0U)
161 #define CANFD_OPER_MODE_INTERRUPT (1U)
162 #define CANFD_OPER_MODE_DMA (2U)
173 #define MCAN_MSG_RAM_STD_ELEM_SIZE (1U)
176 #define MCAN_MSG_RAM_EXT_ELEM_SIZE (2U)
179 #define MCAN_MSG_HEADER_SIZE (8U)
182 #define MCAN_FRAME_TYPE_FD (1U)
186 #define MCAN_MSG_RAM_TX_RX_ELEM_SIZE (18U)
189 #define XTD_MSGID_MASK (0x1fffffffU)
190 #define STD_MSGID_MASK (0x7ffU)
191 #define STD_MSGID_SHIFT (18U)
194 #define MCAN_MAX_PAYLOAD_BYTES (64U)
197 #define MCAN_MAX_RX_BUFFERS (64U)
200 #define MCAN_MAX_TX_BUFFERS (32U)
203 #define CANFD_UTILS_ARRAYSIZE(x) (sizeof(x) / sizeof(x[0]))
206 #define CANFD_UTILS_GETARRAYINDEX(member, array) (member - &array[0])
209 #define CANFD_UTILS_ARRAYISMEMBER(member, array) \
210 (((((uint32)member - (uint32) & array[0]) % sizeof(array[0])) == 0) \
211 && (member >= &array[0]) \
212 && (CANFD_UTILS_GETARRAYINDEX(member, array) < CANFD_UTILS_ARRAYSIZE(array)))
217 #define MCAN_INTR_MASK ((uint32_t)MCAN_INTR_SRC_RX_FIFO0_NEW_MSG | \
218 (uint32_t)MCAN_INTR_SRC_RX_FIFO0_MSG_LOST | \
219 (uint32_t)MCAN_INTR_SRC_RX_FIFO1_NEW_MSG | \
220 (uint32_t)MCAN_INTR_SRC_TRANS_COMPLETE | \
221 (uint32_t)MCAN_INTR_SRC_TRANS_CANCEL_FINISH | \
222 (uint32_t)MCAN_INTR_SRC_DEDICATED_RX_BUFF_MSG | \
223 (uint32_t)MCAN_INTR_SRC_PROTOCOL_ERR_ARB | \
224 (uint32_t)MCAN_INTR_SRC_PROTOCOL_ERR_DATA | \
225 (uint32_t)MCAN_INTR_SRC_RX_FIFO1_MSG_LOST | \
226 (uint32_t)MCAN_INTR_SRC_BUS_OFF_STATUS)
229 #define CANFD_DMA_TX_COMPLETION_INTERMEDIATE (1U)
231 #define CANFD_DMA_TX_COMPLETION_FINAL (2U)
233 #define CANFD_DMA_RX_COMPLETION_INTERMEDIATE (1U)
235 #define CANFD_DMA_RX_COMPLETION_FINAL (2U)
238 #define CANFD_MAX_DLC_MAPPING (16U)
251 #define CANFD_DRIVER_STATE_UNINIT (0U)
253 #define CANFD_DRIVER_STATE_STARTED (1U)
255 #define CANFD_DRIVER_STATE_STOPPED (2U)
257 #define CCANFD_DRIVER_STATE_SLEEP (3U)
266 typedef enum CANFD_MCANElemSize_t
300 typedef enum CANFD_MCANOperationMode_t
316 typedef enum CANFD_Direction_t
332 typedef enum CANFD_MCANXidType_t
347 typedef enum CANFD_MCANFrameType_t
362 typedef enum CANFD_MCANTimeOutSelect_t
387 #define CANFD_MCAN_ECC_ERR_TYPE_SEC (0U)
389 #define CANFD_MCAN_ECC_ERR_TYPE_DED (1U)
399 typedef enum CANFD_MCANLoopBackMode_t
418 typedef enum CANFD_MCANCommState_t
439 typedef enum CANFD_MCANErrCode_t
495 typedef enum CANFD_Reason_t
553 typedef enum CANFD_Option_t
621 typedef struct CANFD_MCANLoopbackCfgParams_t
642 typedef struct CANFD_MCANBitTimingParams_t
681 typedef struct CANFD_MCANTdcConfig_t
700 typedef struct CANFD_MCANGlobalFiltConfig_t
741 typedef struct CANFD_MCANMsgRAMCfgParams_t
838 typedef struct CANFD_MCANECCConfigParams_t
865 typedef struct CANFD_MCANErrCntStatus_t
889 typedef struct CANFD_MCANProtocolStatus_t
960 typedef struct CANFD_MCANECCErrForceParams_t
994 typedef struct CANFD_MCANECCErrStatus_t
1030 typedef union CANFD_ErrStatusResp_t
1047 typedef struct CANFD_Attrs_s
1097 typedef struct CANFD_OptionTLV_t
1144 typedef struct CANFD_OpenParams_t
1320 typedef struct CANFD_Object_t
1464 typedef struct CANFD_Config_s
1479 typedef struct CANFD_DmaMsgConfig_s
1511 typedef struct CANFD_DmaRxBuf_s
1531 typedef struct CANFD_MessageObject_t
1644 typedef struct CANFD_MCANMsgObjectStats_t
1678 typedef struct CANFD_DmaConfig_s
1810 const uint8_t* data);
1849 uint32_t numMsgs,
const void* data);
2030 uint32_t numMsgs,
const void* data);
2057 const void *data, uint32_t completionType);
2095 uint32_t dataLengthPerMsg, uint32_t numMsgs,
2112 uint32_t completionType);
CANFD_MCANECCErrStatus eccErrStatus
Definition: canfd.h:1033
int32_t CANFD_dmaClose(CANFD_Handle canfdHandle)
API to close an CANFD DMA channel.
uint32_t tdco
Definition: canfd.h:691
CANFD_Handle handle
Instance handle to which this object belongs.
Definition: canfd.h:1325
uint32_t errType
Definition: canfd.h:965
uint32_t txBufMode
Definition: canfd.h:775
uint32_t txEventFIFOWaterMark
Definition: canfd.h:789
@ CANFD_MCANElemSize_64BYTES
Definition: canfd.h:290
uint32_t warningStatus
Definition: canfd.h:912
@ CANFD_MCANTimeOutSelect_RX_FIFO0
Definition: canfd.h:371
int32_t CANFD_configureDmaTx(const CANFD_Object *ptrCanFdObj, CANFD_MessageObject *ptrCanMsgObj, uint32_t dataLengthPerMsg, uint32_t numMsgs, const void *data)
API to enable dma event transfer for the Tx. Called from the API CANFD_writeDma.
uint32_t rxMemType
Definition: canfd.h:1077
uint32_t tdcv
Definition: canfd.h:951
uint32_t rrfe
Definition: canfd.h:706
@ CANFD_MCANCommState_TRANSMITTER
Definition: canfd.h:430
uint32_t rbrs
Definition: canfd.h:935
void * args
Definition: hsmclient_msg.h:4
uint32_t CANFD_getClkStopAck(CANFD_Handle canfdHandle)
This API will return clock stop acknowledgement for MCAN module.
uint32_t busOffStatus
Definition: canfd.h:918
CANFD_Object * object
Definition: canfd.h:1468
void CANFD_deinit(void)
This function de-initializes each driver instance object and delete a driver lock.
HwiP_Object hwiObj0
Definition: canfd.h:1442
uint32_t dataPseg2
Definition: canfd.h:669
void CANFD_setTxPinState(CANFD_Handle canfdHandle, uint32_t state)
This API will set Tx pin state of MCAN module.
int32_t CANFD_writeCancel(CANFD_MsgObjHandle handle)
Function used by the application to cancel a pending data transmit.
uint32_t dataSjw
Definition: canfd.h:672
void * args
Pointer to be used by application to store miscellaneous data.
Definition: canfd.h:1420
@ CANFD_MCANErrCode_STUFF_ERROR
Definition: canfd.h:449
int32_t CANFD_dmaOpen(CANFD_Handle canfdHandle, CANFD_DmaChConfig dmaChCfg)
API to open an CANFD DMA channel.
uint32_t errPassive
Definition: canfd.h:905
uint32_t timeoutPreload
Definition: canfd.h:1277
CANFD_MCANErrCode
Definition: canfd.h:440
CANFD_MCANElemSize
Definition: canfd.h:267
void CANFD_errStatusCallBack(CANFD_Handle handle, CANFD_Reason reason, CANFD_ErrStatusResp *errStatusResp)
Application specified callback function which is invoked by the CANFD driver on error or status chang...
int32_t CANFD_getEndianVal(CANFD_Handle canfdHandle)
This function return endianness value of MCAN module.
uint32_t currentMsgNum
Used by driver to store current message count out of the numMsgs already processed.
Definition: canfd.h:1496
uint32_t act
Definition: canfd.h:899
uint32_t transErrLogCnt
Definition: canfd.h:868
Structure for MCAN Rx Buffer element.
Definition: mcan.h:1491
@ CANFD_Option_MCAN_MSG_OBJECT_STATS
Definition: canfd.h:580
int32_t CANFD_configBitTime(CANFD_Handle handle, const CANFD_MCANBitTimingParams *bitTimeParams)
Function configures the bit time parameters for the CANFD module.
uint32_t endMsgIdentifier
Definition: canfd.h:1662
uint32_t asmEnable
Definition: canfd.h:1252
int32_t CANFD_deleteDmaRxMsgObject(const CANFD_Object *ptrCanFdObj, const CANFD_MessageObject *ptrCanMsgObj)
API to delete dma configuration for the Rx message object. Called from the CANFD_deleteMsgObject.
@ CANFD_MCANElemSize_32BYTES
Definition: canfd.h:284
@ CANFD_Option_MCAN_LOOPBACK
Definition: canfd.h:597
uint32_t nomSjw
Definition: canfd.h:657
uint32_t interrupts
Number of interrupts received for message Tx or Rx.
Definition: canfd.h:1370
@ CANFD_Reason_BUSOFF
Bus Off condition detected.
Definition: canfd.h:521
uint32_t dlec
Definition: canfd.h:923
uint32_t darEnable
Definition: canfd.h:1193
@ CANFD_MCANTimeOutSelect_TX_EVENT_FIFO
Definition: canfd.h:368
@ CANFD_Reason_PROTOCOL_ERR_DATA_PHASE
Protocol error in data phase detected.
Definition: canfd.h:526
uint32_t gCANFDConfigNum
Externally defined driver configuration array size.
uint32_t brsEnable
Definition: canfd.h:1167
uint32_t enableChk
Definition: canfd.h:850
uint32_t dmaEventNo
Dma Event number allocated for this message object.
Definition: canfd.h:1611
@ CANFD_Option_MCAN_POWER_DOWN
Definition: canfd.h:608
@ CANFD_MCANTimeOutSelect_RX_FIFO1
Definition: canfd.h:374
uint32_t timeoutCntEnable
Definition: canfd.h:1283
const void * data
pointer to the data buffer. This should a 2d array of uint8[numMsgs][dataLengthPerMsg]
Definition: canfd.h:1492
uint32_t protoArbErrInterrupts
Number of Protocol error in arbitration phase interrupts received.
Definition: canfd.h:1390
CANFD_MCANCommState
Definition: canfd.h:419
CANFD_MCANLoopBackMode
Definition: canfd.h:400
uint32_t tsPrescalar
Definition: canfd.h:1257
CANFD_DmaHandle canfdDmaHandle
Dma driver handle.
Definition: canfd.h:1410
CANFD_TransferCallbackFxn transferCallbackFxn
Definition: canfd.h:1151
CANFD_MCANFrameType
Definition: canfd.h:348
uint32_t protoDataErrInterrupts
Number of Protocol error in data phase interrupts received.
Definition: canfd.h:1385
uint32_t emulationEnable
Definition: canfd.h:1211
CANFD_MCANXidType msgIdType
Message object type.
Definition: canfd.h:1558
@ CANFD_Reason_ECC_ERROR
Data has been succesfully transmitted.
Definition: canfd.h:516
void * readTransferSem
Definition: canfd.h:1424
uint32_t rrfs
Definition: canfd.h:712
void CANFD_transferCallBack(void *args, CANFD_Reason reason)
Application specified callback function which is invoked by the CANFD driver once transmit is complet...
CANFD_DmaChConfig canfdDmaChCfg
Pointer to Dma channel configuration.
Definition: canfd.h:1415
#define MCAN_MAX_MSG_OBJECTS
Maximum number of message objects that can be supported by CANFD.
Definition: mcan.h:393
uint32_t nomPseg2
Definition: canfd.h:654
void * CANFD_DmaChConfig
Definition: canfd.h:613
uint32_t busOffInterrupts
Number of Bus-Off interrupts received.
Definition: canfd.h:1380
void * writeTransferSem
Definition: canfd.h:1432
@ CANFD_MCANFrameType_CLASSIC
Definition: canfd.h:350
CANFD_MsgObjHandle handle
Definition: canfd.h:1647
@ CANFD_MCANCommState_SYNCHRONIZING
Definition: canfd.h:421
@ CANFD_Reason_SRC_RX_FIFO1_MSG_LOST
Rx FIFO 1 Message Lost.
Definition: canfd.h:541
#define MCAN_MAX_RX_MSG_OBJECTS
Maximum number of Rx message objects that can be supported by CANFD.
Definition: mcan.h:388
int32_t CANFD_cancelDmaTx(const CANFD_Object *ptrCanFdObj, const CANFD_MessageObject *ptrCanMsgObj)
API to disbale dma event transfer for the Tx to cancel the transfer.
uint32_t dataLength
Data Length used by application for transmission and reception. Valid values: 1 to 64 bytes.
Definition: canfd.h:1569
void CANFD_dmaTxCompletionCallback(CANFD_MessageObject *ptrCanMsgObj, const void *data, uint32_t completionType)
Callback function for the Tx completion. This is called for each message in the array of msgs provide...
int32_t CANFD_read(CANFD_MsgObjHandle rxMsgHandle, uint32_t numMsgs, uint8_t *data)
Function is used by the application to get the CAN message from message RAM using a receive message o...
uint32_t endMsgId
Ending range of the Message Id to which the configuration belongs For Tx and single Message Id object...
Definition: canfd.h:1543
void(* CANFD_TransferCallbackFxn)(void *args, CANFD_Reason reason)
The definition of a callback function used by the CANFD driver when used in CANFD_TRANSFER_MODE_CALLB...
Definition: canfd.h:1122
uint32_t bit1
Definition: canfd.h:973
@ CANFD_MCANErrCode_NO_CHANGE
Definition: canfd.h:485
uint32_t resi
Definition: canfd.h:929
int32_t CANFD_createDmaRxMsgObject(const CANFD_Object *ptrCanFdObj, CANFD_MessageObject *ptrCanMsgObj)
API to configure dma for the Rx message object. Called from the CANFD_createMsgObject.
uint32_t dataInterruptEnable
Definition: canfd.h:1306
@ CANFD_MCANElemSize_16BYTES
Definition: canfd.h:275
@ CANFD_Option_MCAN_MODE
Definition: canfd.h:588
void * CANFD_DmaHandle
Definition: canfd.h:611
CANFD_MessageObject * CANFD_MsgObjHandle
Definition: canfd.h:1636
void * hwiHandle
Definition: canfd.h:1439
uint32_t canErrLogCnt
Definition: canfd.h:880
MCAN_RevisionId revId
Definition: canfd.h:1448
void CANFD_resetTSCounter(CANFD_Handle canfdHandle)
This API will reset timestamp counter value.
CANFD_MCANProtocolStatus protocolStatus
Definition: canfd.h:1036
@ CANFD_MCANErrCode_BIT1_ERROR
Definition: canfd.h:462
@ CANFD_MCANXidType_29_BIT
Definition: canfd.h:338
uint32_t operMode
Definition: canfd.h:1059
CANFD_DmaMsgConfig dmaMsgConfig
Dma message configuration.
Definition: canfd.h:1615
@ CANFD_Direction_TX
Definition: canfd.h:322
@ CANFD_Reason_RX
Data has been received and the application is required to read and process the data.
Definition: canfd.h:501
void * value
Option Value.
Definition: canfd.h:1112
uint32_t enable
Definition: canfd.h:844
void CANFD_dmaRxCompletionCallback(CANFD_MessageObject *ptrCanMsgObj, const void *data, uint32_t completionType)
Callback function for the Rx completion. This is called for each message in the array of msgs provide...
uint32_t startMsgId
Starting range of the Message Id to which the configuration belongs. For Tx and single Message Id obj...
Definition: canfd.h:1537
void CANFD_init(void)
This function initializes each driver instance object and create a driver lock.
uint32_t txElement
Tx buffer number used to send data.
Definition: canfd.h:1574
uint32_t enableRdModWr
Definition: canfd.h:856
void CANFD_close(CANFD_Handle handle)
Function to close a CANFD peripheral specified by the CANFD handle.
uint32_t rxFIFO1size
Definition: canfd.h:816
uint32_t messageObjNum
Allocated message object number.
Definition: canfd.h:1563
int32_t CANFD_isDataSizeValid(uint32_t dataSize)
Function to validate the data Size.
CANFD_OpenParams * openParams
CANFD driver init parameters.
Definition: canfd.h:1340
uint32_t CANFD_getRxPinState(CANFD_Handle canfdHandle)
This API will return Rx pin state of MCAN module.
CANFD_MCANLoopbackCfgParams CANFDMcanloopbackParams
Definition: canfd.h:1068
uint32_t txpEnable
Definition: canfd.h:1173
uint8_t intrPriority
Definition: canfd.h:1062
@ CANFD_Reason_TX_COMPLETION
Data has been succesfully transmitted.
Definition: canfd.h:506
void(* CANFD_ErrorCallbackFxn)(void *args, CANFD_Reason reason, CANFD_ErrStatusResp *errStatusResp)
The definition of a callback function used by the CANFD driver when used in CANFD_TRANSFER_MODE_CALLB...
Definition: canfd.h:1132
uint32_t CANFD_MCANECCErrType
This enumeration defines the MCAN ECC Error Types.
Definition: canfd.h:385
uint32_t OptionTLVtype
Definition: canfd.h:1065
uint32_t row
Definition: canfd.h:1011
@ CANFD_MCANElemSize_20BYTES
Definition: canfd.h:278
@ CANFD_MCANErrCode_BIT0_ERROR
Definition: canfd.h:473
@ CANFD_MCANTimeOutSelect_CONT
Definition: canfd.h:365
@ CANFD_MCANElemSize_8BYTES
Definition: canfd.h:269
@ CANFD_MCANElemSize_24BYTES
Definition: canfd.h:281
uint32_t dataPseg1
Definition: canfd.h:666
uint32_t intrNum0
Definition: canfd.h:1053
uint32_t anfs
Definition: canfd.h:726
CANFD_MCANBitTimingParams CANFDMcanBitTimingParams
Definition: canfd.h:1071
CANFD_MCANLoopBackMode mode
Definition: canfd.h:631
uint32_t rpStatus
Definition: canfd.h:877
uint32_t txBufNum
Definition: canfd.h:762
void * canfdDmaArgs
Definition: canfd.h:1680
@ CANFD_MCANOperationMode_SW_INIT
Definition: canfd.h:306
@ CANFD_MCANFrameType_FD
Definition: canfd.h:353
CANFD_Option type
Option Name.
Definition: canfd.h:1102
int32_t CANFD_createMsgObject(CANFD_Handle handle, CANFD_MessageObject *ptrCanMsgObj)
Function configures the receive or transmit message object. It also enables Tx completion and Tx canc...
int32_t CANFD_createDmaTxMsgObject(const CANFD_Object *ptrCanFdObj, CANFD_MessageObject *ptrCanMsgObj)
API to configure dma for the Tx message object. Called from the API CANFD_createMsgObject.
#define MCAN_MAX_TX_MSG_OBJECTS
Maximum number of Tx message objects that can be supported by CANFD.
Definition: mcan.h:383
uint32_t interruptsRxed
Number of interrupts received.
Definition: canfd.h:1601
SemaphoreP_Object readTransferSemObj
Definition: canfd.h:1428
CANFD_Handle CANFD_open(uint32_t index, CANFD_OpenParams *openPrms)
This function opens a given CANFD peripheral.
@ CANFD_Option_MCAN_ERROR_COUNTER
Definition: canfd.h:561
uint32_t tdcEnable
Definition: canfd.h:1234
@ CANFD_MCANLoopBackMode_INTERNAL
Definition: canfd.h:402
uint32_t errOnce
Definition: canfd.h:981
uint32_t rfdf
Definition: canfd.h:942
uint32_t efbi
Definition: canfd.h:1180
uint32_t clkStopFAck
Definition: canfd.h:1223
#define MCAN_MAX_RX_BUFFERS
Maximum number of Rx buffers.
Definition: canfd.h:197
void CANFD_getBitTime(CANFD_Handle canfdHandle)
This API will get the configured bit timings for MCAN module.
CANFD_ErrorCallbackFxn errorCallbackFxn
Definition: canfd.h:1154
@ CANFD_MCANLoopBackMode_EXTERNAL
Definition: canfd.h:408
uint32_t CANFD_getFilterEventConfig(uint32_t eventNum)
@ CANFD_MCANErrCode_FORM_ERROR
Definition: canfd.h:452
uint32_t pxhddisable
Definition: canfd.h:1186
void CANFD_addClockStopRequest(CANFD_Handle canfdHandle, uint32_t enable)
This API add clock stop request for MCAN module to put it in power down mode.
CANFD_MCANXidType
Definition: canfd.h:333
@ CANFD_MCANErrCode_CRC_ERROR
Definition: canfd.h:479
@ CANFD_MCANElemSize_12BYTES
Definition: canfd.h:272
uint32_t dedErr
Definition: canfd.h:1006
uint32_t rxFIFO1OpMode
Definition: canfd.h:829
uint32_t tdcf
Definition: canfd.h:686
@ CANFD_MCANXidType_11_BIT
Definition: canfd.h:335
int32_t CANFD_deleteDmaTxMsgObject(const CANFD_Object *ptrCanFdObj, const CANFD_MessageObject *ptrCanMsgObj)
API to delete dma configuration for the Tx message object. Called from the API CANFD_deleteMsgObject.
MCAN_MemType rxMemType
Part of message ram to accessed by this message object. Refer enum MCAN_MemType.
Definition: canfd.h:1591
uint32_t MCAN_MemType
Enum to represent the MCAN Message RAM type.
Definition: mcan.h:451
uint32_t lss
Definition: canfd.h:748
int32_t CANFD_configureDmaRx(const CANFD_Object *ptrCanFdObj, CANFD_MessageObject *ptrCanMsgObj, uint32_t dataLengthPerMsg, uint32_t numMsgs, const void *data)
API to enable dma event transfer for the Rx. Called from the API CANFD_readDma.
@ CANFD_MCANErrCode_ACK_ERROR
Definition: canfd.h:455
uint32_t startMsgIdentifier
Definition: canfd.h:1656
Structure for accessing Revision ID and Core Release Info. of MCAN module.
Definition: mcan.h:1288
void CANFD_int1Isr(void *args)
The function is the registered interrupt 1 ISR for the CANFD Driver.
@ CANFD_MCANCommState_IDLE
Definition: canfd.h:424
uint32_t fdMode
Definition: canfd.h:1160
uint32_t transferMode
Definition: canfd.h:1148
uint32_t lse
Definition: canfd.h:755
int32_t CANFD_writeDmaTriggerNext(CANFD_MsgObjHandle handle)
Function used by the application to start transmission of next msg in dma mode. Transfer should be in...
HwiP_Object hwiObj1
Definition: canfd.h:1445
CANFD_MCANTdcConfig tdcConfig
Definition: canfd.h:1239
int32_t CANFD_deleteMsgObject(CANFD_MsgObjHandle handle)
Function deletes a message object.
uint32_t dataPropSeg
Definition: canfd.h:663
uint32_t numMsgs
Number of messages.
Definition: canfd.h:1488
CANFD_MCANGlobalFiltConfig filterConfig
Definition: canfd.h:1288
uint32_t useFifoNum
Flag to toggle the usage of FIFO 0 and FIFO 1. Valid values are 0 and 1.
Definition: canfd.h:1400
void * filterConfig
void pointer to MCAN_ExtMsgIDFilterElement or MCAN_StdMsgIDFilterElement structure....
Definition: canfd.h:1084
uint32_t txFIFOSize
Definition: canfd.h:769
uint32_t header1
Definition: canfd.h:1514
CANFD_MCANMsgRAMCfgParams msgRAMConfig
Definition: canfd.h:1293
@ CANFD_Reason_SRC_RX_FIFO0_MSG_LOST
Rx FIFO 0 Message Lost.
Definition: canfd.h:536
uint32_t recErrCnt
Definition: canfd.h:871
uint32_t CANFD_getTxPinState(CANFD_Handle canfdHandle)
This API will return Tx pin state of MCAN module.
Opaque Hwi object used with the Hwi APIs.
Definition: HwiP.h:93
void * CANFD_Handle
A handle that is returned from a CANFD_open() call.
Definition: canfd.h:106
void CANFD_int0Isr(void *args)
The function is the registered interrupt 0 ISR for the CANFD Driver.
uint32_t autoWkupEnable
Definition: canfd.h:1205
CANFD_Direction
Definition: canfd.h:317
uint32_t nomPropSeg
Definition: canfd.h:648
uint32_t rxFIFO0OpMode
Definition: canfd.h:809
@ CANFD_Option_MCAN_PROTOCOL_STATUS
Definition: canfd.h:569
uint32_t anfe
Definition: canfd.h:719
uint32_t errForce
Definition: canfd.h:984
uint32_t monEnable
Definition: canfd.h:1245
uint32_t bit2
Definition: canfd.h:1020
@ CANFD_MCANErrCode_NO_ERROR
Definition: canfd.h:444
#define CANFD_MAX_DLC_MAPPING
Maximum data to DLC mapping supported. Refer MCAN_DataLengthSize.
Definition: canfd.h:238
@ CANFD_Reason_PROTOCOL_ERR_ARB_PHASE
Protocol error in arbitration phase detected.
Definition: canfd.h:531
CANFD_MCANOperationMode
Definition: canfd.h:301
uint32_t lastErrCode
Definition: canfd.h:894
uint32_t nomPseg1
Definition: canfd.h:651
CANFD_MCANTimeOutSelect
Definition: canfd.h:363
Opaque semaphore object used with the semaphore APIs.
Definition: SemaphoreP.h:59
@ CANFD_Direction_RX
Definition: canfd.h:319
CANFD_MCANTimeOutSelect timeoutSelect
Definition: canfd.h:1270
CANFD_MCANECCConfigParams eccConfig
Definition: canfd.h:1298
@ CANFD_MCANCommState_RECEIVER
Definition: canfd.h:427
MCAN_RxBufElement rxBuffElem
Buffer used to read message RAM.
Definition: canfd.h:1405
uint32_t regBaseAddress
Base address of the register address space to be used.
Definition: canfd.h:1330
uint32_t header2
Definition: canfd.h:1516
uint32_t txEventFIFOSize
Definition: canfd.h:782
uint32_t rxFIFO0waterMark
Definition: canfd.h:803
uint32_t wdcPreload
Definition: canfd.h:1228
@ CANFD_MCANOperationMode_NORMAL
Definition: canfd.h:303
uint32_t bit2
Definition: canfd.h:976
int32_t length
Option Length.
Definition: canfd.h:1107
uint32_t intrNum1
Definition: canfd.h:1056
int32_t CANFD_getOptions(CANFD_Handle handle, const CANFD_OptionTLV *ptrOptInfo)
Function is used by the application to get the error and status information from the driver.
uint32_t wkupReqEnable
Definition: canfd.h:1199
int32_t CANFD_setOptions(CANFD_Handle handle, const CANFD_OptionTLV *ptrOptInfo)
Function is used by the application to configure the driver options.
uint32_t rxElement
Rx buffer number used to receive data.
Definition: canfd.h:1579
CANFD_Direction direction
Message object direction.
Definition: canfd.h:1553
uint32_t errStatusInterrupts
Number of error and status interrupts received.
Definition: canfd.h:1365
@ CANFD_Reason_TX_CANCELED
Data transmission is succesfully canceled.
Definition: canfd.h:511
uint32_t bit1
Definition: canfd.h:1015
void CANFD_getRevisionId(CANFD_Handle canfdHandle)
This API is used get the MCAN revision ID.
uint32_t nomBrp
Definition: canfd.h:645
int32_t CANFD_write(CANFD_MsgObjHandle handle, uint32_t id, CANFD_MCANFrameType frameType, uint32_t numMsgs, const uint8_t *data)
Function used by the application to transmit data.
uint32_t rowNum
Definition: canfd.h:968
uint32_t interruptsRxed
Definition: canfd.h:1665
SemaphoreP_Object writeTransferSemObj
Definition: canfd.h:1436
CANFD_Reason
Definition: canfd.h:496
uint32_t txMemType
Definition: canfd.h:1074
This file contains the prototypes of the APIs present in the device abstraction layer file of MCAN....
uint32_t rxFIFO1waterMark
Definition: canfd.h:823
CANFD_Attrs * attrs
Definition: canfd.h:1466
uint32_t pxe
Definition: canfd.h:948
uint32_t eccInterrupts
Number of ECC interrupts received.
Definition: canfd.h:1375
void * filterConfig
void pointer to MCAN_ExtMsgIDFilterElement or MCAN_StdMsgIDFilterElement structure....
Definition: canfd.h:1627
uint32_t secErr
Definition: canfd.h:1000
CANFD_Option
Definition: canfd.h:554
uint32_t dataBrp
Definition: canfd.h:660
int32_t CANFD_readDmaConfig(CANFD_MsgObjHandle handle, const void *data, uint32_t numMsgs)
Function is used by the application to configure reading the received msgs from message ram....
uint32_t direction
Definition: canfd.h:1650
uint32_t emulationFAck
Definition: canfd.h:1217
@ CANFD_MCANElemSize_48BYTES
Definition: canfd.h:287
uint32_t tsSelect
Definition: canfd.h:1265
void * args
Pointer to be used by application to store rx buffer.
Definition: canfd.h:1620
uint32_t state
CANFD driver internal state.
Definition: canfd.h:1335
uint32_t errInterruptEnable
Definition: canfd.h:1302
uint32_t messageProcessed
Definition: canfd.h:1668
uint32_t rxFIFO0size
Definition: canfd.h:796
MCAN_MemType txMemType
Part of message ram to accessed by this message object. Refer enum MCAN_MemType.
Definition: canfd.h:1585
uint32_t CANFD_getTSCounterVal(CANFD_Handle canfdHandle)
This API will return current timestamp counter value.
uint32_t CANFD_clockStopReq(CANFD_Handle canfdHandle)
This API get clock stop acknowledgement for MCAN module. It return whether MCAN is power down mode or...
uint32_t baseAddr
Definition: canfd.h:1050
uint32_t rxFifoNum
FIFO Num (MCAN_RX_FIFO_NUM_0/MCAN_RX_FIFO_NUM_1).
Definition: canfd.h:1596
int32_t CANFD_writeDma(CANFD_MsgObjHandle handle, uint32_t id, CANFD_MCANFrameType frameType, uint32_t numMsgs, const void *data)
Function used by the application to initiate transmit data in dma mode. DMA mode is recommended to be...
CANFD_Config * canfdHandle
Pointer to the CANFD driver object.
Definition: canfd.h:1548
uint32_t enable
Definition: canfd.h:628
uint32_t dataLengthPerMsg
data length in Bytes for every message.
Definition: canfd.h:1484
uint32_t messageProcessed
Number of messages processed.
Definition: canfd.h:1606
int32_t CANFD_createRxRangeMsgObject(CANFD_Handle handle, CANFD_MessageObject *ptrCanMsgObj)
Function configures a receive message objects for a range of message identifiers. It also enables Rx ...