blob: b1492e0bcabb44f9e627025ea7401c1a0a5224ad [file] [log] [blame]
Mike Frysinger0e642682009-12-15 13:33:19 +00001/*
2 * bfin_can.h - interface to Blackfin CANs
3 *
4 * Copyright 2004-2009 Analog Devices Inc.
5 *
6 * Licensed under the GPL-2 or later.
7 */
8
9#ifndef __ASM_BFIN_CAN_H__
10#define __ASM_BFIN_CAN_H__
11
12/*
13 * transmit and receive channels
14 */
15#define TRANSMIT_CHL 24
16#define RECEIVE_STD_CHL 0
17#define RECEIVE_EXT_CHL 4
18#define RECEIVE_RTR_CHL 8
19#define RECEIVE_EXT_RTR_CHL 12
20#define MAX_CHL_NUMBER 32
21
22/*
23 * All Blackfin system MMRs are padded to 32bits even if the register
24 * itself is only 16bits. So use a helper macro to streamline this.
25 */
26#define __BFP(m) u16 m; u16 __pad_##m
27
28/*
29 * bfin can registers layout
30 */
31struct bfin_can_mask_regs {
32 __BFP(aml);
33 __BFP(amh);
34};
35
36struct bfin_can_channel_regs {
Mike Frysingerfaf3d9e2010-10-22 03:11:42 +000037 /* data[0,2,4,6] -> data{0,1,2,3} while data[1,3,5,7] is padding */
Mike Frysinger0e642682009-12-15 13:33:19 +000038 u16 data[8];
39 __BFP(dlc);
40 __BFP(tsv);
41 __BFP(id0);
42 __BFP(id1);
43};
44
45struct bfin_can_regs {
46 /*
47 * global control and status registers
48 */
49 __BFP(mc1); /* offset 0x00 */
50 __BFP(md1); /* offset 0x04 */
51 __BFP(trs1); /* offset 0x08 */
52 __BFP(trr1); /* offset 0x0c */
53 __BFP(ta1); /* offset 0x10 */
54 __BFP(aa1); /* offset 0x14 */
55 __BFP(rmp1); /* offset 0x18 */
56 __BFP(rml1); /* offset 0x1c */
57 __BFP(mbtif1); /* offset 0x20 */
58 __BFP(mbrif1); /* offset 0x24 */
59 __BFP(mbim1); /* offset 0x28 */
60 __BFP(rfh1); /* offset 0x2c */
61 __BFP(opss1); /* offset 0x30 */
62 u32 __pad1[3];
63 __BFP(mc2); /* offset 0x40 */
64 __BFP(md2); /* offset 0x44 */
65 __BFP(trs2); /* offset 0x48 */
66 __BFP(trr2); /* offset 0x4c */
67 __BFP(ta2); /* offset 0x50 */
68 __BFP(aa2); /* offset 0x54 */
69 __BFP(rmp2); /* offset 0x58 */
70 __BFP(rml2); /* offset 0x5c */
71 __BFP(mbtif2); /* offset 0x60 */
72 __BFP(mbrif2); /* offset 0x64 */
73 __BFP(mbim2); /* offset 0x68 */
74 __BFP(rfh2); /* offset 0x6c */
75 __BFP(opss2); /* offset 0x70 */
76 u32 __pad2[3];
77 __BFP(clock); /* offset 0x80 */
78 __BFP(timing); /* offset 0x84 */
79 __BFP(debug); /* offset 0x88 */
80 __BFP(status); /* offset 0x8c */
81 __BFP(cec); /* offset 0x90 */
82 __BFP(gis); /* offset 0x94 */
83 __BFP(gim); /* offset 0x98 */
84 __BFP(gif); /* offset 0x9c */
85 __BFP(control); /* offset 0xa0 */
86 __BFP(intr); /* offset 0xa4 */
Mike Frysingerfaf3d9e2010-10-22 03:11:42 +000087 __BFP(version); /* offset 0xa8 */
Mike Frysinger0e642682009-12-15 13:33:19 +000088 __BFP(mbtd); /* offset 0xac */
89 __BFP(ewr); /* offset 0xb0 */
90 __BFP(esr); /* offset 0xb4 */
Mike Frysingerfaf3d9e2010-10-22 03:11:42 +000091 u32 __pad3[2];
Mike Frysinger0e642682009-12-15 13:33:19 +000092 __BFP(ucreg); /* offset 0xc0 */
93 __BFP(uccnt); /* offset 0xc4 */
94 __BFP(ucrc); /* offset 0xc8 */
95 __BFP(uccnf); /* offset 0xcc */
Mike Frysingerfaf3d9e2010-10-22 03:11:42 +000096 u32 __pad4[1];
97 __BFP(version2); /* offset 0xd4 */
98 u32 __pad5[10];
Mike Frysinger0e642682009-12-15 13:33:19 +000099
100 /*
101 * channel(mailbox) mask and message registers
102 */
103 struct bfin_can_mask_regs msk[MAX_CHL_NUMBER]; /* offset 0x100 */
104 struct bfin_can_channel_regs chl[MAX_CHL_NUMBER]; /* offset 0x200 */
105};
106
107#undef __BFP
108
109/* CAN_CONTROL Masks */
110#define SRS 0x0001 /* Software Reset */
111#define DNM 0x0002 /* Device Net Mode */
112#define ABO 0x0004 /* Auto-Bus On Enable */
113#define TXPRIO 0x0008 /* TX Priority (Priority/Mailbox*) */
114#define WBA 0x0010 /* Wake-Up On CAN Bus Activity Enable */
115#define SMR 0x0020 /* Sleep Mode Request */
116#define CSR 0x0040 /* CAN Suspend Mode Request */
117#define CCR 0x0080 /* CAN Configuration Mode Request */
118
119/* CAN_STATUS Masks */
120#define WT 0x0001 /* TX Warning Flag */
121#define WR 0x0002 /* RX Warning Flag */
122#define EP 0x0004 /* Error Passive Mode */
123#define EBO 0x0008 /* Error Bus Off Mode */
124#define SMA 0x0020 /* Sleep Mode Acknowledge */
125#define CSA 0x0040 /* Suspend Mode Acknowledge */
126#define CCA 0x0080 /* Configuration Mode Acknowledge */
127#define MBPTR 0x1F00 /* Mailbox Pointer */
128#define TRM 0x4000 /* Transmit Mode */
129#define REC 0x8000 /* Receive Mode */
130
131/* CAN_CLOCK Masks */
132#define BRP 0x03FF /* Bit-Rate Pre-Scaler */
133
134/* CAN_TIMING Masks */
135#define TSEG1 0x000F /* Time Segment 1 */
136#define TSEG2 0x0070 /* Time Segment 2 */
137#define SAM 0x0080 /* Sampling */
138#define SJW 0x0300 /* Synchronization Jump Width */
139
140/* CAN_DEBUG Masks */
141#define DEC 0x0001 /* Disable CAN Error Counters */
142#define DRI 0x0002 /* Disable CAN RX Input */
143#define DTO 0x0004 /* Disable CAN TX Output */
144#define DIL 0x0008 /* Disable CAN Internal Loop */
145#define MAA 0x0010 /* Mode Auto-Acknowledge Enable */
146#define MRB 0x0020 /* Mode Read Back Enable */
147#define CDE 0x8000 /* CAN Debug Enable */
148
149/* CAN_CEC Masks */
150#define RXECNT 0x00FF /* Receive Error Counter */
151#define TXECNT 0xFF00 /* Transmit Error Counter */
152
153/* CAN_INTR Masks */
154#define MBRIRQ 0x0001 /* Mailbox Receive Interrupt */
155#define MBTIRQ 0x0002 /* Mailbox Transmit Interrupt */
156#define GIRQ 0x0004 /* Global Interrupt */
157#define SMACK 0x0008 /* Sleep Mode Acknowledge */
158#define CANTX 0x0040 /* CAN TX Bus Value */
159#define CANRX 0x0080 /* CAN RX Bus Value */
160
161/* CAN_MBxx_ID1 and CAN_MBxx_ID0 Masks */
162#define DFC 0xFFFF /* Data Filtering Code (If Enabled) (ID0) */
163#define EXTID_LO 0xFFFF /* Lower 16 Bits of Extended Identifier (ID0) */
164#define EXTID_HI 0x0003 /* Upper 2 Bits of Extended Identifier (ID1) */
165#define BASEID 0x1FFC /* Base Identifier */
166#define IDE 0x2000 /* Identifier Extension */
167#define RTR 0x4000 /* Remote Frame Transmission Request */
168#define AME 0x8000 /* Acceptance Mask Enable */
169
170/* CAN_MBxx_TIMESTAMP Masks */
171#define TSV 0xFFFF /* Timestamp */
172
173/* CAN_MBxx_LENGTH Masks */
174#define DLC 0x000F /* Data Length Code */
175
176/* CAN_AMxxH and CAN_AMxxL Masks */
177#define DFM 0xFFFF /* Data Field Mask (If Enabled) (CAN_AMxxL) */
178#define EXTID_LO 0xFFFF /* Lower 16 Bits of Extended Identifier (CAN_AMxxL) */
179#define EXTID_HI 0x0003 /* Upper 2 Bits of Extended Identifier (CAN_AMxxH) */
180#define BASEID 0x1FFC /* Base Identifier */
181#define AMIDE 0x2000 /* Acceptance Mask ID Extension Enable */
182#define FMD 0x4000 /* Full Mask Data Field Enable */
183#define FDF 0x8000 /* Filter On Data Field Enable */
184
185/* CAN_MC1 Masks */
186#define MC0 0x0001 /* Enable Mailbox 0 */
187#define MC1 0x0002 /* Enable Mailbox 1 */
188#define MC2 0x0004 /* Enable Mailbox 2 */
189#define MC3 0x0008 /* Enable Mailbox 3 */
190#define MC4 0x0010 /* Enable Mailbox 4 */
191#define MC5 0x0020 /* Enable Mailbox 5 */
192#define MC6 0x0040 /* Enable Mailbox 6 */
193#define MC7 0x0080 /* Enable Mailbox 7 */
194#define MC8 0x0100 /* Enable Mailbox 8 */
195#define MC9 0x0200 /* Enable Mailbox 9 */
196#define MC10 0x0400 /* Enable Mailbox 10 */
197#define MC11 0x0800 /* Enable Mailbox 11 */
198#define MC12 0x1000 /* Enable Mailbox 12 */
199#define MC13 0x2000 /* Enable Mailbox 13 */
200#define MC14 0x4000 /* Enable Mailbox 14 */
201#define MC15 0x8000 /* Enable Mailbox 15 */
202
203/* CAN_MC2 Masks */
204#define MC16 0x0001 /* Enable Mailbox 16 */
205#define MC17 0x0002 /* Enable Mailbox 17 */
206#define MC18 0x0004 /* Enable Mailbox 18 */
207#define MC19 0x0008 /* Enable Mailbox 19 */
208#define MC20 0x0010 /* Enable Mailbox 20 */
209#define MC21 0x0020 /* Enable Mailbox 21 */
210#define MC22 0x0040 /* Enable Mailbox 22 */
211#define MC23 0x0080 /* Enable Mailbox 23 */
212#define MC24 0x0100 /* Enable Mailbox 24 */
213#define MC25 0x0200 /* Enable Mailbox 25 */
214#define MC26 0x0400 /* Enable Mailbox 26 */
215#define MC27 0x0800 /* Enable Mailbox 27 */
216#define MC28 0x1000 /* Enable Mailbox 28 */
217#define MC29 0x2000 /* Enable Mailbox 29 */
218#define MC30 0x4000 /* Enable Mailbox 30 */
219#define MC31 0x8000 /* Enable Mailbox 31 */
220
221/* CAN_MD1 Masks */
222#define MD0 0x0001 /* Enable Mailbox 0 For Receive */
223#define MD1 0x0002 /* Enable Mailbox 1 For Receive */
224#define MD2 0x0004 /* Enable Mailbox 2 For Receive */
225#define MD3 0x0008 /* Enable Mailbox 3 For Receive */
226#define MD4 0x0010 /* Enable Mailbox 4 For Receive */
227#define MD5 0x0020 /* Enable Mailbox 5 For Receive */
228#define MD6 0x0040 /* Enable Mailbox 6 For Receive */
229#define MD7 0x0080 /* Enable Mailbox 7 For Receive */
230#define MD8 0x0100 /* Enable Mailbox 8 For Receive */
231#define MD9 0x0200 /* Enable Mailbox 9 For Receive */
232#define MD10 0x0400 /* Enable Mailbox 10 For Receive */
233#define MD11 0x0800 /* Enable Mailbox 11 For Receive */
234#define MD12 0x1000 /* Enable Mailbox 12 For Receive */
235#define MD13 0x2000 /* Enable Mailbox 13 For Receive */
236#define MD14 0x4000 /* Enable Mailbox 14 For Receive */
237#define MD15 0x8000 /* Enable Mailbox 15 For Receive */
238
239/* CAN_MD2 Masks */
240#define MD16 0x0001 /* Enable Mailbox 16 For Receive */
241#define MD17 0x0002 /* Enable Mailbox 17 For Receive */
242#define MD18 0x0004 /* Enable Mailbox 18 For Receive */
243#define MD19 0x0008 /* Enable Mailbox 19 For Receive */
244#define MD20 0x0010 /* Enable Mailbox 20 For Receive */
245#define MD21 0x0020 /* Enable Mailbox 21 For Receive */
246#define MD22 0x0040 /* Enable Mailbox 22 For Receive */
247#define MD23 0x0080 /* Enable Mailbox 23 For Receive */
248#define MD24 0x0100 /* Enable Mailbox 24 For Receive */
249#define MD25 0x0200 /* Enable Mailbox 25 For Receive */
250#define MD26 0x0400 /* Enable Mailbox 26 For Receive */
251#define MD27 0x0800 /* Enable Mailbox 27 For Receive */
252#define MD28 0x1000 /* Enable Mailbox 28 For Receive */
253#define MD29 0x2000 /* Enable Mailbox 29 For Receive */
254#define MD30 0x4000 /* Enable Mailbox 30 For Receive */
255#define MD31 0x8000 /* Enable Mailbox 31 For Receive */
256
257/* CAN_RMP1 Masks */
258#define RMP0 0x0001 /* RX Message Pending In Mailbox 0 */
259#define RMP1 0x0002 /* RX Message Pending In Mailbox 1 */
260#define RMP2 0x0004 /* RX Message Pending In Mailbox 2 */
261#define RMP3 0x0008 /* RX Message Pending In Mailbox 3 */
262#define RMP4 0x0010 /* RX Message Pending In Mailbox 4 */
263#define RMP5 0x0020 /* RX Message Pending In Mailbox 5 */
264#define RMP6 0x0040 /* RX Message Pending In Mailbox 6 */
265#define RMP7 0x0080 /* RX Message Pending In Mailbox 7 */
266#define RMP8 0x0100 /* RX Message Pending In Mailbox 8 */
267#define RMP9 0x0200 /* RX Message Pending In Mailbox 9 */
268#define RMP10 0x0400 /* RX Message Pending In Mailbox 10 */
269#define RMP11 0x0800 /* RX Message Pending In Mailbox 11 */
270#define RMP12 0x1000 /* RX Message Pending In Mailbox 12 */
271#define RMP13 0x2000 /* RX Message Pending In Mailbox 13 */
272#define RMP14 0x4000 /* RX Message Pending In Mailbox 14 */
273#define RMP15 0x8000 /* RX Message Pending In Mailbox 15 */
274
275/* CAN_RMP2 Masks */
276#define RMP16 0x0001 /* RX Message Pending In Mailbox 16 */
277#define RMP17 0x0002 /* RX Message Pending In Mailbox 17 */
278#define RMP18 0x0004 /* RX Message Pending In Mailbox 18 */
279#define RMP19 0x0008 /* RX Message Pending In Mailbox 19 */
280#define RMP20 0x0010 /* RX Message Pending In Mailbox 20 */
281#define RMP21 0x0020 /* RX Message Pending In Mailbox 21 */
282#define RMP22 0x0040 /* RX Message Pending In Mailbox 22 */
283#define RMP23 0x0080 /* RX Message Pending In Mailbox 23 */
284#define RMP24 0x0100 /* RX Message Pending In Mailbox 24 */
285#define RMP25 0x0200 /* RX Message Pending In Mailbox 25 */
286#define RMP26 0x0400 /* RX Message Pending In Mailbox 26 */
287#define RMP27 0x0800 /* RX Message Pending In Mailbox 27 */
288#define RMP28 0x1000 /* RX Message Pending In Mailbox 28 */
289#define RMP29 0x2000 /* RX Message Pending In Mailbox 29 */
290#define RMP30 0x4000 /* RX Message Pending In Mailbox 30 */
291#define RMP31 0x8000 /* RX Message Pending In Mailbox 31 */
292
293/* CAN_RML1 Masks */
294#define RML0 0x0001 /* RX Message Lost In Mailbox 0 */
295#define RML1 0x0002 /* RX Message Lost In Mailbox 1 */
296#define RML2 0x0004 /* RX Message Lost In Mailbox 2 */
297#define RML3 0x0008 /* RX Message Lost In Mailbox 3 */
298#define RML4 0x0010 /* RX Message Lost In Mailbox 4 */
299#define RML5 0x0020 /* RX Message Lost In Mailbox 5 */
300#define RML6 0x0040 /* RX Message Lost In Mailbox 6 */
301#define RML7 0x0080 /* RX Message Lost In Mailbox 7 */
302#define RML8 0x0100 /* RX Message Lost In Mailbox 8 */
303#define RML9 0x0200 /* RX Message Lost In Mailbox 9 */
304#define RML10 0x0400 /* RX Message Lost In Mailbox 10 */
305#define RML11 0x0800 /* RX Message Lost In Mailbox 11 */
306#define RML12 0x1000 /* RX Message Lost In Mailbox 12 */
307#define RML13 0x2000 /* RX Message Lost In Mailbox 13 */
308#define RML14 0x4000 /* RX Message Lost In Mailbox 14 */
309#define RML15 0x8000 /* RX Message Lost In Mailbox 15 */
310
311/* CAN_RML2 Masks */
312#define RML16 0x0001 /* RX Message Lost In Mailbox 16 */
313#define RML17 0x0002 /* RX Message Lost In Mailbox 17 */
314#define RML18 0x0004 /* RX Message Lost In Mailbox 18 */
315#define RML19 0x0008 /* RX Message Lost In Mailbox 19 */
316#define RML20 0x0010 /* RX Message Lost In Mailbox 20 */
317#define RML21 0x0020 /* RX Message Lost In Mailbox 21 */
318#define RML22 0x0040 /* RX Message Lost In Mailbox 22 */
319#define RML23 0x0080 /* RX Message Lost In Mailbox 23 */
320#define RML24 0x0100 /* RX Message Lost In Mailbox 24 */
321#define RML25 0x0200 /* RX Message Lost In Mailbox 25 */
322#define RML26 0x0400 /* RX Message Lost In Mailbox 26 */
323#define RML27 0x0800 /* RX Message Lost In Mailbox 27 */
324#define RML28 0x1000 /* RX Message Lost In Mailbox 28 */
325#define RML29 0x2000 /* RX Message Lost In Mailbox 29 */
326#define RML30 0x4000 /* RX Message Lost In Mailbox 30 */
327#define RML31 0x8000 /* RX Message Lost In Mailbox 31 */
328
329/* CAN_OPSS1 Masks */
330#define OPSS0 0x0001 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 0 */
331#define OPSS1 0x0002 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 1 */
332#define OPSS2 0x0004 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 2 */
333#define OPSS3 0x0008 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 3 */
334#define OPSS4 0x0010 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 4 */
335#define OPSS5 0x0020 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 5 */
336#define OPSS6 0x0040 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 6 */
337#define OPSS7 0x0080 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 7 */
338#define OPSS8 0x0100 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 8 */
339#define OPSS9 0x0200 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 9 */
340#define OPSS10 0x0400 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 10 */
341#define OPSS11 0x0800 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 11 */
342#define OPSS12 0x1000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 12 */
343#define OPSS13 0x2000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 13 */
344#define OPSS14 0x4000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 14 */
345#define OPSS15 0x8000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 15 */
346
347/* CAN_OPSS2 Masks */
348#define OPSS16 0x0001 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 16 */
349#define OPSS17 0x0002 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 17 */
350#define OPSS18 0x0004 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 18 */
351#define OPSS19 0x0008 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 19 */
352#define OPSS20 0x0010 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 20 */
353#define OPSS21 0x0020 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 21 */
354#define OPSS22 0x0040 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 22 */
355#define OPSS23 0x0080 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 23 */
356#define OPSS24 0x0100 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 24 */
357#define OPSS25 0x0200 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 25 */
358#define OPSS26 0x0400 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 26 */
359#define OPSS27 0x0800 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 27 */
360#define OPSS28 0x1000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 28 */
361#define OPSS29 0x2000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 29 */
362#define OPSS30 0x4000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 30 */
363#define OPSS31 0x8000 /* Enable RX Overwrite Protection or TX Single-Shot For Mailbox 31 */
364
365/* CAN_TRR1 Masks */
366#define TRR0 0x0001 /* Deny But Don't Lock Access To Mailbox 0 */
367#define TRR1 0x0002 /* Deny But Don't Lock Access To Mailbox 1 */
368#define TRR2 0x0004 /* Deny But Don't Lock Access To Mailbox 2 */
369#define TRR3 0x0008 /* Deny But Don't Lock Access To Mailbox 3 */
370#define TRR4 0x0010 /* Deny But Don't Lock Access To Mailbox 4 */
371#define TRR5 0x0020 /* Deny But Don't Lock Access To Mailbox 5 */
372#define TRR6 0x0040 /* Deny But Don't Lock Access To Mailbox 6 */
373#define TRR7 0x0080 /* Deny But Don't Lock Access To Mailbox 7 */
374#define TRR8 0x0100 /* Deny But Don't Lock Access To Mailbox 8 */
375#define TRR9 0x0200 /* Deny But Don't Lock Access To Mailbox 9 */
376#define TRR10 0x0400 /* Deny But Don't Lock Access To Mailbox 10 */
377#define TRR11 0x0800 /* Deny But Don't Lock Access To Mailbox 11 */
378#define TRR12 0x1000 /* Deny But Don't Lock Access To Mailbox 12 */
379#define TRR13 0x2000 /* Deny But Don't Lock Access To Mailbox 13 */
380#define TRR14 0x4000 /* Deny But Don't Lock Access To Mailbox 14 */
381#define TRR15 0x8000 /* Deny But Don't Lock Access To Mailbox 15 */
382
383/* CAN_TRR2 Masks */
384#define TRR16 0x0001 /* Deny But Don't Lock Access To Mailbox 16 */
385#define TRR17 0x0002 /* Deny But Don't Lock Access To Mailbox 17 */
386#define TRR18 0x0004 /* Deny But Don't Lock Access To Mailbox 18 */
387#define TRR19 0x0008 /* Deny But Don't Lock Access To Mailbox 19 */
388#define TRR20 0x0010 /* Deny But Don't Lock Access To Mailbox 20 */
389#define TRR21 0x0020 /* Deny But Don't Lock Access To Mailbox 21 */
390#define TRR22 0x0040 /* Deny But Don't Lock Access To Mailbox 22 */
391#define TRR23 0x0080 /* Deny But Don't Lock Access To Mailbox 23 */
392#define TRR24 0x0100 /* Deny But Don't Lock Access To Mailbox 24 */
393#define TRR25 0x0200 /* Deny But Don't Lock Access To Mailbox 25 */
394#define TRR26 0x0400 /* Deny But Don't Lock Access To Mailbox 26 */
395#define TRR27 0x0800 /* Deny But Don't Lock Access To Mailbox 27 */
396#define TRR28 0x1000 /* Deny But Don't Lock Access To Mailbox 28 */
397#define TRR29 0x2000 /* Deny But Don't Lock Access To Mailbox 29 */
398#define TRR30 0x4000 /* Deny But Don't Lock Access To Mailbox 30 */
399#define TRR31 0x8000 /* Deny But Don't Lock Access To Mailbox 31 */
400
401/* CAN_TRS1 Masks */
402#define TRS0 0x0001 /* Remote Frame Request For Mailbox 0 */
403#define TRS1 0x0002 /* Remote Frame Request For Mailbox 1 */
404#define TRS2 0x0004 /* Remote Frame Request For Mailbox 2 */
405#define TRS3 0x0008 /* Remote Frame Request For Mailbox 3 */
406#define TRS4 0x0010 /* Remote Frame Request For Mailbox 4 */
407#define TRS5 0x0020 /* Remote Frame Request For Mailbox 5 */
408#define TRS6 0x0040 /* Remote Frame Request For Mailbox 6 */
409#define TRS7 0x0080 /* Remote Frame Request For Mailbox 7 */
410#define TRS8 0x0100 /* Remote Frame Request For Mailbox 8 */
411#define TRS9 0x0200 /* Remote Frame Request For Mailbox 9 */
412#define TRS10 0x0400 /* Remote Frame Request For Mailbox 10 */
413#define TRS11 0x0800 /* Remote Frame Request For Mailbox 11 */
414#define TRS12 0x1000 /* Remote Frame Request For Mailbox 12 */
415#define TRS13 0x2000 /* Remote Frame Request For Mailbox 13 */
416#define TRS14 0x4000 /* Remote Frame Request For Mailbox 14 */
417#define TRS15 0x8000 /* Remote Frame Request For Mailbox 15 */
418
419/* CAN_TRS2 Masks */
420#define TRS16 0x0001 /* Remote Frame Request For Mailbox 16 */
421#define TRS17 0x0002 /* Remote Frame Request For Mailbox 17 */
422#define TRS18 0x0004 /* Remote Frame Request For Mailbox 18 */
423#define TRS19 0x0008 /* Remote Frame Request For Mailbox 19 */
424#define TRS20 0x0010 /* Remote Frame Request For Mailbox 20 */
425#define TRS21 0x0020 /* Remote Frame Request For Mailbox 21 */
426#define TRS22 0x0040 /* Remote Frame Request For Mailbox 22 */
427#define TRS23 0x0080 /* Remote Frame Request For Mailbox 23 */
428#define TRS24 0x0100 /* Remote Frame Request For Mailbox 24 */
429#define TRS25 0x0200 /* Remote Frame Request For Mailbox 25 */
430#define TRS26 0x0400 /* Remote Frame Request For Mailbox 26 */
431#define TRS27 0x0800 /* Remote Frame Request For Mailbox 27 */
432#define TRS28 0x1000 /* Remote Frame Request For Mailbox 28 */
433#define TRS29 0x2000 /* Remote Frame Request For Mailbox 29 */
434#define TRS30 0x4000 /* Remote Frame Request For Mailbox 30 */
435#define TRS31 0x8000 /* Remote Frame Request For Mailbox 31 */
436
437/* CAN_AA1 Masks */
438#define AA0 0x0001 /* Aborted Message In Mailbox 0 */
439#define AA1 0x0002 /* Aborted Message In Mailbox 1 */
440#define AA2 0x0004 /* Aborted Message In Mailbox 2 */
441#define AA3 0x0008 /* Aborted Message In Mailbox 3 */
442#define AA4 0x0010 /* Aborted Message In Mailbox 4 */
443#define AA5 0x0020 /* Aborted Message In Mailbox 5 */
444#define AA6 0x0040 /* Aborted Message In Mailbox 6 */
445#define AA7 0x0080 /* Aborted Message In Mailbox 7 */
446#define AA8 0x0100 /* Aborted Message In Mailbox 8 */
447#define AA9 0x0200 /* Aborted Message In Mailbox 9 */
448#define AA10 0x0400 /* Aborted Message In Mailbox 10 */
449#define AA11 0x0800 /* Aborted Message In Mailbox 11 */
450#define AA12 0x1000 /* Aborted Message In Mailbox 12 */
451#define AA13 0x2000 /* Aborted Message In Mailbox 13 */
452#define AA14 0x4000 /* Aborted Message In Mailbox 14 */
453#define AA15 0x8000 /* Aborted Message In Mailbox 15 */
454
455/* CAN_AA2 Masks */
456#define AA16 0x0001 /* Aborted Message In Mailbox 16 */
457#define AA17 0x0002 /* Aborted Message In Mailbox 17 */
458#define AA18 0x0004 /* Aborted Message In Mailbox 18 */
459#define AA19 0x0008 /* Aborted Message In Mailbox 19 */
460#define AA20 0x0010 /* Aborted Message In Mailbox 20 */
461#define AA21 0x0020 /* Aborted Message In Mailbox 21 */
462#define AA22 0x0040 /* Aborted Message In Mailbox 22 */
463#define AA23 0x0080 /* Aborted Message In Mailbox 23 */
464#define AA24 0x0100 /* Aborted Message In Mailbox 24 */
465#define AA25 0x0200 /* Aborted Message In Mailbox 25 */
466#define AA26 0x0400 /* Aborted Message In Mailbox 26 */
467#define AA27 0x0800 /* Aborted Message In Mailbox 27 */
468#define AA28 0x1000 /* Aborted Message In Mailbox 28 */
469#define AA29 0x2000 /* Aborted Message In Mailbox 29 */
470#define AA30 0x4000 /* Aborted Message In Mailbox 30 */
471#define AA31 0x8000 /* Aborted Message In Mailbox 31 */
472
473/* CAN_TA1 Masks */
474#define TA0 0x0001 /* Transmit Successful From Mailbox 0 */
475#define TA1 0x0002 /* Transmit Successful From Mailbox 1 */
476#define TA2 0x0004 /* Transmit Successful From Mailbox 2 */
477#define TA3 0x0008 /* Transmit Successful From Mailbox 3 */
478#define TA4 0x0010 /* Transmit Successful From Mailbox 4 */
479#define TA5 0x0020 /* Transmit Successful From Mailbox 5 */
480#define TA6 0x0040 /* Transmit Successful From Mailbox 6 */
481#define TA7 0x0080 /* Transmit Successful From Mailbox 7 */
482#define TA8 0x0100 /* Transmit Successful From Mailbox 8 */
483#define TA9 0x0200 /* Transmit Successful From Mailbox 9 */
484#define TA10 0x0400 /* Transmit Successful From Mailbox 10 */
485#define TA11 0x0800 /* Transmit Successful From Mailbox 11 */
486#define TA12 0x1000 /* Transmit Successful From Mailbox 12 */
487#define TA13 0x2000 /* Transmit Successful From Mailbox 13 */
488#define TA14 0x4000 /* Transmit Successful From Mailbox 14 */
489#define TA15 0x8000 /* Transmit Successful From Mailbox 15 */
490
491/* CAN_TA2 Masks */
492#define TA16 0x0001 /* Transmit Successful From Mailbox 16 */
493#define TA17 0x0002 /* Transmit Successful From Mailbox 17 */
494#define TA18 0x0004 /* Transmit Successful From Mailbox 18 */
495#define TA19 0x0008 /* Transmit Successful From Mailbox 19 */
496#define TA20 0x0010 /* Transmit Successful From Mailbox 20 */
497#define TA21 0x0020 /* Transmit Successful From Mailbox 21 */
498#define TA22 0x0040 /* Transmit Successful From Mailbox 22 */
499#define TA23 0x0080 /* Transmit Successful From Mailbox 23 */
500#define TA24 0x0100 /* Transmit Successful From Mailbox 24 */
501#define TA25 0x0200 /* Transmit Successful From Mailbox 25 */
502#define TA26 0x0400 /* Transmit Successful From Mailbox 26 */
503#define TA27 0x0800 /* Transmit Successful From Mailbox 27 */
504#define TA28 0x1000 /* Transmit Successful From Mailbox 28 */
505#define TA29 0x2000 /* Transmit Successful From Mailbox 29 */
506#define TA30 0x4000 /* Transmit Successful From Mailbox 30 */
507#define TA31 0x8000 /* Transmit Successful From Mailbox 31 */
508
509/* CAN_MBTD Masks */
510#define TDPTR 0x001F /* Mailbox To Temporarily Disable */
511#define TDA 0x0040 /* Temporary Disable Acknowledge */
512#define TDR 0x0080 /* Temporary Disable Request */
513
514/* CAN_RFH1 Masks */
515#define RFH0 0x0001 /* Enable Automatic Remote Frame Handling For Mailbox 0 */
516#define RFH1 0x0002 /* Enable Automatic Remote Frame Handling For Mailbox 1 */
517#define RFH2 0x0004 /* Enable Automatic Remote Frame Handling For Mailbox 2 */
518#define RFH3 0x0008 /* Enable Automatic Remote Frame Handling For Mailbox 3 */
519#define RFH4 0x0010 /* Enable Automatic Remote Frame Handling For Mailbox 4 */
520#define RFH5 0x0020 /* Enable Automatic Remote Frame Handling For Mailbox 5 */
521#define RFH6 0x0040 /* Enable Automatic Remote Frame Handling For Mailbox 6 */
522#define RFH7 0x0080 /* Enable Automatic Remote Frame Handling For Mailbox 7 */
523#define RFH8 0x0100 /* Enable Automatic Remote Frame Handling For Mailbox 8 */
524#define RFH9 0x0200 /* Enable Automatic Remote Frame Handling For Mailbox 9 */
525#define RFH10 0x0400 /* Enable Automatic Remote Frame Handling For Mailbox 10 */
526#define RFH11 0x0800 /* Enable Automatic Remote Frame Handling For Mailbox 11 */
527#define RFH12 0x1000 /* Enable Automatic Remote Frame Handling For Mailbox 12 */
528#define RFH13 0x2000 /* Enable Automatic Remote Frame Handling For Mailbox 13 */
529#define RFH14 0x4000 /* Enable Automatic Remote Frame Handling For Mailbox 14 */
530#define RFH15 0x8000 /* Enable Automatic Remote Frame Handling For Mailbox 15 */
531
532/* CAN_RFH2 Masks */
533#define RFH16 0x0001 /* Enable Automatic Remote Frame Handling For Mailbox 16 */
534#define RFH17 0x0002 /* Enable Automatic Remote Frame Handling For Mailbox 17 */
535#define RFH18 0x0004 /* Enable Automatic Remote Frame Handling For Mailbox 18 */
536#define RFH19 0x0008 /* Enable Automatic Remote Frame Handling For Mailbox 19 */
537#define RFH20 0x0010 /* Enable Automatic Remote Frame Handling For Mailbox 20 */
538#define RFH21 0x0020 /* Enable Automatic Remote Frame Handling For Mailbox 21 */
539#define RFH22 0x0040 /* Enable Automatic Remote Frame Handling For Mailbox 22 */
540#define RFH23 0x0080 /* Enable Automatic Remote Frame Handling For Mailbox 23 */
541#define RFH24 0x0100 /* Enable Automatic Remote Frame Handling For Mailbox 24 */
542#define RFH25 0x0200 /* Enable Automatic Remote Frame Handling For Mailbox 25 */
543#define RFH26 0x0400 /* Enable Automatic Remote Frame Handling For Mailbox 26 */
544#define RFH27 0x0800 /* Enable Automatic Remote Frame Handling For Mailbox 27 */
545#define RFH28 0x1000 /* Enable Automatic Remote Frame Handling For Mailbox 28 */
546#define RFH29 0x2000 /* Enable Automatic Remote Frame Handling For Mailbox 29 */
547#define RFH30 0x4000 /* Enable Automatic Remote Frame Handling For Mailbox 30 */
548#define RFH31 0x8000 /* Enable Automatic Remote Frame Handling For Mailbox 31 */
549
550/* CAN_MBTIF1 Masks */
551#define MBTIF0 0x0001 /* TX Interrupt Active In Mailbox 0 */
552#define MBTIF1 0x0002 /* TX Interrupt Active In Mailbox 1 */
553#define MBTIF2 0x0004 /* TX Interrupt Active In Mailbox 2 */
554#define MBTIF3 0x0008 /* TX Interrupt Active In Mailbox 3 */
555#define MBTIF4 0x0010 /* TX Interrupt Active In Mailbox 4 */
556#define MBTIF5 0x0020 /* TX Interrupt Active In Mailbox 5 */
557#define MBTIF6 0x0040 /* TX Interrupt Active In Mailbox 6 */
558#define MBTIF7 0x0080 /* TX Interrupt Active In Mailbox 7 */
559#define MBTIF8 0x0100 /* TX Interrupt Active In Mailbox 8 */
560#define MBTIF9 0x0200 /* TX Interrupt Active In Mailbox 9 */
561#define MBTIF10 0x0400 /* TX Interrupt Active In Mailbox 10 */
562#define MBTIF11 0x0800 /* TX Interrupt Active In Mailbox 11 */
563#define MBTIF12 0x1000 /* TX Interrupt Active In Mailbox 12 */
564#define MBTIF13 0x2000 /* TX Interrupt Active In Mailbox 13 */
565#define MBTIF14 0x4000 /* TX Interrupt Active In Mailbox 14 */
566#define MBTIF15 0x8000 /* TX Interrupt Active In Mailbox 15 */
567
568/* CAN_MBTIF2 Masks */
569#define MBTIF16 0x0001 /* TX Interrupt Active In Mailbox 16 */
570#define MBTIF17 0x0002 /* TX Interrupt Active In Mailbox 17 */
571#define MBTIF18 0x0004 /* TX Interrupt Active In Mailbox 18 */
572#define MBTIF19 0x0008 /* TX Interrupt Active In Mailbox 19 */
573#define MBTIF20 0x0010 /* TX Interrupt Active In Mailbox 20 */
574#define MBTIF21 0x0020 /* TX Interrupt Active In Mailbox 21 */
575#define MBTIF22 0x0040 /* TX Interrupt Active In Mailbox 22 */
576#define MBTIF23 0x0080 /* TX Interrupt Active In Mailbox 23 */
577#define MBTIF24 0x0100 /* TX Interrupt Active In Mailbox 24 */
578#define MBTIF25 0x0200 /* TX Interrupt Active In Mailbox 25 */
579#define MBTIF26 0x0400 /* TX Interrupt Active In Mailbox 26 */
580#define MBTIF27 0x0800 /* TX Interrupt Active In Mailbox 27 */
581#define MBTIF28 0x1000 /* TX Interrupt Active In Mailbox 28 */
582#define MBTIF29 0x2000 /* TX Interrupt Active In Mailbox 29 */
583#define MBTIF30 0x4000 /* TX Interrupt Active In Mailbox 30 */
584#define MBTIF31 0x8000 /* TX Interrupt Active In Mailbox 31 */
585
586/* CAN_MBRIF1 Masks */
587#define MBRIF0 0x0001 /* RX Interrupt Active In Mailbox 0 */
588#define MBRIF1 0x0002 /* RX Interrupt Active In Mailbox 1 */
589#define MBRIF2 0x0004 /* RX Interrupt Active In Mailbox 2 */
590#define MBRIF3 0x0008 /* RX Interrupt Active In Mailbox 3 */
591#define MBRIF4 0x0010 /* RX Interrupt Active In Mailbox 4 */
592#define MBRIF5 0x0020 /* RX Interrupt Active In Mailbox 5 */
593#define MBRIF6 0x0040 /* RX Interrupt Active In Mailbox 6 */
594#define MBRIF7 0x0080 /* RX Interrupt Active In Mailbox 7 */
595#define MBRIF8 0x0100 /* RX Interrupt Active In Mailbox 8 */
596#define MBRIF9 0x0200 /* RX Interrupt Active In Mailbox 9 */
597#define MBRIF10 0x0400 /* RX Interrupt Active In Mailbox 10 */
598#define MBRIF11 0x0800 /* RX Interrupt Active In Mailbox 11 */
599#define MBRIF12 0x1000 /* RX Interrupt Active In Mailbox 12 */
600#define MBRIF13 0x2000 /* RX Interrupt Active In Mailbox 13 */
601#define MBRIF14 0x4000 /* RX Interrupt Active In Mailbox 14 */
602#define MBRIF15 0x8000 /* RX Interrupt Active In Mailbox 15 */
603
604/* CAN_MBRIF2 Masks */
605#define MBRIF16 0x0001 /* RX Interrupt Active In Mailbox 16 */
606#define MBRIF17 0x0002 /* RX Interrupt Active In Mailbox 17 */
607#define MBRIF18 0x0004 /* RX Interrupt Active In Mailbox 18 */
608#define MBRIF19 0x0008 /* RX Interrupt Active In Mailbox 19 */
609#define MBRIF20 0x0010 /* RX Interrupt Active In Mailbox 20 */
610#define MBRIF21 0x0020 /* RX Interrupt Active In Mailbox 21 */
611#define MBRIF22 0x0040 /* RX Interrupt Active In Mailbox 22 */
612#define MBRIF23 0x0080 /* RX Interrupt Active In Mailbox 23 */
613#define MBRIF24 0x0100 /* RX Interrupt Active In Mailbox 24 */
614#define MBRIF25 0x0200 /* RX Interrupt Active In Mailbox 25 */
615#define MBRIF26 0x0400 /* RX Interrupt Active In Mailbox 26 */
616#define MBRIF27 0x0800 /* RX Interrupt Active In Mailbox 27 */
617#define MBRIF28 0x1000 /* RX Interrupt Active In Mailbox 28 */
618#define MBRIF29 0x2000 /* RX Interrupt Active In Mailbox 29 */
619#define MBRIF30 0x4000 /* RX Interrupt Active In Mailbox 30 */
620#define MBRIF31 0x8000 /* RX Interrupt Active In Mailbox 31 */
621
622/* CAN_MBIM1 Masks */
623#define MBIM0 0x0001 /* Enable Interrupt For Mailbox 0 */
624#define MBIM1 0x0002 /* Enable Interrupt For Mailbox 1 */
625#define MBIM2 0x0004 /* Enable Interrupt For Mailbox 2 */
626#define MBIM3 0x0008 /* Enable Interrupt For Mailbox 3 */
627#define MBIM4 0x0010 /* Enable Interrupt For Mailbox 4 */
628#define MBIM5 0x0020 /* Enable Interrupt For Mailbox 5 */
629#define MBIM6 0x0040 /* Enable Interrupt For Mailbox 6 */
630#define MBIM7 0x0080 /* Enable Interrupt For Mailbox 7 */
631#define MBIM8 0x0100 /* Enable Interrupt For Mailbox 8 */
632#define MBIM9 0x0200 /* Enable Interrupt For Mailbox 9 */
633#define MBIM10 0x0400 /* Enable Interrupt For Mailbox 10 */
634#define MBIM11 0x0800 /* Enable Interrupt For Mailbox 11 */
635#define MBIM12 0x1000 /* Enable Interrupt For Mailbox 12 */
636#define MBIM13 0x2000 /* Enable Interrupt For Mailbox 13 */
637#define MBIM14 0x4000 /* Enable Interrupt For Mailbox 14 */
638#define MBIM15 0x8000 /* Enable Interrupt For Mailbox 15 */
639
640/* CAN_MBIM2 Masks */
641#define MBIM16 0x0001 /* Enable Interrupt For Mailbox 16 */
642#define MBIM17 0x0002 /* Enable Interrupt For Mailbox 17 */
643#define MBIM18 0x0004 /* Enable Interrupt For Mailbox 18 */
644#define MBIM19 0x0008 /* Enable Interrupt For Mailbox 19 */
645#define MBIM20 0x0010 /* Enable Interrupt For Mailbox 20 */
646#define MBIM21 0x0020 /* Enable Interrupt For Mailbox 21 */
647#define MBIM22 0x0040 /* Enable Interrupt For Mailbox 22 */
648#define MBIM23 0x0080 /* Enable Interrupt For Mailbox 23 */
649#define MBIM24 0x0100 /* Enable Interrupt For Mailbox 24 */
650#define MBIM25 0x0200 /* Enable Interrupt For Mailbox 25 */
651#define MBIM26 0x0400 /* Enable Interrupt For Mailbox 26 */
652#define MBIM27 0x0800 /* Enable Interrupt For Mailbox 27 */
653#define MBIM28 0x1000 /* Enable Interrupt For Mailbox 28 */
654#define MBIM29 0x2000 /* Enable Interrupt For Mailbox 29 */
655#define MBIM30 0x4000 /* Enable Interrupt For Mailbox 30 */
656#define MBIM31 0x8000 /* Enable Interrupt For Mailbox 31 */
657
658/* CAN_GIM Masks */
659#define EWTIM 0x0001 /* Enable TX Error Count Interrupt */
660#define EWRIM 0x0002 /* Enable RX Error Count Interrupt */
661#define EPIM 0x0004 /* Enable Error-Passive Mode Interrupt */
662#define BOIM 0x0008 /* Enable Bus Off Interrupt */
663#define WUIM 0x0010 /* Enable Wake-Up Interrupt */
664#define UIAIM 0x0020 /* Enable Access To Unimplemented Address Interrupt */
665#define AAIM 0x0040 /* Enable Abort Acknowledge Interrupt */
666#define RMLIM 0x0080 /* Enable RX Message Lost Interrupt */
667#define UCEIM 0x0100 /* Enable Universal Counter Overflow Interrupt */
668#define EXTIM 0x0200 /* Enable External Trigger Output Interrupt */
669#define ADIM 0x0400 /* Enable Access Denied Interrupt */
670
671/* CAN_GIS Masks */
672#define EWTIS 0x0001 /* TX Error Count IRQ Status */
673#define EWRIS 0x0002 /* RX Error Count IRQ Status */
674#define EPIS 0x0004 /* Error-Passive Mode IRQ Status */
675#define BOIS 0x0008 /* Bus Off IRQ Status */
676#define WUIS 0x0010 /* Wake-Up IRQ Status */
677#define UIAIS 0x0020 /* Access To Unimplemented Address IRQ Status */
678#define AAIS 0x0040 /* Abort Acknowledge IRQ Status */
679#define RMLIS 0x0080 /* RX Message Lost IRQ Status */
680#define UCEIS 0x0100 /* Universal Counter Overflow IRQ Status */
681#define EXTIS 0x0200 /* External Trigger Output IRQ Status */
682#define ADIS 0x0400 /* Access Denied IRQ Status */
683
684/* CAN_GIF Masks */
685#define EWTIF 0x0001 /* TX Error Count IRQ Flag */
686#define EWRIF 0x0002 /* RX Error Count IRQ Flag */
687#define EPIF 0x0004 /* Error-Passive Mode IRQ Flag */
688#define BOIF 0x0008 /* Bus Off IRQ Flag */
689#define WUIF 0x0010 /* Wake-Up IRQ Flag */
690#define UIAIF 0x0020 /* Access To Unimplemented Address IRQ Flag */
691#define AAIF 0x0040 /* Abort Acknowledge IRQ Flag */
692#define RMLIF 0x0080 /* RX Message Lost IRQ Flag */
693#define UCEIF 0x0100 /* Universal Counter Overflow IRQ Flag */
694#define EXTIF 0x0200 /* External Trigger Output IRQ Flag */
695#define ADIF 0x0400 /* Access Denied IRQ Flag */
696
697/* CAN_UCCNF Masks */
698#define UCCNF 0x000F /* Universal Counter Mode */
699#define UC_STAMP 0x0001 /* Timestamp Mode */
700#define UC_WDOG 0x0002 /* Watchdog Mode */
701#define UC_AUTOTX 0x0003 /* Auto-Transmit Mode */
702#define UC_ERROR 0x0006 /* CAN Error Frame Count */
703#define UC_OVER 0x0007 /* CAN Overload Frame Count */
704#define UC_LOST 0x0008 /* Arbitration Lost During TX Count */
705#define UC_AA 0x0009 /* TX Abort Count */
706#define UC_TA 0x000A /* TX Successful Count */
707#define UC_REJECT 0x000B /* RX Message Rejected Count */
708#define UC_RML 0x000C /* RX Message Lost Count */
709#define UC_RX 0x000D /* Total Successful RX Messages Count */
710#define UC_RMP 0x000E /* Successful RX W/Matching ID Count */
711#define UC_ALL 0x000F /* Correct Message On CAN Bus Line Count */
712#define UCRC 0x0020 /* Universal Counter Reload/Clear */
713#define UCCT 0x0040 /* Universal Counter CAN Trigger */
714#define UCE 0x0080 /* Universal Counter Enable */
715
716/* CAN_ESR Masks */
717#define ACKE 0x0004 /* Acknowledge Error */
718#define SER 0x0008 /* Stuff Error */
719#define CRCE 0x0010 /* CRC Error */
720#define SA0 0x0020 /* Stuck At Dominant Error */
721#define BEF 0x0040 /* Bit Error Flag */
722#define FER 0x0080 /* Form Error Flag */
723
724/* CAN_EWR Masks */
725#define EWLREC 0x00FF /* RX Error Count Limit (For EWRIS) */
726#define EWLTEC 0xFF00 /* TX Error Count Limit (For EWTIS) */
727
728#endif