![Logo](ti_logo.svg) |
xWRL6432 MMWAVE-L-SDK
05.04.00.01
|
|
Go to the documentation of this file.
99 #include <drivers/mcan/v0/lld/mcan_lld.h>
100 #include <drivers/hw_include/cslr_soc.h>
106 #define ATTRIBUTE_WEAK __attribute__((weak))
111 #define MCAN_MAX_TX_MSG_OBJECTS (32U)
116 #define MCAN_MAX_RX_MSG_OBJECTS (32U)
121 #define MCAN_MAX_MSG_OBJECTS (MCAN_MAX_TX_MSG_OBJECTS + MCAN_MAX_RX_MSG_OBJECTS)
124 #define MCAN_MSG_RAM_STD_ELEM_SIZE (1U)
127 #define MCAN_MSG_RAM_EXT_ELEM_SIZE (2U)
130 #define MCAN_MSG_HEADER_SIZE (8U)
134 #define MCAN_MSG_RAM_TX_RX_ELEM_SIZE (18U)
137 #define XTD_MSGID_MASK (0x1fffffffU)
138 #define STD_MSGID_MASK (0x7ffU)
139 #define STD_MSGID_SHIFT (18U)
142 #define MCAN_MAX_PAYLOAD_BYTES (64U)
145 #define MCAN_MAX_RX_BUFFERS (64U)
148 #define MCAN_MAX_TX_BUFFERS (32U)
151 #define CANFD_UTILS_ARRAYSIZE(x) (sizeof(x) / sizeof(x[0]))
154 #define CANFD_UTILS_GETARRAYINDEX(member, array) (member - &array[0])
157 #define CANFD_UTILS_ARRAYISMEMBER(member, array) \
158 (((((uint32)member - (uint32) & array[0]) % sizeof(array[0])) == 0) \
159 && (member >= &array[0]) \
160 && (CANFD_UTILS_GETARRAYINDEX(member, array) < CANFD_UTILS_ARRAYSIZE(array)))
165 #define MCAN_INTR_MASK ((uint32_t)MCAN_INTR_SRC_RX_FIFO0_NEW_MSG | \
166 (uint32_t)MCAN_INTR_SRC_RX_FIFO0_MSG_LOST | \
167 (uint32_t)MCAN_INTR_SRC_RX_FIFO1_NEW_MSG | \
168 (uint32_t)MCAN_INTR_SRC_TRANS_COMPLETE | \
169 (uint32_t)MCAN_INTR_SRC_TRANS_CANCEL_FINISH | \
170 (uint32_t)MCAN_INTR_SRC_DEDICATED_RX_BUFF_MSG | \
171 (uint32_t)MCAN_INTR_SRC_PROTOCOL_ERR_ARB | \
172 (uint32_t)MCAN_INTR_SRC_PROTOCOL_ERR_DATA | \
173 (uint32_t)MCAN_INTR_SRC_BUS_OFF_STATUS)
176 #define CANFD_DMA_TX_COMPLETION_INTERMEDIATE (1U)
178 #define CANFD_DMA_TX_COMPLETION_FINAL (2U)
180 #define CANFD_DMA_RX_COMPLETION_INTERMEDIATE (1U)
182 #define CANFD_DMA_RX_COMPLETION_FINAL (2U)
190 typedef enum CANFDLLD_MCANElemSize_t
220 typedef enum CANFDLLD_DriverState_t
243 typedef enum CANFDLLD_MCANOperationMode_t
255 typedef enum CANFDLLD_Direction_t
267 typedef enum CANFDLLD_MCANXidType_t
279 typedef enum CANFDLLD_MCANFrameType_t
291 typedef enum CANFDLLD_MCANTimeOutSelect_t
309 typedef enum CANFDLLD_MCANECCErrType_t
321 typedef enum CANFDLLD_MCANLoopBackMode_t
336 typedef enum CANFDLLD_MCANCommState_t
354 typedef enum CANFDLLD_MCANErrCode_t
407 typedef enum CANFDLLD_Reason_t
451 typedef enum CANFDLLD_Option_t
511 typedef struct CANFDLLD_MCANLoopbackCfgParams_t
529 typedef struct CANFDLLD_MCANBitTimingParams_t
565 typedef struct CANFDLLD_MCANTdcConfig_t
581 typedef struct CANFDLLD_MCANGlobalFiltConfig_t
619 typedef struct CANFDLLD_MCANMsgRAMCfgParams_t
713 typedef struct CANFDLLD_MCANECCConfigParams_t
737 typedef struct CANFDLLD_MCANErrCntStatus_t
758 typedef struct CANFDLLD_MCANProtocolStatus_t
826 typedef struct CANFDLLD_MCANECCErrForceParams_t
856 typedef struct CANFDLLD_MCANECCErrStatus_t
889 typedef struct CANFDLLD_ErrStatusResp_t
904 typedef struct CANFDLLD_MCANInitParams_t
1066 typedef struct CANFDLLD_OptionTLV_t
1092 typedef struct CANFDLLD_Object_t
1112 uint8_t mcanDataSize[16];
1194 typedef struct CANFDLLD_DmaMsgConfig_s
1223 typedef struct CANFDLLD_DmaRxBuf_s
1240 typedef struct CANFDLLD_MessageObject_t
1329 typedef struct CANFDLLD_MCANMsgObjectStats_t
uint32_t transErrLogCnt
Definition: canfd_lld.h:740
uint32_t txEventFIFOWaterMark
Definition: canfd_lld.h:667
uint32_t rxElement
Rx buffer number used to receive data.
Definition: canfd_lld.h:1282
void * CANFDLLD_DmaHandle
Definition: canfd_lld.h:504
CANFDLLD_MessageObject * CANFDLLD_MsgObjHandle
CANFD message object handle returned by the CANFD_lld_createMsgObject() API call.
Definition: canfd_lld.h:1324
uint32_t txElement
Tx buffer number used to send data.
Definition: canfd_lld.h:1277
void CANFD_lld_int1Isr(CANFDLLD_Object *ptrCanFdObj)
uint32_t autoWkupEnable
Definition: canfd_lld.h:955
Data structure defines the parameters for bit timing calculation. Bit timing related to data phase wi...
Definition: canfd_lld.h:530
uint32_t rxFIFO1waterMark
Definition: canfd_lld.h:701
CANFDLLD_MCANElemSize
This enumeration defines the MCAN FIFO/Buffer element Size.
Definition: canfd_lld.h:191
Data structure defines the ECC Error Status.
Definition: canfd_lld.h:857
uint32_t tsSelect
Definition: canfd_lld.h:1015
@ CANFDLLD_Direction_TX
Definition: canfd_lld.h:261
uint32_t messageProcessed
Definition: canfd_lld.h:1349
uint32_t rrfe
Definition: canfd_lld.h:587
@ CANFDLLD_Option_MCAN_POWER_DOWN
Definition: canfd_lld.h:501
int32_t CANFD_lld_deInit(CANFDLLD_Handle handle)
Data structure defines the MCAN Transmitter Delay Compensation parameters.
Definition: canfd_lld.h:566
@ CANFDLLD_DriverState_SLEEP
Definition: canfd_lld.h:232
Data structure defines the MCAN ECC configuration parameters.
Definition: canfd_lld.h:714
ATTRIBUTE_WEAK void CANFD_dmaRxCompletionCallback(CANFDLLD_MessageObject *ptrCanMsgObj, 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 wdcPreload
Definition: canfd_lld.h:978
uint32_t interrupts
Number of interrupts received for message Tx or Rx.
Definition: canfd_lld.h:1137
@ CANFDLLD_MCANCommState_RECEIVER
Definition: canfd_lld.h:345
int32_t CANFD_lld_deleteDmaRxMsgObject(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_MessageObject *ptrCanMsgObj)
API to delete dma configuration for the Rx message object. Called from the CANFD_lld_deleteMsgObject.
uint32_t act
Definition: canfd_lld.h:768
CANFD Master Control Block.
Definition: canfd_lld.h:1093
@ CANFDLLD_MCANCommState_IDLE
Definition: canfd_lld.h:342
uint32_t busOffStatus
Definition: canfd_lld.h:787
int32_t length
Option Length.
Definition: canfd_lld.h:1076
int32_t CANFD_lld_createRxRangeMsgObject(CANFDLLD_Handle handle, CANFDLLD_MessageObject *ptrCanMsgObj)
Structure for MCAN Rx Buffer element.
Definition: mcan/v0/mcan.h:1381
@ CANFDLLD_Option_MCAN_ERROR_COUNTER
Definition: canfd_lld.h:458
uint32_t bit2
Definition: canfd_lld.h:842
uint32_t errInterruptEnable
Definition: canfd_lld.h:1052
uint32_t enableRdModWr
Definition: canfd_lld.h:731
uint32_t asmEnable
Definition: canfd_lld.h:1002
int32_t CANFD_lld_readDmaConfig(CANFDLLD_MsgObjHandle handle, void *data, uint32_t numDmaRxBuf)
uint32_t nomPseg2
Definition: canfd_lld.h:541
@ CANFDLLD_DriverState_UNINIT
Definition: canfd_lld.h:223
CANFDLLD_Option
This enumeration defines the values used to represent the GET/SET options.
Definition: canfd_lld.h:452
Data structure defines the software maintained message object statistics.
Definition: canfd_lld.h:1330
Options TLV data structure.
Definition: canfd_lld.h:1067
@ CANFDLLD_Reason_TX_COMPLETION
Data has been succesfully transmitted.
Definition: canfd_lld.h:417
CANFDLLD_Object * ptrCanFdObj
Pointer to the CANFD driver object.
Definition: canfd_lld.h:1257
uint32_t errForce
Definition: canfd_lld.h:850
uint32_t tdcv
Definition: canfd_lld.h:820
Response structure definition for Error and status information.
Definition: canfd_lld.h:890
uint32_t txFIFOSize
Definition: canfd_lld.h:647
@ CANFDLLD_MCANFrameType_CLASSIC
Definition: canfd_lld.h:282
uint32_t dmaEventNo
Dma Event number allocated for this message object.
Definition: canfd_lld.h:1307
uint32_t errStatusInterrupts
Number of error and status interrupts received.
Definition: canfd_lld.h:1132
uint32_t enableDmaMode
Enable dma mode for this message object.
Definition: canfd_lld.h:1302
MCAN_RxBufElement rxBuffElem
Buffer used to read message RAM.
Definition: canfd_lld.h:1172
uint32_t CANFD_lld_getFilterEventConfig(uint32_t eventNum)
uint32_t interruptsRxed
Definition: canfd_lld.h:1346
uint32_t recErrCnt
Definition: canfd_lld.h:743
#define MCAN_MAX_MSG_OBJECTS
Maximum number of message objects that can be supported by CANFD.
Definition: canfd_lld.h:121
uint32_t direction
Definition: canfd_lld.h:1335
@ CANFDLLD_MCANErrCode_STUFF_ERROR
Definition: canfd_lld.h:364
@ CANFDLLD_MCANElemSize_12BYTES
Definition: canfd_lld.h:196
@ CANFDLLD_MCANErrCode_BIT0_ERROR
Definition: canfd_lld.h:388
@ CANFDLLD_Option_MCAN_PROTOCOL_STATUS
Definition: canfd_lld.h:465
CANFDLLD_DriverState
This enumeration defines the values used to represent the CANFD driver state.
Definition: canfd_lld.h:221
uint32_t errPassive
Definition: canfd_lld.h:774
Data structure defines the MCAN error logging counters status.
Definition: canfd_lld.h:738
uint32_t messageObjNum
Allocated message object number.
Definition: canfd_lld.h:1272
int32_t CANFD_lld_deleteDmaTxMsgObject(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_MessageObject *ptrCanMsgObj)
API to delete dma configuration for the Tx message object. Called from the API CANFD_lld_deleteMsgObj...
uint32_t lse
Definition: canfd_lld.h:633
#define MCAN_MAX_RX_MSG_OBJECTS
Maximum number of Rx message objects that can be supported by CANFD.
Definition: canfd_lld.h:116
Data structure defines the MCAN Message RAM Configuration Parameters. Message RAM can contain followi...
Definition: canfd_lld.h:620
@ CANFDLLD_MCANXidType_29_BIT
Definition: canfd_lld.h:273
@ CANFDLLD_MCANErrCode_NO_ERROR
Definition: canfd_lld.h:359
uint32_t dataSjw
Definition: canfd_lld.h:559
@ CANFDLLD_MCANOperationMode_NORMAL
Definition: canfd_lld.h:246
uint32_t rfdf
Definition: canfd_lld.h:811
@ CANFDLLD_MCANOperationMode_SW_INIT
Definition: canfd_lld.h:249
int32_t CANFD_lld_writeCancel(CANFDLLD_MsgObjHandle handle)
uint32_t tsPrescalar
Definition: canfd_lld.h:1007
@ CANFDLLD_MCANElemSize_64BYTES
Definition: canfd_lld.h:214
uint32_t timeoutPreload
Definition: canfd_lld.h:1027
@ CANFDLLD_MCANElemSize_24BYTES
Definition: canfd_lld.h:205
int32_t CANFD_lld_cancelDmaTx(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_MessageObject *ptrCanMsgObj)
API to disbale dma event transfer for the Tx to cancel the transfer.
int32_t CANFD_lld_read(CANFDLLD_MsgObjHandle handle, uint32_t *id, CANFDLLD_MCANFrameType *ptrFrameType, CANFDLLD_MCANXidType *idType, uint32_t *ptrDataLength, uint8_t *data)
int32_t CANFD_lld_getOptions(CANFDLLD_Handle handle, CANFDLLD_OptionTLV *ptrOptInfo)
uint32_t rxFIFO1size
Definition: canfd_lld.h:694
const void * data
pointer to the data buffer. This should a 2d array of uint8[numMsgs][dataLengthPerMsg]
Definition: canfd_lld.h:1207
uint32_t pxe
Definition: canfd_lld.h:817
void CANFD_lld_int0Isr(CANFDLLD_Object *ptrCanFdObj)
Data structure defines the MCAN Global Filter Configuration parameters.
Definition: canfd_lld.h:582
@ CANFDLLD_MCANErrCode_CRC_ERROR
Definition: canfd_lld.h:394
uint32_t dataPseg1
Definition: canfd_lld.h:553
@ CANFDLLD_MCANXidType_11_BIT
Definition: canfd_lld.h:270
uint32_t errOnce
Definition: canfd_lld.h:847
uint32_t nomSjw
Definition: canfd_lld.h:544
uint32_t txpEnable
Definition: canfd_lld.h:923
CANFDLLD_Direction direction
Message object direction.
Definition: canfd_lld.h:1262
uint32_t rxFIFO0OpMode
Definition: canfd_lld.h:687
uint32_t header1
Definition: canfd_lld.h:1226
uint32_t nomPropSeg
Definition: canfd_lld.h:535
void * args
Pointer to be used by application to store miscellaneous data.
Definition: canfd_lld.h:1187
CANFDLLD_Reason
This enumeration describes a list of all the reasons for which the driver will invoke application cal...
Definition: canfd_lld.h:408
@ CANFDLLD_MCANElemSize_32BYTES
Definition: canfd_lld.h:208
uint32_t dataPseg2
Definition: canfd_lld.h:556
uint32_t resi
Definition: canfd_lld.h:798
@ CANFDLLD_Reason_PROTOCOL_ERR_DATA_PHASE
Protocol error in data phase detected.
Definition: canfd_lld.h:437
@ CANFDLLD_MCANElemSize_48BYTES
Definition: canfd_lld.h:211
uint32_t timeoutCntEnable
Definition: canfd_lld.h:1033
uint32_t enable
Definition: canfd_lld.h:518
uint32_t txBufMode
Definition: canfd_lld.h:653
CANFD Rx Buffer used in DMA mode.
Definition: canfd_lld.h:1224
CANFDLLD_MsgObjHandle handle
Definition: canfd_lld.h:1332
CANFDLLD_Object * CANFDLLD_Handle
CANFD module handle returned by the CANFD_lld_init() API call.
Definition: canfd_lld.h:1319
uint32_t lss
Definition: canfd_lld.h:626
uint32_t row
Definition: canfd_lld.h:873
uint32_t interruptsRxed
Number of interrupts received.
Definition: canfd_lld.h:1292
uint32_t tdco
Definition: canfd_lld.h:575
int32_t CANFD_lld_setOptions(CANFDLLD_Handle handle, const CANFDLLD_OptionTLV *ptrOptInfo)
uint32_t useFifoNum
Flag to toggle the usage of FIFO 0 and FIFO 1. Valid values are 0 and 1.
Definition: canfd_lld.h:1167
uint32_t txBufNum
Definition: canfd_lld.h:640
CANFDLLD_MCANLoopBackMode
This enumeration defines the MCAN Loopback mode.
Definition: canfd_lld.h:322
CANFDLLD_MCANECCErrStatus eccErrStatus
Definition: canfd_lld.h:894
@ CANFDLLD_DriverState_STOPPED
Definition: canfd_lld.h:229
CANFDLLD_Option type
Option Name.
Definition: canfd_lld.h:1071
CANFD DMA message configuration used for Tx.
Definition: canfd_lld.h:1195
@ CANFDLLD_MCANECCErrType_SEC
Definition: canfd_lld.h:312
void * value
Option Value.
Definition: canfd_lld.h:1081
int32_t CANFD_lld_writeDma(CANFDLLD_MsgObjHandle handle, uint32_t id, CANFDLLD_MCANFrameType frameType, uint32_t dataLengthPerMsg, uint32_t numMsgs, void *data)
CANFDLLD_MCANTdcConfig tdcConfig
Definition: canfd_lld.h:989
uint32_t canErrLogCnt
Definition: canfd_lld.h:752
uint32_t dedErr
Definition: canfd_lld.h:868
uint32_t brsEnable
Definition: canfd_lld.h:917
int32_t CANFD_lld_createDmaTxMsgObject(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_MessageObject *ptrCanMsgObj)
API to configure dma for the Tx message object. Called from the API CANFD_lld_createMsgObject.
uint32_t busOffInterrupts
Number of Bus-Off interrupts received.
Definition: canfd_lld.h:1147
uint32_t errType
Definition: canfd_lld.h:831
uint32_t currentMsgNum
Used by driver to store current message count out of the numMsgs already processed.
Definition: canfd_lld.h:1211
uint32_t eccInterrupts
Number of ECC interrupts received.
Definition: canfd_lld.h:1142
@ CANFDLLD_MCANTimeOutSelect_RX_FIFO0
Definition: canfd_lld.h:300
@ CANFDLLD_DriverState_STARTED
Definition: canfd_lld.h:226
uint32_t dataPropSeg
Definition: canfd_lld.h:550
uint32_t bit1
Definition: canfd_lld.h:877
uint32_t emulationEnable
Definition: canfd_lld.h:961
CANFDLLD_MCANTimeOutSelect timeoutSelect
Definition: canfd_lld.h:1020
uint32_t rrfs
Definition: canfd_lld.h:593
@ CANFDLLD_MCANLoopBackMode_INTERNAL
Definition: canfd_lld.h:324
@ CANFDLLD_MCANElemSize_20BYTES
Definition: canfd_lld.h:202
@ CANFDLLD_Direction_RX
Definition: canfd_lld.h:258
CANFDLLD_MCANInitParams initParams
CANFD driver init parameters.
Definition: canfd_lld.h:1107
CANFDLLD_MCANTimeOutSelect
This enumeration defines the MCAN timeout counter configuration.
Definition: canfd_lld.h:292
uint32_t wkupReqEnable
Definition: canfd_lld.h:949
int32_t CANFD_lld_init(CANFDLLD_Handle hCanfd)
uint32_t enable
Definition: canfd_lld.h:719
uint32_t MCAN_MemType
Enum to represent the MCAN Message RAM type.
Definition: mcan/v0/mcan.h:341
int32_t CANFD_lld_dmaClose(CANFDLLD_Handle canfdHandle)
API to close an CANFD DMA channel.
int32_t CANFD_lld_createDmaRxMsgObject(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_MessageObject *ptrCanMsgObj)
API to configure dma for the Rx message object. Called from the CANFD_lld_createMsgObject.
ATTRIBUTE_WEAK void CANFD_lld_errStatusAppCallBack(CANFDLLD_Handle handle, CANFDLLD_Reason reason, CANFDLLD_ErrStatusResp *errStatusResp)
Application specified callback function which is invoked by the CANFD driver on error or status chang...
#define MCAN_MAX_TX_MSG_OBJECTS
Maximum number of Tx message objects that can be supported by CANFD.
Definition: canfd_lld.h:111
@ CANFDLLD_MCANElemSize_16BYTES
Definition: canfd_lld.h:199
CAN message object block.
Definition: canfd_lld.h:1241
uint32_t tdcEnable
Definition: canfd_lld.h:984
@ CANFDLLD_MCANErrCode_NO_CHANGE
Definition: canfd_lld.h:400
uint32_t nomBrp
Definition: canfd_lld.h:532
uint32_t bit1
Definition: canfd_lld.h:839
int32_t CANFD_lld_configBitTime(CANFDLLD_Handle handle, const CANFDLLD_MCANBitTimingParams *bitTimeParams)
CANFDLLD_MCANErrCode
This enumeration defines the MCAN's Error Code.
Definition: canfd_lld.h:355
CANFDLLD_MCANCommState
This enumeration defines the MCAN's communication state.
Definition: canfd_lld.h:337
ATTRIBUTE_WEAK void CANFD_lld_dataAppCallBack(CANFDLLD_MsgObjHandle handle, CANFDLLD_Reason reason)
Application specified callback function which is invoked by the CANFD driver once transmit is complet...
void * CANFDLLD_DmaChConfig
Definition: canfd_lld.h:506
uint32_t regBaseAddress
Base address of the register address space to be used.
Definition: canfd_lld.h:1097
@ CANFDLLD_Option_MCAN_MSG_OBJECT_STATS
Definition: canfd_lld.h:474
@ CANFDLLD_MCANErrCode_ACK_ERROR
Definition: canfd_lld.h:370
uint32_t dataInterruptEnable
Definition: canfd_lld.h:1056
CANFDLLD_DmaMsgConfig dmaMsgConfig
Dma message configuration.
Definition: canfd_lld.h:1312
@ CANFDLLD_MCANTimeOutSelect_CONT
Definition: canfd_lld.h:294
@ CANFDLLD_Option_MCAN_LOOPBACK
Definition: canfd_lld.h:490
CANFDLLD_MCANFrameType
This enumeration defines the CAN frame type.
Definition: canfd_lld.h:280
uint32_t monEnable
Definition: canfd_lld.h:995
uint32_t anfs
Definition: canfd_lld.h:607
@ CANFDLLD_MCANLoopBackMode_EXTERNAL
Definition: canfd_lld.h:330
CANFDLLD_MCANLoopBackMode mode
Definition: canfd_lld.h:521
uint32_t fdMode
Definition: canfd_lld.h:910
uint32_t darEnable
Definition: canfd_lld.h:943
Data structure defines the MCAN protocol status.
Definition: canfd_lld.h:759
CANFDLLD_MCANProtocolStatus protocolStatus
Definition: canfd_lld.h:897
uint32_t rxFIFO0waterMark
Definition: canfd_lld.h:681
uint32_t endMsgIdentifier
Definition: canfd_lld.h:1343
uint32_t clkStopFAck
Definition: canfd_lld.h:973
uint32_t nomPseg1
Definition: canfd_lld.h:538
uint32_t rbrs
Definition: canfd_lld.h:804
uint32_t protoDataErrInterrupts
Number of Protocol error in data phase interrupts received.
Definition: canfd_lld.h:1152
uint32_t rowNum
Definition: canfd_lld.h:834
uint32_t messageProcessed
Number of messages processed.
Definition: canfd_lld.h:1297
uint32_t enableChk
Definition: canfd_lld.h:725
CANFDLLD_MCANXidType msgIdType
Message object type.
Definition: canfd_lld.h:1267
uint32_t secErr
Definition: canfd_lld.h:862
uint32_t rxFIFO0size
Definition: canfd_lld.h:674
Data structure defines the MCAN initialization parameters.
Definition: canfd_lld.h:905
uint32_t pxhddisable
Definition: canfd_lld.h:936
uint32_t warningStatus
Definition: canfd_lld.h:781
@ CANFDLLD_MCANErrCode_FORM_ERROR
Definition: canfd_lld.h:367
int32_t CANFD_lld_createMsgObject(CANFDLLD_Handle handle, CANFDLLD_MessageObject *ptrCanMsgObj)
@ CANFDLLD_MCANTimeOutSelect_TX_EVENT_FIFO
Definition: canfd_lld.h:297
uint32_t anfe
Definition: canfd_lld.h:600
uint32_t txEventFIFOSize
Definition: canfd_lld.h:660
uint32_t numMsgs
Number of messages.
Definition: canfd_lld.h:1203
@ CANFDLLD_Reason_TX_CANCELED
Data transmission is succesfully canceled.
Definition: canfd_lld.h:422
int32_t CANFD_lld_dmaOpen(CANFDLLD_Handle canfdHandle, CANFDLLD_DmaChConfig dmaChCfg)
API to open an CANFD DMA channel.
uint32_t rpStatus
Definition: canfd_lld.h:749
CANFDLLD_DriverState state
CANFD driver internal state.
Definition: canfd_lld.h:1102
int32_t CANFD_lld_write(CANFDLLD_MsgObjHandle handle, uint32_t id, CANFDLLD_MCANFrameType frameType, uint32_t dataLength, const uint8_t *data)
int32_t CANFD_lld_deleteMsgObject(CANFDLLD_MsgObjHandle handle)
@ CANFDLLD_Option_MCAN_MODE
Definition: canfd_lld.h:482
@ CANFDLLD_MCANCommState_TRANSMITTER
Definition: canfd_lld.h:348
uint32_t protoArbErrInterrupts
Number of Protocol error in arbitration phase interrupts received.
Definition: canfd_lld.h:1157
int32_t CANFD_lld_configureDmaRx(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_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_lld_readDma.
uint32_t dataBrp
Definition: canfd_lld.h:547
uint32_t startMsgId
Starting range of the Message Id to which the configuration belongs. For Tx and single Message Id obj...
Definition: canfd_lld.h:1246
MCAN_MemType memType
Part of message ram to accessed by this message object. Refer enum MCAN_MemType.
Definition: canfd_lld.h:1287
@ CANFDLLD_Reason_BUSOFF
Bus Off condition detected.
Definition: canfd_lld.h:432
@ CANFDLLD_MCANTimeOutSelect_RX_FIFO1
Definition: canfd_lld.h:303
Data structure defines the ECC Error forcing.
Definition: canfd_lld.h:827
uint32_t startMsgIdentifier
Definition: canfd_lld.h:1339
@ CANFDLLD_MCANECCErrType_DED
Definition: canfd_lld.h:315
@ CANFDLLD_Reason_RX
Data has been received and the application is required to read and process the data.
Definition: canfd_lld.h:412
uint32_t emulationFAck
Definition: canfd_lld.h:967
CANFDLLD_MCANXidType
This enumeration defines the values used to represent the CAN Identifier Type.
Definition: canfd_lld.h:268
CANFDLLD_MCANECCErrType
This enumeration defines the MCAN ECC Error Types.
Definition: canfd_lld.h:310
int32_t CANFD_lld_writeDmaTriggerNext(CANFDLLD_MsgObjHandle handle)
uint32_t dlec
Definition: canfd_lld.h:792
uint32_t lastErrCode
Definition: canfd_lld.h:763
CANFDLLD_DmaChConfig canfdDmaChCfg
Pointer to Dma channel configuration.
Definition: canfd_lld.h:1182
CANFDLLD_DmaHandle canfdDmaHandle
Dma driver handle.
Definition: canfd_lld.h:1177
@ CANFDLLD_Reason_PROTOCOL_ERR_ARB_PHASE
Protocol error in arbitration phase detected.
Definition: canfd_lld.h:442
uint32_t endMsgId
Ending range of the Message Id to which the configuration belongs For Tx and single Message Id object...
Definition: canfd_lld.h:1252
@ CANFDLLD_MCANElemSize_8BYTES
Definition: canfd_lld.h:193
uint32_t header2
Definition: canfd_lld.h:1228
#define ATTRIBUTE_WEAK
Definition: canfd_lld.h:106
uint32_t dataLengthPerMsg
data length in Bytes for every message.
Definition: canfd_lld.h:1199
CANFDLLD_MCANMsgRAMCfgParams msgRAMConfig
Definition: canfd_lld.h:1043
int32_t CANFD_lld_configureDmaTx(CANFDLLD_Object *ptrCanFdObj, CANFDLLD_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_lld_writeDma.
CANFDLLD_Direction
This enumeration defines the values used to set the direction of message object.
Definition: canfd_lld.h:256
@ CANFDLLD_MCANCommState_SYNCHRONIZING
Definition: canfd_lld.h:339
Data structure defines the MCAN Loopback parameters.
Definition: canfd_lld.h:512
@ CANFDLLD_Reason_ECC_ERROR
Data has been succesfully transmitted.
Definition: canfd_lld.h:427
uint32_t bit2
Definition: canfd_lld.h:882
uint32_t tdcf
Definition: canfd_lld.h:570
ATTRIBUTE_WEAK void CANFD_dmaTxCompletionCallback(CANFDLLD_MessageObject *ptrCanMsgObj, void *data, uint32_t completionType)
Callback function for the Tx completion. This is called for each message in the array of msgs provide...
CANFDLLD_MCANGlobalFiltConfig filterConfig
Definition: canfd_lld.h:1038
@ CANFDLLD_MCANFrameType_FD
Definition: canfd_lld.h:285
CANFDLLD_MCANOperationMode
Enumerates the values used to represent the MCAN mode of operation.
Definition: canfd_lld.h:244
uint32_t efbi
Definition: canfd_lld.h:930
uint32_t rxFIFO1OpMode
Definition: canfd_lld.h:707
CANFDLLD_MCANECCConfigParams eccConfig
Definition: canfd_lld.h:1048
@ CANFDLLD_MCANErrCode_BIT1_ERROR
Definition: canfd_lld.h:377