--- /dev/null
+/*\r
+* Configuration of module: CanIf (CanIf_Cfg.c)\r
+*\r
+* Created by: ArcCore\r
+* Copyright: \r
+*\r
+* Configured for (MCU): TMS570\r
+*\r
+* Module vendor: ArcCore\r
+* Generator version: 2.0.6\r
+*\r
+* Generated by Arctic Studio (http://arccore.com) \r
+*/\r
+\r
+\r
+ \r
+#include "CanIf.h"\r
+#if defined(USE_CANTP)\r
+#include "CanTp.h"\r
+#include "CanTp_Cbk.h"\r
+#endif\r
+#if defined(USE_J1939TP)\r
+#include "J1939Tp.h"\r
+#include "J1939Tp_Cbk.h"\r
+#endif\r
+#if defined(USE_PDUR)\r
+#include "PduR.h"\r
+#endif\r
+#if defined(USE_CANNM)\r
+#include "CanNm_Cbk.h"\r
+#endif\r
+#include <stdlib.h>\r
+\r
+\r
+// Imported structs from Can_Lcfg.c\r
+extern const Can_ControllerConfigType CanControllerConfigData[];\r
+extern const Can_ConfigSetType CanConfigSetData;\r
+\r
+\r
+\r
+\r
+// Contains the mapping from CanIf-specific Channels to Can Controllers\r
+const CanControllerIdType CanIf_Arc_ChannelToControllerMap[CANIF_CHANNEL_CNT] = {\r
+ DCAN1, // Channel_1\r
+ DCAN2 // Channel_2\r
+};\r
+\r
+const uint8 CanIf_Arc_ChannelDefaultConfIndex[CANIF_CHANNEL_CNT] = {\r
+ CANIF_Channel_1_CONFIG_0,\r
+ CANIF_Channel_2_CONFIG_0\r
+};\r
+\r
+// Container that gets slammed into CanIf_InitController()\r
+// Initialization of all controllers\r
+// Multiplicity 1..*\r
+const CanIf_ControllerConfigType CanIfControllerConfig[] = {\r
+ // This is the ConfigurationIndex in CanIf_InitController()\r
+ { \r
+ .WakeupSupport = CANIF_WAKEUP_SUPPORT_NO_WAKEUP,\r
+ .CanIfControllerIdRef = CANIF_Channel_1,\r
+ .CanIfDriverNameRef = "DCAN1",\r
+ .CanIfInitControllerRef = &CanControllerConfigData[0],\r
+ },\r
+ {\r
+ .WakeupSupport = CANIF_WAKEUP_SUPPORT_NO_WAKEUP,\r
+ .CanIfControllerIdRef = CANIF_Channel_2,\r
+ .CanIfDriverNameRef = "DCAN2",\r
+ .CanIfInitControllerRef = &CanControllerConfigData[1],\r
+ }\r
+};\r
+\r
+// Function callbacks for higher layers\r
+const CanIf_DispatchConfigType CanIfDispatchConfig =\r
+{\r
+ .CanIfBusOffNotification = NULL,\r
+ .CanIfWakeUpNotification = NULL, // Not used\r
+ .CanIfWakeupValidNotification = NULL, // Not used\r
+ .CanIfErrorNotificaton = NULL,\r
+};\r
+\r
+\r
+// Data for init configuration CanIfInitConfiguration\r
+\r
+const CanIf_HthConfigType CanIfHthConfigData_Hoh[] =\r
+{\r
+ { \r
+ .CanIfHthType = CAN_ARC_HANDLE_TYPE_BASIC,\r
+ .CanIfCanControllerIdRef = CANIF_Channel_1, // Transmit: DCAN1\r
+ .CanIfHthIdSymRef = TxHwObject,\r
+ .CanIf_Arc_EOL = 1,\r
+ },\r
+};\r
+\r
+const CanIf_HrhConfigType CanIfHrhConfigData_Hoh[] =\r
+{\r
+ {\r
+ .CanIfHrhType = CAN_ARC_HANDLE_TYPE_BASIC,\r
+ .CanIfSoftwareFilterHrh = TRUE,\r
+ .CanIfCanControllerHrhIdRef = CANIF_Channel_2, // Receive: DCAN2\r
+ .CanIfHrhIdSymRef = RxHwObject,\r
+ .CanIf_Arc_EOL = 1,\r
+ },\r
+};\r
+\r
+\r
+const CanIf_InitHohConfigType CanIfHohConfigData[] = { \r
+ \r
+ {\r
+ .CanConfigSet = &CanConfigSetData,\r
+ .CanIfHrhConfig = CanIfHrhConfigData_Hoh,\r
+ .CanIfHthConfig = CanIfHthConfigData_Hoh,\r
+ .CanIf_Arc_EOL = 1,\r
+ },\r
+};\r
+ \r
+const CanIf_TxPduConfigType CanIfTxPduConfigData[] = {\r
+ {\r
+ .CanIfTxPduId = PDUR_REVERSE_PDU_ID_TX_PDU, // Transmit I-PDU; Reverse = PDUR -----> CANIF\r
+ .CanIfCanTxPduIdCanId = 1, // 2\r
+ .CanIfCanTxPduIdDlc = 8,\r
+ .CanIfCanTxPduType = CANIF_PDU_TYPE_STATIC,\r
+#if ( CANIF_READTXPDU_NOTIFY_STATUS_API == STD_ON )\r
+ .CanIfReadTxPduNotifyStatus = false,\r
+#endif\r
+ .CanIfTxPduIdCanIdType = CANIF_CAN_ID_TYPE_11, // 11 == BASIC CAN\r
+ .CanIfUserTxConfirmation = PduR_CanIfTxConfirmation,\r
+ .CanIfCanTxPduHthRef = &CanIfHthConfigData_Hoh[0],\r
+ .PduIdRef = NULL,\r
+ },\r
+ {\r
+ .CanIfTxPduId = PDUR_REVERSE_PDU_ID_FreqInd,\r
+ .CanIfCanTxPduIdCanId = 256, // 258\r
+ .CanIfCanTxPduIdDlc = 8,\r
+ .CanIfCanTxPduType = CANIF_PDU_TYPE_STATIC,\r
+#if ( CANIF_READTXPDU_NOTIFY_STATUS_API == STD_ON )\r
+ .CanIfReadTxPduNotifyStatus = false,\r
+#endif\r
+ .CanIfTxPduIdCanIdType = CANIF_CAN_ID_TYPE_11,\r
+ .CanIfUserTxConfirmation = PduR_CanIfTxConfirmation,\r
+ .CanIfCanTxPduHthRef = &CanIfHthConfigData_Hoh[0],\r
+ .PduIdRef = NULL,\r
+ },\r
+};\r
+\r
+const CanIf_RxPduConfigType CanIfRxPduConfigData[] = {\r
+ {\r
+ .CanIfCanRxPduId = PDUR_PDU_ID_RX_PDU, // Receive I-PDU; CANIF -----> PDUR\r
+ .CanIfCanRxPduCanId = 2, // 1\r
+ .CanIfCanRxPduDlc = 8,\r
+#if ( CANIF_CANPDUID_READDATA_API == STD_ON )\r
+ .CanIfReadRxPduData = false,\r
+#endif\r
+#if ( CANIF_READTXPDU_NOTIFY_STATUS_API == STD_ON )\r
+ .CanIfReadRxPduNotifyStatus = false,\r
+#endif\r
+ .CanIfRxUserType = CANIF_USER_TYPE_CAN_PDUR, // upper layer\r
+ .CanIfCanRxPduHrhRef = &CanIfHrhConfigData_Hoh[1], // [0] ??\r
+ .CanIfRxPduIdCanIdType = CANIF_CAN_ID_TYPE_11,\r
+ .CanIfUserRxIndication = NULL,\r
+ .CanIfSoftwareFilterType = CANIF_SOFTFILTER_TYPE_MASK,\r
+ .CanIfCanRxPduCanIdMask = 0xFFF,\r
+ .PduIdRef = NULL,\r
+ },\r
+ {\r
+ .CanIfCanRxPduId = PDUR_PDU_ID_FreqReq,\r
+ .CanIfCanRxPduCanId = 258, // 256\r
+ .CanIfCanRxPduDlc = 8,\r
+#if ( CANIF_CANPDUID_READDATA_API == STD_ON )\r
+ .CanIfReadRxPduData = false,\r
+#endif\r
+#if ( CANIF_READTXPDU_NOTIFY_STATUS_API == STD_ON )\r
+ .CanIfReadRxPduNotifyStatus = false,\r
+#endif\r
+ .CanIfRxUserType = CANIF_USER_TYPE_CAN_PDUR,\r
+ .CanIfCanRxPduHrhRef = &CanIfHrhConfigData_Hoh[1], // [0] ??\r
+ .CanIfRxPduIdCanIdType = CANIF_CAN_ID_TYPE_11,\r
+ .CanIfUserRxIndication = NULL,\r
+ .CanIfSoftwareFilterType = CANIF_SOFTFILTER_TYPE_MASK,\r
+ .CanIfCanRxPduCanIdMask = 0xFFF,\r
+ .PduIdRef = NULL,\r
+ },\r
+};\r
+\r
+// This container contains the init parameters of the CAN\r
+// Multiplicity 1..*\r
+const CanIf_InitConfigType CanIfInitConfig =\r
+{\r
+ .CanIfConfigSet = 0, // Not used \r
+ .CanIfNumberOfCanRxPduIds = 2, // 1\r
+ .CanIfNumberOfCanTXPduIds = 2, // 1\r
+ .CanIfNumberOfDynamicCanTXPduIds = 0, // Not used\r
+\r
+ // Containers\r
+ .CanIfHohConfigPtr = CanIfHohConfigData,\r
+ .CanIfRxPduConfigPtr = CanIfRxPduConfigData,\r
+ .CanIfTxPduConfigPtr = CanIfTxPduConfigData,\r
+};\r
+\r
+ // This container includes all necessary configuration sub-containers\r
+// according the CAN Interface configuration structure.\r
+CanIf_ConfigType CanIf_Config =\r
+{\r
+ .ControllerConfig = CanIfControllerConfig,\r
+ .DispatchConfig = &CanIfDispatchConfig,\r
+ .InitConfig = &CanIfInitConfig,\r
+ .TransceiverConfig = NULL, // Not used\r
+ .Arc_ChannelToControllerMap = CanIf_Arc_ChannelToControllerMap, \r
+ .Arc_ChannelDefaultConfIndex = CanIf_Arc_ChannelDefaultConfIndex,\r
+};\r
+\r