1 /* 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 */ 31 struct bfin_can_mask_regs { 32 __BFP(aml); 33 __BFP(amh); 34 }; 35 36 struct bfin_can_channel_regs { 37 /* data[0,2,4,6] -> data{0,1,2,3} while data[1,3,5,7] is padding */ 38 u16 data[8]; 39 __BFP(dlc); 40 __BFP(tsv); 41 __BFP(id0); 42 __BFP(id1); 43 }; 44 45 struct 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 */ 87 __BFP(version); /* offset 0xa8 */ 88 __BFP(mbtd); /* offset 0xac */ 89 __BFP(ewr); /* offset 0xb0 */ 90 __BFP(esr); /* offset 0xb4 */ 91 u32 __pad3[2]; 92 __BFP(ucreg); /* offset 0xc0 */ 93 __BFP(uccnt); /* offset 0xc4 */ 94 __BFP(ucrc); /* offset 0xc8 */ 95 __BFP(uccnf); /* offset 0xcc */ 96 u32 __pad4[1]; 97 __BFP(version2); /* offset 0xd4 */ 98 u32 __pad5[10]; 99 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 729