 |
AM263Px MCU+ SDK
11.00.00
|
|
Go to the documentation of this file.
101 #include <drivers/hw_include/cslr_soc.h>
104 #include <drivers/mcan/v0/dma/canfd_dma.h>
118 #define MCAN_STATUS_SUCCESS ((int32_t)0)
123 #define MCAN_STATUS_FAILURE ((int32_t)-1)
145 #define CANFD_TRANSFER_MODE_BLOCKING (0U)
150 #define CANFD_TRANSFER_MODE_CALLBACK (1U)
161 #define CANFD_OPER_MODE_POLLED (0U)
162 #define CANFD_OPER_MODE_INTERRUPT (1U)
163 #define CANFD_OPER_MODE_DMA (2U)
174 #define MCAN_MSG_RAM_STD_ELEM_SIZE (1U)
177 #define MCAN_MSG_RAM_EXT_ELEM_SIZE (2U)
180 #define MCAN_MSG_HEADER_SIZE (8U)
183 #define MCAN_FRAME_TYPE_FD (1U)
187 #define MCAN_MSG_RAM_TX_RX_ELEM_SIZE (18U)
190 #define XTD_MSGID_MASK (0x1fffffffU)
191 #define STD_MSGID_MASK (0x7ffU)
192 #define STD_MSGID_SHIFT (18U)
195 #define MCAN_MAX_PAYLOAD_BYTES (64U)
198 #define MCAN_MAX_RX_BUFFERS (64U)
201 #define MCAN_MAX_TX_BUFFERS (32U)
204 #define CANFD_UTILS_ARRAYSIZE(x) (sizeof(x) / sizeof(x[0]))
207 #define CANFD_UTILS_GETARRAYINDEX(member, array) (member - &array[0])
210 #define CANFD_UTILS_ARRAYISMEMBER(member, array) \
211 (((((uint32)member - (uint32) & array[0]) % sizeof(array[0])) == 0) \
212 && (member >= &array[0]) \
213 && (CANFD_UTILS_GETARRAYINDEX(member, array) < CANFD_UTILS_ARRAYSIZE(array)))
218 #define MCAN_INTR_MASK ((uint32_t)MCAN_INTR_SRC_RX_FIFO0_NEW_MSG | \
219 (uint32_t)MCAN_INTR_SRC_RX_FIFO0_MSG_LOST | \
220 (uint32_t)MCAN_INTR_SRC_RX_FIFO1_NEW_MSG | \
221 (uint32_t)MCAN_INTR_SRC_TRANS_COMPLETE | \
222 (uint32_t)MCAN_INTR_SRC_TRANS_CANCEL_FINISH | \
223 (uint32_t)MCAN_INTR_SRC_DEDICATED_RX_BUFF_MSG | \
224 (uint32_t)MCAN_INTR_SRC_PROTOCOL_ERR_ARB | \
225 (uint32_t)MCAN_INTR_SRC_PROTOCOL_ERR_DATA | \
226 (uint32_t)MCAN_INTR_SRC_RX_FIFO1_MSG_LOST | \
227 (uint32_t)MCAN_INTR_SRC_BUS_OFF_STATUS)
230 #define CANFD_DMA_TX_COMPLETION_INTERMEDIATE (1U)
232 #define CANFD_DMA_TX_COMPLETION_FINAL (2U)
234 #define CANFD_DMA_RX_COMPLETION_INTERMEDIATE (1U)
236 #define CANFD_DMA_RX_COMPLETION_FINAL (2U)
239 #define CANFD_MAX_DLC_MAPPING (16U)
252 #define CANFD_DRIVER_STATE_UNINIT (0U)
254 #define CANFD_DRIVER_STATE_STARTED (1U)
256 #define CANFD_DRIVER_STATE_STOPPED (2U)
258 #define CCANFD_DRIVER_STATE_SLEEP (3U)
267 typedef enum CANFD_MCANElemSize_t
301 typedef enum CANFD_MCANOperationMode_t
317 typedef enum CANFD_Direction_t
333 typedef enum CANFD_MCANXidType_t
348 typedef enum CANFD_MCANFrameType_t
363 typedef enum CANFD_MCANTimeOutSelect_t
388 #define CANFD_MCAN_ECC_ERR_TYPE_SEC (0U)
390 #define CANFD_MCAN_ECC_ERR_TYPE_DED (1U)
400 typedef enum CANFD_MCANLoopBackMode_t
419 typedef enum CANFD_MCANCommState_t
440 typedef enum CANFD_MCANErrCode_t
496 typedef enum CANFD_Reason_t
554 typedef enum CANFD_Option_t
618 typedef struct CANFD_MCANLoopbackCfgParams_t
639 typedef struct CANFD_MCANBitTimingParams_t
678 typedef struct CANFD_MCANTdcConfig_t
697 typedef struct CANFD_MCANGlobalFiltConfig_t
738 typedef struct CANFD_MCANMsgRAMCfgParams_t
835 typedef struct CANFD_MCANECCConfigParams_t
862 typedef struct CANFD_MCANErrCntStatus_t
886 typedef struct CANFD_MCANProtocolStatus_t
957 typedef struct CANFD_MCANECCErrForceParams_t
991 typedef struct CANFD_MCANECCErrStatus_t
1027 typedef union CANFD_ErrStatusResp_t
1044 typedef struct CANFD_Attrs_s
1094 typedef struct CANFD_OptionTLV_t
1141 typedef struct CANFD_OpenParams_t
1317 typedef struct CANFD_Object_t
1461 typedef struct CANFD_Config_s
1476 typedef struct CANFD_DmaMsgConfig_s
1508 typedef struct CANFD_DmaRxBuf_s
1528 typedef struct CANFD_MessageObject_t
1641 typedef struct CANFD_MCANMsgObjectStats_t
1798 const uint8_t* data);
1837 uint32_t numMsgs,
const void* data);
2018 uint32_t numMsgs,
const void* data);
2045 const void *data, uint32_t completionType);
2083 uint32_t dataLengthPerMsg, uint32_t numMsgs,
2100 uint32_t completionType);
CANFD_MCANECCErrStatus eccErrStatus
Definition: canfd.h:1030
int32_t CANFD_dmaClose(CANFD_Handle canfdHandle)
API to close an CANFD DMA channel.
uint32_t tdco
Definition: canfd.h:688
CANFD_Handle handle
Instance handle to which this object belongs.
Definition: canfd.h:1322
uint32_t errType
Definition: canfd.h:962
uint32_t txBufMode
Definition: canfd.h:772
uint32_t txEventFIFOWaterMark
Definition: canfd.h:786
@ CANFD_MCANElemSize_64BYTES
Definition: canfd.h:291
uint32_t warningStatus
Definition: canfd.h:909
@ CANFD_MCANTimeOutSelect_RX_FIFO0
Definition: canfd.h:372
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:1074
uint32_t tdcv
Definition: canfd.h:948
uint32_t rrfe
Definition: canfd.h:703
@ CANFD_MCANCommState_TRANSMITTER
Definition: canfd.h:431
uint32_t rbrs
Definition: canfd.h:932
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:915
CANFD_Object * object
Definition: canfd.h:1465
void CANFD_deinit(void)
This function de-initializes each driver instance object and delete a driver lock.
HwiP_Object hwiObj0
Definition: canfd.h:1439
uint32_t dataPseg2
Definition: canfd.h:666
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:669
void * args
Pointer to be used by application to store miscellaneous data.
Definition: canfd.h:1417
@ CANFD_MCANErrCode_STUFF_ERROR
Definition: canfd.h:450
int32_t CANFD_dmaOpen(CANFD_Handle canfdHandle, CANFD_DmaChConfig dmaChCfg)
API to open an CANFD DMA channel.
uint32_t errPassive
Definition: canfd.h:902
uint32_t timeoutPreload
Definition: canfd.h:1274
CANFD_MCANErrCode
Definition: canfd.h:441
CANFD_MCANElemSize
Definition: canfd.h:268
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:1493
uint32_t act
Definition: canfd.h:896
uint32_t transErrLogCnt
Definition: canfd.h:865
Structure for MCAN Rx Buffer element.
Definition: mcan.h:1491
@ CANFD_Option_MCAN_MSG_OBJECT_STATS
Definition: canfd.h:581
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:1659
uint32_t asmEnable
Definition: canfd.h:1249
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:285
@ CANFD_Option_MCAN_LOOPBACK
Definition: canfd.h:598
uint32_t nomSjw
Definition: canfd.h:654
uint32_t interrupts
Number of interrupts received for message Tx or Rx.
Definition: canfd.h:1367
@ CANFD_Reason_BUSOFF
Bus Off condition detected.
Definition: canfd.h:522
uint32_t dlec
Definition: canfd.h:920
uint32_t darEnable
Definition: canfd.h:1190
@ CANFD_MCANTimeOutSelect_TX_EVENT_FIFO
Definition: canfd.h:369
@ CANFD_Reason_PROTOCOL_ERR_DATA_PHASE
Protocol error in data phase detected.
Definition: canfd.h:527
uint32_t gCANFDConfigNum
Externally defined driver configuration array size.
uint32_t brsEnable
Definition: canfd.h:1164
uint32_t enableChk
Definition: canfd.h:847
uint32_t dmaEventNo
Dma Event number allocated for this message object.
Definition: canfd.h:1608
@ CANFD_Option_MCAN_POWER_DOWN
Definition: canfd.h:609
@ CANFD_MCANTimeOutSelect_RX_FIFO1
Definition: canfd.h:375
uint32_t timeoutCntEnable
Definition: canfd.h:1280
const void * data
pointer to the data buffer. This should a 2d array of uint8[numMsgs][dataLengthPerMsg]
Definition: canfd.h:1489
uint32_t protoArbErrInterrupts
Number of Protocol error in arbitration phase interrupts received.
Definition: canfd.h:1387
CANFD_MCANCommState
Definition: canfd.h:420
CANFD_MCANLoopBackMode
Definition: canfd.h:401
uint32_t tsPrescalar
Definition: canfd.h:1254
CANFD_DmaHandle canfdDmaHandle
Dma driver handle.
Definition: canfd.h:1407
CANFD_TransferCallbackFxn transferCallbackFxn
Definition: canfd.h:1148
CANFD_MCANFrameType
Definition: canfd.h:349
uint32_t protoDataErrInterrupts
Number of Protocol error in data phase interrupts received.
Definition: canfd.h:1382
uint32_t emulationEnable
Definition: canfd.h:1208
CANFD_MCANXidType msgIdType
Message object type.
Definition: canfd.h:1555
@ CANFD_Reason_ECC_ERROR
Data has been succesfully transmitted.
Definition: canfd.h:517
void * readTransferSem
Definition: canfd.h:1421
uint32_t rrfs
Definition: canfd.h:709
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:1412
#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:651
uint32_t busOffInterrupts
Number of Bus-Off interrupts received.
Definition: canfd.h:1377
void * writeTransferSem
Definition: canfd.h:1429
@ CANFD_MCANFrameType_CLASSIC
Definition: canfd.h:351
CANFD_MsgObjHandle handle
Definition: canfd.h:1644
@ CANFD_MCANCommState_SYNCHRONIZING
Definition: canfd.h:422
@ CANFD_Reason_SRC_RX_FIFO1_MSG_LOST
Rx FIFO 1 Message Lost.
Definition: canfd.h:542
#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:1566
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:1540
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:1119
uint32_t bit1
Definition: canfd.h:970
@ CANFD_MCANErrCode_NO_CHANGE
Definition: canfd.h:486
uint32_t resi
Definition: canfd.h:926
struct CANFD_Config_s * CANFD_Handle
A handle that is returned from a CANFD_open() call.
Definition: canfd.h:107
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:1303
@ CANFD_MCANElemSize_16BYTES
Definition: canfd.h:276
@ CANFD_Option_MCAN_MODE
Definition: canfd.h:589
CANFD_MessageObject * CANFD_MsgObjHandle
Definition: canfd.h:1633
void * hwiHandle
Definition: canfd.h:1436
uint32_t canErrLogCnt
Definition: canfd.h:877
MCAN_RevisionId revId
Definition: canfd.h:1445
void CANFD_resetTSCounter(CANFD_Handle canfdHandle)
This API will reset timestamp counter value.
CANFD_MCANProtocolStatus protocolStatus
Definition: canfd.h:1033
@ CANFD_MCANErrCode_BIT1_ERROR
Definition: canfd.h:463
@ CANFD_MCANXidType_29_BIT
Definition: canfd.h:339
uint32_t operMode
Definition: canfd.h:1056
CANFD_DmaMsgConfig dmaMsgConfig
Dma message configuration.
Definition: canfd.h:1612
@ CANFD_Direction_TX
Definition: canfd.h:323
@ CANFD_Reason_RX
Data has been received and the application is required to read and process the data.
Definition: canfd.h:502
void * value
Option Value.
Definition: canfd.h:1109
uint32_t enable
Definition: canfd.h:841
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:1534
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:1571
uint32_t enableRdModWr
Definition: canfd.h:853
void CANFD_close(CANFD_Handle handle)
Function to close a CANFD peripheral specified by the CANFD handle.
uint32_t rxFIFO1size
Definition: canfd.h:813
uint32_t messageObjNum
Allocated message object number.
Definition: canfd.h:1560
int32_t CANFD_isDataSizeValid(uint32_t dataSize)
Function to validate the data Size.
CANFD_OpenParams * openParams
CANFD driver init parameters.
Definition: canfd.h:1337
uint32_t CANFD_getRxPinState(CANFD_Handle canfdHandle)
This API will return Rx pin state of MCAN module.
CANFD_MCANLoopbackCfgParams CANFDMcanloopbackParams
Definition: canfd.h:1065
uint32_t txpEnable
Definition: canfd.h:1170
uint8_t intrPriority
Definition: canfd.h:1059
@ CANFD_Reason_TX_COMPLETION
Data has been succesfully transmitted.
Definition: canfd.h:507
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:1129
uint32_t CANFD_MCANECCErrType
This enumeration defines the MCAN ECC Error Types.
Definition: canfd.h:386
uint32_t OptionTLVtype
Definition: canfd.h:1062
uint32_t row
Definition: canfd.h:1008
@ CANFD_MCANElemSize_20BYTES
Definition: canfd.h:279
@ CANFD_MCANErrCode_BIT0_ERROR
Definition: canfd.h:474
@ CANFD_MCANTimeOutSelect_CONT
Definition: canfd.h:366
@ CANFD_MCANElemSize_8BYTES
Definition: canfd.h:270
@ CANFD_MCANElemSize_24BYTES
Definition: canfd.h:282
uint32_t dataPseg1
Definition: canfd.h:663
uint32_t intrNum0
Definition: canfd.h:1050
uint32_t anfs
Definition: canfd.h:723
CANFD_MCANBitTimingParams CANFDMcanBitTimingParams
Definition: canfd.h:1068
CANFD_MCANLoopBackMode mode
Definition: canfd.h:628
uint32_t rpStatus
Definition: canfd.h:874
uint32_t txBufNum
Definition: canfd.h:759
@ CANFD_MCANOperationMode_SW_INIT
Definition: canfd.h:307
@ CANFD_MCANFrameType_FD
Definition: canfd.h:354
CANFD_Option type
Option Name.
Definition: canfd.h:1099
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:1598
SemaphoreP_Object readTransferSemObj
Definition: canfd.h:1425
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:562
uint32_t tdcEnable
Definition: canfd.h:1231
@ CANFD_MCANLoopBackMode_INTERNAL
Definition: canfd.h:403
uint32_t errOnce
Definition: canfd.h:978
uint32_t rfdf
Definition: canfd.h:939
uint32_t efbi
Definition: canfd.h:1177
uint32_t clkStopFAck
Definition: canfd.h:1220
#define MCAN_MAX_RX_BUFFERS
Maximum number of Rx buffers.
Definition: canfd.h:198
void CANFD_getBitTime(CANFD_Handle canfdHandle)
This API will get the configured bit timings for MCAN module.
CANFD_ErrorCallbackFxn errorCallbackFxn
Definition: canfd.h:1151
@ CANFD_MCANLoopBackMode_EXTERNAL
Definition: canfd.h:409
uint32_t CANFD_getFilterEventConfig(uint32_t eventNum)
@ CANFD_MCANErrCode_FORM_ERROR
Definition: canfd.h:453
uint32_t pxhddisable
Definition: canfd.h:1183
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:334
@ CANFD_MCANErrCode_CRC_ERROR
Definition: canfd.h:480
@ CANFD_MCANElemSize_12BYTES
Definition: canfd.h:273
uint32_t dedErr
Definition: canfd.h:1003
uint32_t rxFIFO1OpMode
Definition: canfd.h:826
uint32_t tdcf
Definition: canfd.h:683
@ CANFD_MCANXidType_11_BIT
Definition: canfd.h:336
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:1588
uint32_t MCAN_MemType
Enum to represent the MCAN Message RAM type.
Definition: mcan.h:451
uint32_t lss
Definition: canfd.h:745
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:456
uint32_t startMsgIdentifier
Definition: canfd.h:1653
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:425
uint32_t fdMode
Definition: canfd.h:1157
uint32_t transferMode
Definition: canfd.h:1145
uint32_t lse
Definition: canfd.h:752
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:1442
CANFD_MCANTdcConfig tdcConfig
Definition: canfd.h:1236
int32_t CANFD_deleteMsgObject(CANFD_MsgObjHandle handle)
Function deletes a message object.
uint32_t dataPropSeg
Definition: canfd.h:660
uint32_t numMsgs
Number of messages.
Definition: canfd.h:1485
CANFD_MCANGlobalFiltConfig filterConfig
Definition: canfd.h:1285
uint32_t useFifoNum
Flag to toggle the usage of FIFO 0 and FIFO 1. Valid values are 0 and 1.
Definition: canfd.h:1397
void * filterConfig
void pointer to MCAN_ExtMsgIDFilterElement or MCAN_StdMsgIDFilterElement structure....
Definition: canfd.h:1081
uint32_t txFIFOSize
Definition: canfd.h:766
uint32_t header1
Definition: canfd.h:1511
CANFD_MCANMsgRAMCfgParams msgRAMConfig
Definition: canfd.h:1290
@ CANFD_Reason_SRC_RX_FIFO0_MSG_LOST
Rx FIFO 0 Message Lost.
Definition: canfd.h:537
uint32_t recErrCnt
Definition: canfd.h:868
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:142
void CANFD_int0Isr(void *args)
The function is the registered interrupt 0 ISR for the CANFD Driver.
uint32_t autoWkupEnable
Definition: canfd.h:1202
CANFD_Direction
Definition: canfd.h:318
uint32_t nomPropSeg
Definition: canfd.h:645
uint32_t rxFIFO0OpMode
Definition: canfd.h:806
@ CANFD_Option_MCAN_PROTOCOL_STATUS
Definition: canfd.h:570
uint32_t anfe
Definition: canfd.h:716
uint32_t errForce
Definition: canfd.h:981
uint32_t monEnable
Definition: canfd.h:1242
uint32_t bit2
Definition: canfd.h:1017
@ CANFD_MCANErrCode_NO_ERROR
Definition: canfd.h:445
#define CANFD_MAX_DLC_MAPPING
Maximum data to DLC mapping supported. Refer MCAN_DataLengthSize.
Definition: canfd.h:239
@ CANFD_Reason_PROTOCOL_ERR_ARB_PHASE
Protocol error in arbitration phase detected.
Definition: canfd.h:532
CANFD_MCANOperationMode
Definition: canfd.h:302
uint32_t lastErrCode
Definition: canfd.h:891
uint32_t nomPseg1
Definition: canfd.h:648
CANFD_MCANTimeOutSelect
Definition: canfd.h:364
@ CANFD_Direction_RX
Definition: canfd.h:320
CANFD_MCANTimeOutSelect timeoutSelect
Definition: canfd.h:1267
CANFD_MCANECCConfigParams eccConfig
Definition: canfd.h:1295
@ CANFD_MCANCommState_RECEIVER
Definition: canfd.h:428
MCAN_RxBufElement rxBuffElem
Buffer used to read message RAM.
Definition: canfd.h:1402
uint32_t regBaseAddress
Base address of the register address space to be used.
Definition: canfd.h:1327
uint32_t header2
Definition: canfd.h:1513
uint32_t txEventFIFOSize
Definition: canfd.h:779
uint32_t rxFIFO0waterMark
Definition: canfd.h:800
uint32_t wdcPreload
Definition: canfd.h:1225
@ CANFD_MCANOperationMode_NORMAL
Definition: canfd.h:304
uint32_t bit2
Definition: canfd.h:973
int32_t length
Option Length.
Definition: canfd.h:1104
uint32_t intrNum1
Definition: canfd.h:1053
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:1196
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:1576
CANFD_Direction direction
Message object direction.
Definition: canfd.h:1550
uint32_t errStatusInterrupts
Number of error and status interrupts received.
Definition: canfd.h:1362
@ CANFD_Reason_TX_CANCELED
Data transmission is succesfully canceled.
Definition: canfd.h:512
uint32_t bit1
Definition: canfd.h:1012
void CANFD_getRevisionId(CANFD_Handle canfdHandle)
This API is used get the MCAN revision ID.
uint32_t nomBrp
Definition: canfd.h:642
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:965
uint32_t interruptsRxed
Definition: canfd.h:1662
SemaphoreP_Object writeTransferSemObj
Definition: canfd.h:1433
CANFD_Reason
Definition: canfd.h:497
uint32_t txMemType
Definition: canfd.h:1071
This file contains the prototypes of the APIs present in the device abstraction layer file of MCAN....
uint32_t rxFIFO1waterMark
Definition: canfd.h:820
CANFD_Attrs * attrs
Definition: canfd.h:1463
uint32_t pxe
Definition: canfd.h:945
uint32_t eccInterrupts
Number of ECC interrupts received.
Definition: canfd.h:1372
void * filterConfig
void pointer to MCAN_ExtMsgIDFilterElement or MCAN_StdMsgIDFilterElement structure....
Definition: canfd.h:1624
uint32_t secErr
Definition: canfd.h:997
CANFD_Option
Definition: canfd.h:555
uint32_t dataBrp
Definition: canfd.h:657
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:1647
uint32_t emulationFAck
Definition: canfd.h:1214
@ CANFD_MCANElemSize_48BYTES
Definition: canfd.h:288
uint32_t tsSelect
Definition: canfd.h:1262
void * args
Pointer to be used by application to store rx buffer.
Definition: canfd.h:1617
uint32_t state
CANFD driver internal state.
Definition: canfd.h:1332
uint32_t errInterruptEnable
Definition: canfd.h:1299
uint32_t messageProcessed
Definition: canfd.h:1665
uint32_t rxFIFO0size
Definition: canfd.h:793
MCAN_MemType txMemType
Part of message ram to accessed by this message object. Refer enum MCAN_MemType.
Definition: canfd.h:1582
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:1047
uint32_t rxFifoNum
FIFO Num (MCAN_RX_FIFO_NUM_0/MCAN_RX_FIFO_NUM_1).
Definition: canfd.h:1593
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:1545
uint32_t enable
Definition: canfd.h:625
uint32_t dataLengthPerMsg
data length in Bytes for every message.
Definition: canfd.h:1481
uint32_t messageProcessed
Number of messages processed.
Definition: canfd.h:1603
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 ...