linux/arch/blackfin/include/asm/bfin_can.h
<<
>>
Prefs
   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 */
  31struct bfin_can_mask_regs {
  32        __BFP(aml);
  33        __BFP(amh);
  34};
  35
  36struct 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
  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 */
  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