]> rtime.felk.cvut.cz Git - arc.git/blob - boards/mpc5567qrtech/examples/rte_simple/config/Can_Cfg.h
Merge with ac7a40bc631fb2dfca15ae7785ba2aa768ee23d8
[arc.git] / boards / mpc5567qrtech / examples / rte_simple / config / Can_Cfg.h
1 /*\r
2 * Configuration of module: Can (Can_Cfg.h)\r
3 *\r
4 * Created by:              \r
5 * Copyright:               \r
6 *\r
7 * Configured for (MCU):    MPC5567\r
8 *\r
9 * Module vendor:           ArcCore\r
10 * Generator version:       2.0.2\r
11 *\r
12 * Generated by Arctic Studio (http://arccore.com) \r
13 */\r
14 \r
15
16 #if !(((CAN_SW_MAJOR_VERSION == 1) && (CAN_SW_MINOR_VERSION == 0)) )
17 #error Can: Configuration file expected BSW module version to be 1.0.*
18 #endif
19
20         \r
21 \r
22 #ifndef CAN_CFG_H_\r
23 #define CAN_CFG_H_\r
24 \r
25 // Number of controller configs\r
26 #define CAN_ARC_CTRL_CONFIG_CNT         1\r
27 \r
28 #define CAN_DEV_ERROR_DETECT                    STD_OFF\r
29 #define CAN_VERSION_INFO_API                    STD_OFF\r
30 #define CAN_MULTIPLEXED_TRANSMISSION    STD_OFF  // Not supported\r
31 #define CAN_WAKEUP_SUPPORT                              STD_OFF  // Not supported\r
32 #define CAN_HW_TRANSMIT_CANCELLATION    STD_OFF  // Not supported\r
33 \r
34 typedef enum {\r
35         FLEXCAN_A = 0,\r
36         CAN_CTRL_A = 0,\r
37         FLEXCAN_B = 1,\r
38         CAN_CTRL_B = 1,\r
39         FLEXCAN_C = 2,\r
40         CAN_CTRL_C = 2,\r
41         FLEXCAN_D = 3,\r
42         CAN_CTRL_D = 3,\r
43         FLEXCAN_E = 4,\r
44         CAN_CTRL_E = 4,\r
45         CAN_CONTROLLER_CNT = 5\r
46 }CanControllerIdType;\r
47 \r
48 typedef enum {\r
49         CAN_OBJECT_TYPE_RECEIVE,\r
50         CAN_OBJECT_TYPE_TRANSMIT\r
51 } Can_ObjectTypeType;\r
52 \r
53 \r
54 typedef enum {\r
55         HWObj_2,\r
56         NUM_OF_HTHS\r
57 } Can_Arc_HTHType;\r
58 \r
59 \r
60 typedef enum {\r
61         HWObj_1,\r
62         NUM_OF_HRHS\r
63 } Can_Arc_HRHType;\r
64 \r
65 \r
66 typedef struct {\r
67         //      Specifies the InstanceId of this module instance. If only one instance is\r
68         //      present it shall have the Id 0\r
69         uint8 CanIndex;\r
70 } Can_GeneralType;\r
71 \r
72 // Start mc9s12 unique\r
73 typedef enum {\r
74   CAN_ARC_IDAM_2_32BIT,\r
75   CAN_ARC_IDAM_4_16BIT,\r
76   CAN_ARC_IDAM_8_8BIT,\r
77   CAN_ARC_IDAM_FILTER_CLOSED,\r
78 } Can_Arc_IDAMType;\r
79 \r
80 typedef uint32 Can_FilterMaskType;\r
81 \r
82 typedef enum {\r
83         CAN_ARC_PROCESS_TYPE_INTERRUPT,\r
84         CAN_ARC_PROCESS_TYPE_POLLING\r
85 } Can_Arc_ProcessType;\r
86 \r
87 struct Can_ControllerConfig;\r
88 struct Can_Callback;\r
89 \r
90 typedef struct {\r
91         const struct Can_ControllerConfig *CanController;\r
92         \r
93         // Callbacks( Extension )\r
94         const struct Can_Callback *CanCallbacks;        \r
95         const  uint8 * const ArcHthToUnit;\r
96         const  uint8 * const ArcHthToHoh;\r
97         const  uint8 * const ArcCtrlToUnit;\r
98 } Can_ConfigSetType;\r
99 \r
100 \r
101 typedef struct {\r
102         // This is the multiple configuration set container for CAN Driver\r
103         // Multiplicity 1..*\r
104         const Can_ConfigSetType  *CanConfigSet;\r
105         // This container contains the parameters related each CAN\r
106         // Driver Unit.\r
107         // Multiplicity 1..*\r
108         const Can_GeneralType    *CanGeneral;\r
109         \r
110 } Can_ConfigType;\r
111 \r
112 extern const Can_ConfigType CanConfigData;\r
113 extern const Can_ConfigSetType Can_ConfigSet;\r
114 \r
115 #endif /*CAN_CFG_H_*/\r