source: rtems/bsps/m68k/include/mcf5282/mcf5282.h @ d7d66d7

5
Last change on this file since d7d66d7 was 2afb22b, checked in by Chris Johns <chrisj@…>, on 12/23/17 at 07:18:56

Remove make preinstall

A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.

This has at least seven problems:

  • The make preinstall step itself needs time and disk space.
  • Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error.
  • There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult.
  • The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit.
  • An introduction of a new build system is difficult.
  • Include paths specified by the -B option are system headers. This may suppress warnings.
  • The parallel build had sporadic failures on some hosts.

This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.

The new cpukit include directories are:

  • cpukit/include
  • cpukit/score/cpu/@RTEMS_CPU@/include
  • cpukit/libnetworking

The new BSP include directories are:

  • bsps/include
  • bsps/@RTEMS_CPU@/include
  • bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include

There are build tree include directories for generated files.

The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.

The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.

Update #3254.

  • Property mode set to 100644
File size: 109.8 KB
Line 
1/*
2 *******************************************
3 *   Definitions from Motorola/FreeScale   *
4 *******************************************
5 */
6
7/*
8 * File:                mcf5282.h
9 * Purpose:             MCF5282 definitions
10 *
11 * Notes:
12 */
13
14#ifndef _CPU_MCF5282_H
15#define _CPU_MCF5282_H
16
17/********************************************************************/
18
19/*
20 * File:                mcf5xxx.h
21 * Purpose:             Definitions common to all ColdFire processors
22 *
23 * Notes:
24 */
25
26#ifndef _CPU_MCF5XXX_H
27#define _CPU_MCF5XXX_H
28
29/***********************************************************************/
30/*
31 * The basic data types
32 *
33 * Those are low-level so we mark them so that they may alias anything
34 */
35
36typedef unsigned char           uint8;  /*  8 bits */
37typedef unsigned short int      uint16 __attribute__((__may_alias__)); /* 16 bits */
38typedef unsigned long int       uint32 __attribute__((__may_alias__)); /* 32 bits */
39
40typedef signed char                     int8;   /*  8 bits */
41typedef signed short int        int16 __attribute__((__may_alias__));  /* 16 bits */
42typedef signed long int         int32 __attribute__((__may_alias__));  /* 32 bits */
43
44typedef volatile uint8          vuint8 __attribute__((__may_alias__));  /*  8 bits */
45typedef volatile uint16         vuint16 __attribute__((__may_alias__)); /* 16 bits */
46typedef volatile uint32         vuint32 __attribute__((__may_alias__)); /* 32 bits */
47
48/***********************************************************************/
49/*
50 * Common M68K & ColdFire definitions
51 */
52
53#define ADDRESS                 uint32
54#define INSTRUCTION             uint16
55#define ILLEGAL                 0x4AFC
56#define CPU_WORD_SIZE   16
57
58#define MCF5XXX_SR_T            (0x8000)
59#define MCF5XXX_SR_S            (0x2000)
60#define MCF5XXX_SR_M            (0x1000)
61#define MCF5XXX_SR_IPL          (0x0700)
62#define MCF5XXX_SR_IPL_0        (0x0000)
63#define MCF5XXX_SR_IPL_1        (0x0100)
64#define MCF5XXX_SR_IPL_2        (0x0200)
65#define MCF5XXX_SR_IPL_3        (0x0300)
66#define MCF5XXX_SR_IPL_4        (0x0400)
67#define MCF5XXX_SR_IPL_5        (0x0500)
68#define MCF5XXX_SR_IPL_6        (0x0600)
69#define MCF5XXX_SR_IPL_7        (0x0700)
70#define MCF5XXX_SR_X            (0x0010)
71#define MCF5XXX_SR_N            (0x0008)
72#define MCF5XXX_SR_Z            (0x0004)
73#define MCF5XXX_SR_V            (0x0002)
74#define MCF5XXX_SR_C            (0x0001)
75
76/*
77 * Used to set the initialize the cacr register to the BSP's desired
78 * starting value.
79 */
80void mcf5xxx_initialize_cacr(uint32_t);
81
82#define MCF5XXX_CACR_CENB               (0x80000000)
83#define MCF5XXX_CACR_CPDI               (0x10000000)
84#define MCF5XXX_CACR_CPD                (0x10000000)
85#define MCF5XXX_CACR_CFRZ               (0x08000000)
86#define MCF5XXX_CACR_CINV               (0x01000000)
87#define MCF5XXX_CACR_DIDI               (0x00800000)
88#define MCF5XXX_CACR_DISD               (0x00400000)
89#define MCF5XXX_CACR_INVI               (0x00200000)
90#define MCF5XXX_CACR_INVD               (0x00100000)
91#define MCF5XXX_CACR_CEIB               (0x00000400)
92#define MCF5XXX_CACR_DCM_WR             (0x00000000)
93#define MCF5XXX_CACR_DCM_CB             (0x00000100)
94#define MCF5XXX_CACR_DCM_IP             (0x00000200)
95#define MCF5XXX_CACR_DCM                (0x00000200)
96#define MCF5XXX_CACR_DCM_II             (0x00000300)
97#define MCF5XXX_CACR_DBWE               (0x00000100)
98#define MCF5XXX_CACR_DWP                (0x00000020)
99#define MCF5XXX_CACR_EUST               (0x00000010)
100#define MCF5XXX_CACR_CLNF_00    (0x00000000)
101#define MCF5XXX_CACR_CLNF_01    (0x00000002)
102#define MCF5XXX_CACR_CLNF_10    (0x00000004)
103#define MCF5XXX_CACR_CLNF_11    (0x00000006)
104
105#define MCF5XXX_ACR_AB(a)               ((a)&0xFF000000)
106#define MCF5XXX_ACR_AM(a)               (((a)&0xFF000000) >> 8)
107#define MCF5XXX_ACR_EN                  (0x00008000)
108#define MCF5XXX_ACR_SM_USER             (0x00000000)
109#define MCF5XXX_ACR_SM_SUPER    (0x00002000)
110#define MCF5XXX_ACR_SM_IGNORE   (0x00006000)
111#define MCF5XXX_ACR_ENIB                (0x00000080)
112#define MCF5XXX_ACR_CM                  (0x00000040)
113#define MCF5XXX_ACR_DCM_WR              (0x00000000)
114#define MCF5XXX_ACR_DCM_CB              (0x00000020)
115#define MCF5XXX_ACR_DCM_IP              (0x00000040)
116#define MCF5XXX_ACR_DCM_II              (0x00000060)
117#define MCF5XXX_ACR_CM                  (0x00000040)
118#define MCF5XXX_ACR_BWE                 (0x00000020)
119#define MCF5XXX_ACR_WP                  (0x00000004)
120
121#define MCF5XXX_RAMBAR_BA(a)    ((a)&0xFFFFC000)
122#define MCF5XXX_RAMBAR_PRI_00   (0x00000000)
123#define MCF5XXX_RAMBAR_PRI_01   (0x00004000)
124#define MCF5XXX_RAMBAR_PRI_10   (0x00008000)
125#define MCF5XXX_RAMBAR_PRI_11   (0x0000C000)
126#define MCF5XXX_RAMBAR_WP               (0x00000100)
127#define MCF5XXX_RAMBAR_CI               (0x00000020)
128#define MCF5XXX_RAMBAR_SC               (0x00000010)
129#define MCF5XXX_RAMBAR_SD               (0x00000008)
130#define MCF5XXX_RAMBAR_UC               (0x00000004)
131#define MCF5XXX_RAMBAR_UD               (0x00000002)
132#define MCF5XXX_RAMBAR_V                (0x00000001)
133
134/***********************************************************************/
135/*
136 * The ColdFire family of processors has a simplified exception stack
137 * frame that looks like the following:
138 *
139 *              3322222222221111 111111
140 *              1098765432109876 5432109876543210
141 *           8 +----------------+----------------+
142 *             |         Program Counter         |
143 *           4 +----------------+----------------+
144 *             |FS/Fmt/Vector/FS|      SR        |
145 *   SP -->  0 +----------------+----------------+
146 *
147 * The stack self-aligns to a 4-byte boundary at an exception, with
148 * the FS/Fmt/Vector/FS field indicating the size of the adjustment
149 * (SP += 0,1,2,3 bytes).
150 */
151
152#define MCF5XXX_RD_SF_FORMAT(PTR)       \
153        ((*((uint16 *)(PTR)) >> 12) & 0x00FF)
154
155#define MCF5XXX_RD_SF_VECTOR(PTR)       \
156        ((*((uint16 *)(PTR)) >>  2) & 0x00FF)
157
158#define MCF5XXX_RD_SF_FS(PTR)           \
159        ( ((*((uint16 *)(PTR)) & 0x0C00) >> 8) | (*((uint16 *)(PTR)) & 0x0003) )
160
161#define MCF5XXX_SF_SR(PTR)      *((uint16 *)(PTR)+1)
162#define MCF5XXX_SF_PC(PTR)      *((uint32 *)(PTR)+1)
163
164/********************************************************************/
165/*
166 * Functions provided by mcf5xxx.s
167 */
168
169int     asm_set_ipl (uint32);
170void    mcf5xxx_wr_cacr (uint32);
171void    mcf5xxx_wr_acr0 (uint32);
172void    mcf5xxx_wr_acr1 (uint32);
173void    mcf5xxx_wr_acr2 (uint32);
174void    mcf5xxx_wr_acr3 (uint32);
175void    mcf5xxx_wr_other_a7 (uint32);
176void    mcf5xxx_wr_other_sp (uint32);
177void    mcf5xxx_wr_vbr (uint32);
178void    mcf5xxx_wr_macsr (uint32);
179void    mcf5xxx_wr_mask (uint32);
180void    mcf5xxx_wr_acc0 (uint32);
181void    mcf5xxx_wr_accext01 (uint32);
182void    mcf5xxx_wr_accext23 (uint32);
183void    mcf5xxx_wr_acc1 (uint32);
184void    mcf5xxx_wr_acc2 (uint32);
185void    mcf5xxx_wr_acc3 (uint32);
186void    mcf5xxx_wr_sr (uint32);
187void    mcf5xxx_wr_rambar0 (uint32);
188void    mcf5xxx_wr_rambar1 (uint32);
189void    mcf5xxx_wr_mbar (uint32);
190void    mcf5xxx_wr_mbar0 (uint32);
191void    mcf5xxx_wr_mbar1 (uint32);
192
193/********************************************************************/
194
195#endif  /* _CPU_MCF5XXX_H */
196
197
198/********************************************************************/
199/*
200 * Memory map definitions from linker command files
201 */
202extern uint8 __IPSBAR[];
203
204/*********************************************************************
205*
206* System Control Module (SCM)
207*
208*********************************************************************/
209
210/* Read/Write access macros for general use */
211#define MCF5282_SCM_IPSBAR              (*(vuint32 *)(&__IPSBAR[0x0000]))
212#define MCF5282_SCM_RAMBAR              (*(vuint32 *)(&__IPSBAR[0x0008]))
213#define MCF5282_SCM_CRSR                (*(vuint8  *)(&__IPSBAR[0x0010]))
214#define MCF5282_SCM_CWCR                (*(vuint8  *)(&__IPSBAR[0x0011]))
215#define MCF5282_SCM_LPICR               (*(vuint8  *)(&__IPSBAR[0x0012]))
216#define MCF5282_SCM_CWSR                (*(vuint8  *)(&__IPSBAR[0x0013]))
217#define MCF5282_SCM_DMAREQC             (*(vuint32 *)(&__IPSBAR[0x0014]))
218#define MCF5282_SCM_MPARK               (*(vuint32 *)(&__IPSBAR[0x001C]))
219#define MCF5282_SCM_MPR                 (*(vuint8  *)(&__IPSBAR[0x0020]))
220#define MCF5282_SCM_PACR0               (*(vuint8  *)(&__IPSBAR[0x0024]))
221#define MCF5282_SCM_PACR1               (*(vuint8  *)(&__IPSBAR[0x0025]))
222#define MCF5282_SCM_PACR2               (*(vuint8  *)(&__IPSBAR[0x0026]))
223#define MCF5282_SCM_PACR3               (*(vuint8  *)(&__IPSBAR[0x0027]))
224#define MCF5282_SCM_PACR4               (*(vuint8  *)(&__IPSBAR[0x0028]))
225#define MCF5282_SCM_PACR5               (*(vuint8  *)(&__IPSBAR[0x002A]))
226#define MCF5282_SCM_PACR6               (*(vuint8  *)(&__IPSBAR[0x002B]))
227#define MCF5282_SCM_PACR7               (*(vuint8  *)(&__IPSBAR[0x002C]))
228#define MCF5282_SCM_PACR8               (*(vuint8  *)(&__IPSBAR[0x002E]))
229#define MCF5282_SCM_GPACR0              (*(vuint8  *)(&__IPSBAR[0x0030]))
230#define MCF5282_SCM_GPACR1              (*(vuint8  *)(&__IPSBAR[0x0031]))
231
232/* Bit level definitions and macros */
233#define MCF5282_SCM_IPSBAR_BA(x)                        ((x)&0xC0000000)
234#define MCF5282_SCM_IPSBAR_V                            (0x00000001)
235
236#define MCF5282_SCM_RAMBAR_BA(x)                        ((x)&0xFFFF0000)
237#define MCF5282_SCM_RAMBAR_BDE                          (0x00000200)
238
239#define MCF5282_SCM_CRSR_EXT                            (0x80)
240#define MCF5282_SCM_CRSR_CWDR                           (0x20)
241
242#define MCF5282_SCM_CWCR_CWE                            (0x80)
243#define MCF5282_SCM_CWCR_CWRI                           (0x40)
244#define MCF5282_SCM_CWCR_CWT(x)                         (((x)&0x03)<<3)
245#define MCF5282_SCM_CWCR_CWTA                           (0x04)
246#define MCF5282_SCM_CWCR_CWTAVAL                        (0x02)
247#define MCF5282_SCM_CWCR_CWTIC                          (0x01)
248
249#define MCF5282_SCM_LPICR_ENBSTOP                       (0x80)
250#define MCF5282_SCM_LPICR_XSTOP_IPL(x)          (((x)&0x07)<<4)
251
252#define MCF5282_SCM_CWSR_SEQ1                           (0x55)
253#define MCF5282_SCM_CWSR_SEQ2                           (0xAA)
254
255#define MCF5282_SCM_DMAREQC_DMAC3(x)            (((x)&0x000F)<<12)
256#define MCF5282_SCM_DMAREQC_DMAC2(x)            (((x)&0x000F)<<8)
257#define MCF5282_SCM_DMAREQC_DMAC1(x)            (((x)&0x000F)<<4)
258#define MCF5282_SCM_DMAREQC_DMAC0(x)            (((x)&0x000F))
259#define MCF5282_SCM_DMAREQC_DMATIMER0           (0x4)
260#define MCF5282_SCM_DMAREQC_DMATIMER1           (0x5)
261#define MCF5282_SCM_DMAREQC_DMATIMER2           (0x6)
262#define MCF5282_SCM_DMAREQC_DMATIMER3           (0x7)
263#define MCF5282_SCM_DMAREQC_UART0                       (0x8)
264#define MCF5282_SCM_DMAREQC_UART1                       (0x9)
265#define MCF5282_SCM_DMAREQC_UART2                       (0xA)
266
267#define MCF5282_SCM_MPARK_M2_P_EN                       (0x02000000)
268#define MCF5282_SCM_MPARK_BCR24BIT                      (0x01000000)
269#define MCF5282_SCM_MPARK_M3_PRTY(x)            (((x)&0x03)<<22)
270#define MCF5282_SCM_MPARK_M2_PRTY(x)            (((x)&0x03)<<20)
271#define MCF5282_SCM_MPARK_M0_PRTY(x)            (((x)&0x03)<<18)
272#define MCF5282_SCM_MPARK_M1_PRTY(x)            (((x)&0x03)<<16)
273#define MCF5282_SCM_MPARK_FIXED                         (0x00040000)
274#define MCF5282_SCM_MPARK_TIMEOUT                       (0x00020000)
275#define MCF5282_SCM_MPARK_PRK_LAST                      (0x00010000)
276#define MCF5282_SCM_MPARK_LCKOUT_TIME(x)        (((x)&0x000F)<<8)
277
278#define MCF5282_SCM_MPARK_MX_PRTY_FIRST         (0x3)
279#define MCF5282_SCM_MPARK_MX_PRTY_SECOND        (0x2)
280#define MCF5282_SCM_MPARK_MX_PRTY_THIRD         (0x1)
281#define MCF5282_SCM_MPARK_MX_PRTY_FOURTH        (0x0)
282
283#define MCF5282_SCM_MPR_MPR(x)                          (((x)&0x0F))
284
285#define MCF5282_SCM_PACR_LOCK1                          (0x80)
286#define MCF5282_SCM_PACR_ACCESSCTRL1(x)         (((x)&0x07)<<4)
287#define MCF5282_SCM_PACR_LOCK0                          (0x08)
288#define MCF5282_SCM_PACR_ACCESSCTRL0(x)         (((x)&0x07))
289#define MCF5282_SCM_PACR_RW_NA                          (0x0)
290#define MCF5282_SCM_PACR_R_NA                           (0x1)
291#define MCF5282_SCM_PACR_R_R                            (0x2)
292#define MCF5282_SCM_PACR_RW_RW                          (0x4)
293#define MCF5282_SCM_PACR_RW_R                           (0x5)
294#define MCF5282_SCM_PACR_NA_NA                          (0x7)
295
296#define MCF5282_SCM_GPACR_LOCK                          (0x80)
297#define MCF5282_SCM_GPACR_ACCESSCTRL(x)         (((x)&0x0F))
298#define MCF5282_SCM_GPACR_ACCESSCTRL_RW_NA              (0x0)
299#define MCF5282_SCM_GPACR_ACCESSCTRL_R_NA               (0x1)
300#define MCF5282_SCM_GPACR_ACCESSCTRL_R_R                (0x2)
301#define MCF5282_SCM_GPACR_ACCESSCTRL_RW_RW              (0x4)
302#define MCF5282_SCM_GPACR_ACCESSCTRL_RW_R               (0x5)
303#define MCF5282_SCM_GPACR_ACCESSCTRL_NA_NA              (0x7)
304#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_NA             (0x8)
305#define MCF5282_SCM_GPACR_ACCESSCTRL_RE_NA              (0x9)
306#define MCF5282_SCM_GPACR_ACCESSCTRL_RE_RE              (0xA)
307#define MCF5282_SCM_GPACR_ACCESSCTRL_E_NA               (0xB)
308#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_RWE    (0xC)
309#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_RE             (0xD)
310#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_E              (0xF)
311
312/*********************************************************************
313*
314* SDRAM Controller Module
315*
316*********************************************************************/
317
318/* Read/Write access macros for general use */
319#define MCF5282_SDRAMC_DCR              (*(vuint16 *)(&__IPSBAR[0x0040]))
320#define MCF5282_SDRAMC_DACR0    (*(vuint32 *)(&__IPSBAR[0x0048]))
321#define MCF5282_SDRAMC_DMR0             (*(vuint32 *)(&__IPSBAR[0x004C]))
322#define MCF5282_SDRAMC_DACR1    (*(vuint32 *)(&__IPSBAR[0x0050]))
323#define MCF5282_SDRAMC_DMR1             (*(vuint32 *)(&__IPSBAR[0x0054]))
324
325/* Bit level definitions and macros */
326#define MCF5282_SDRAMC_DCR_NAM                          (0x2000)
327#define MCF5282_SDRAMC_DCR_COC                          (0x1000)
328#define MCF5282_SDRAMC_DCR_IS                           (0x0800)
329#define MCF5282_SDRAMC_DCR_RTIM_3                       (0x0000)
330#define MCF5282_SDRAMC_DCR_RTIM_6                       (0x0200)
331#define MCF5282_SDRAMC_DCR_RTIM_9                       (0x0400)
332#define MCF5282_SDRAMC_DCR_RC(x)                        ((x)&0x01FF)
333
334#define MCF5282_SDRAMC_DACR_BASE(x)                     ((x)&0xFFFC0000)
335#define MCF5282_SDRAMC_DACR_RE                          (0x00008000)
336#define MCF5282_SDRAMC_DACR_CASL(x)                     (((x)&0x03)<<12)
337#define MCF5282_SDRAMC_DACR_CBM(x)                      (((x)&0x07)<<8)
338#define MCF5282_SDRAMC_DACR_PS_32                       (0x00000000)
339#define MCF5282_SDRAMC_DACR_PS_8                        (0x00000010)
340#define MCF5282_SDRAMC_DACR_PS_16                       (0x00000020)
341#define MCF5282_SDRAMC_DACR_IMRS                        (0x00000040)
342#define MCF5282_SDRAMC_DACR_IP                          (0x00000008)
343
344#define MCF5282_SDRAMC_DMR_BAM_4G                       (0xFFFC0000)
345#define MCF5282_SDRAMC_DMR_BAM_2G                       (0x7FFC0000)
346#define MCF5282_SDRAMC_DMR_BAM_1G                       (0x3FFC0000)
347#define MCF5282_SDRAMC_DMR_BAM_1024M            (0x3FFC0000)
348#define MCF5282_SDRAMC_DMR_BAM_512M                     (0x1FFC0000)
349#define MCF5282_SDRAMC_DMR_BAM_256M                     (0x0FFC0000)
350#define MCF5282_SDRAMC_DMR_BAM_128M                     (0x07FC0000)
351#define MCF5282_SDRAMC_DMR_BAM_64M                      (0x03FC0000)
352#define MCF5282_SDRAMC_DMR_BAM_32M                      (0x01FC0000)
353#define MCF5282_SDRAMC_DMR_BAM_16M                      (0x00FC0000)
354#define MCF5282_SDRAMC_DMR_BAM_8M                       (0x007C0000)
355#define MCF5282_SDRAMC_DMR_BAM_4M                       (0x003C0000)
356#define MCF5282_SDRAMC_DMR_BAM_2M                       (0x001C0000)
357#define MCF5282_SDRAMC_DMR_BAM_1M                       (0x000C0000)
358#define MCF5282_SDRAMC_DMR_BAM_1024K            (0x000C0000)
359#define MCF5282_SDRAMC_DMR_BAM_512K                     (0x00040000)
360#define MCF5282_SDRAMC_DMR_BAM_256K                     (0x00000000)
361#define MCF5282_SDRAMC_DMR_WP                           (0x00000100)
362#define MCF5282_SDRAMC_DMR_CI                           (0x00000040)
363#define MCF5282_SDRAMC_DMR_AM                           (0x00000020)
364#define MCF5282_SDRAMC_DMR_SC                           (0x00000010)
365#define MCF5282_SDRAMC_DMR_SD                           (0x00000008)
366#define MCF5282_SDRAMC_DMR_UC                           (0x00000004)
367#define MCF5282_SDRAMC_DMR_UD                           (0x00000002)
368#define MCF5282_SDRAMC_DMR_V                            (0x00000001)
369
370/*********************************************************************
371*
372* Chip Select Module
373*
374*********************************************************************/
375
376/* Read/Write access macros for general use */
377#define MCF5282_CS0_CSAR        (*(vuint16 *)(&__IPSBAR[0x0080]))
378#define MCF5282_CS0_CSMR        (*(vuint32 *)(&__IPSBAR[0x0084]))
379#define MCF5282_CS0_CSCR        (*(vuint16 *)(&__IPSBAR[0x008A]))
380
381#define MCF5282_CS1_CSAR        (*(vuint16 *)(&__IPSBAR[0x008C]))
382#define MCF5282_CS1_CSMR        (*(vuint32 *)(&__IPSBAR[0x0090]))
383#define MCF5282_CS1_CSCR        (*(vuint16 *)(&__IPSBAR[0x0096]))
384
385#define MCF5282_CS2_CSAR        (*(vuint16 *)(&__IPSBAR[0x0098]))
386#define MCF5282_CS2_CSMR        (*(vuint32 *)(&__IPSBAR[0x009C]))
387#define MCF5282_CS2_CSCR        (*(vuint16 *)(&__IPSBAR[0x00A2]))
388
389#define MCF5282_CS3_CSAR        (*(vuint16 *)(&__IPSBAR[0x00A4]))
390#define MCF5282_CS3_CSMR        (*(vuint32 *)(&__IPSBAR[0x00A8]))
391#define MCF5282_CS3_CSCR        (*(vuint16 *)(&__IPSBAR[0x00AE]))
392
393#define MCF5282_CS4_CSAR        (*(vuint16 *)(&__IPSBAR[0x00B0]))
394#define MCF5282_CS4_CSMR        (*(vuint32 *)(&__IPSBAR[0x00B4]))
395#define MCF5282_CS4_CSCR        (*(vuint16 *)(&__IPSBAR[0x00BA]))
396
397#define MCF5282_CS5_CSAR        (*(vuint16 *)(&__IPSBAR[0x00BC]))
398#define MCF5282_CS5_CSMR        (*(vuint32 *)(&__IPSBAR[0x00C0]))
399#define MCF5282_CS5_CSCR        (*(vuint16 *)(&__IPSBAR[0x00C6]))
400
401#define MCF5282_CS6_CSAR        (*(vuint16 *)(&__IPSBAR[0x00C8]))
402#define MCF5282_CS6_CSMR        (*(vuint32 *)(&__IPSBAR[0x00CC]))
403#define MCF5282_CS6_CSCR        (*(vuint16 *)(&__IPSBAR[0x00D2]))
404
405#define MCF5282_CS_CSAR(x)      (*(vuint16 *)(&__IPSBAR[0x0080+((x)*0x0C)]))
406#define MCF5282_CS_CSMR(x)      (*(vuint32 *)(&__IPSBAR[0x0084+((x)*0x0C)]))
407#define MCF5282_CS_CSCR(x)      (*(vuint16 *)(&__IPSBAR[0x008A+((x)*0x0C)]))
408
409/* Bit level definitions and macros */
410#define MCF5282_CS_CSAR_BA(a)                           (uint16)(((a)&0xFFFF0000)>>16)
411
412#define MCF5282_CS_CSMR_BAM_4G                          (0xFFFF0000)
413#define MCF5282_CS_CSMR_BAM_2G                          (0x7FFF0000)
414#define MCF5282_CS_CSMR_BAM_1G                          (0x3FFF0000)
415#define MCF5282_CS_CSMR_BAM_1024M                       (0x3FFF0000)
416#define MCF5282_CS_CSMR_BAM_512M                        (0x1FFF0000)
417#define MCF5282_CS_CSMR_BAM_256M                        (0x0FFF0000)
418#define MCF5282_CS_CSMR_BAM_128M                        (0x07FF0000)
419#define MCF5282_CS_CSMR_BAM_64M                         (0x03FF0000)
420#define MCF5282_CS_CSMR_BAM_32M                         (0x01FF0000)
421#define MCF5282_CS_CSMR_BAM_16M                         (0x00FF0000)
422#define MCF5282_CS_CSMR_BAM_8M                          (0x007F0000)
423#define MCF5282_CS_CSMR_BAM_4M                          (0x003F0000)
424#define MCF5282_CS_CSMR_BAM_2M                          (0x001F0000)
425#define MCF5282_CS_CSMR_BAM_1M                          (0x000F0000)
426#define MCF5282_CS_CSMR_BAM_1024K                       (0x000F0000)
427#define MCF5282_CS_CSMR_BAM_512K                        (0x00070000)
428#define MCF5282_CS_CSMR_BAM_256K                        (0x00030000)
429#define MCF5282_CS_CSMR_BAM_128K                        (0x00010000)
430#define MCF5282_CS_CSMR_BAM_64K                         (0x00000000)
431#define MCF5282_CS_CSMR_WP                                      (0x00000100)
432#define MCF5282_CS_CSMR_AM                                      (0x00000040)
433#define MCF5282_CS_CSMR_CI                                      (0x00000020)
434#define MCF5282_CS_CSMR_SC                                      (0x00000010)
435#define MCF5282_CS_CSMR_SD                                      (0x00000008)
436#define MCF5282_CS_CSMR_UC                                      (0x00000004)
437#define MCF5282_CS_CSMR_UD                                      (0x00000002)
438#define MCF5282_CS_CSMR_V                                       (0x00000001)
439
440#define MCF5282_CS_CSCR_WS(x)                           (((x)&0x0F)<<10)
441#define MCF5282_CS_CSCR_AA                                      (0x0100)
442#define MCF5282_CS_CSCR_PS_8                            (0x0040)
443#define MCF5282_CS_CSCR_PS_16                           (0x0080)
444#define MCF5282_CS_CSCR_PS_32                           (0x0000)
445#define MCF5282_CS_CSCR_BEM                                     (0x0020)
446#define MCF5282_CS_CSCR_BSTR                            (0x0010)
447#define MCF5282_CS_CSCR_BSTW                            (0x0008)
448
449/*********************************************************************
450*
451* Direct Memory Access (DMA) Module
452*
453*********************************************************************/
454
455/* Read/Write access macros for general use */
456#define MCF5282_DMA0_SAR                (*(vuint32  *)(&__IPSBAR[0x0100]))
457#define MCF5282_DMA0_DAR                (*(vuint32  *)(&__IPSBAR[0x0104]))
458#define MCF5282_DMA0_DCR                (*(vuint32  *)(&__IPSBAR[0x0108]))
459#define MCF5282_DMA0_BCR                (*(vuint32  *)(&__IPSBAR[0x010C]))
460#define MCF5282_DMA0_DSR                (*(vuint8   *)(&__IPSBAR[0x0110]))
461
462#define MCF5282_DMA1_SAR                (*(vuint32  *)(&__IPSBAR[0x0140]))
463#define MCF5282_DMA1_DAR                (*(vuint32  *)(&__IPSBAR[0x0144]))
464#define MCF5282_DMA1_DCR                (*(vuint32  *)(&__IPSBAR[0x0148]))
465#define MCF5282_DMA1_BCR                (*(vuint32  *)(&__IPSBAR[0x014C]))
466#define MCF5282_DMA1_DSR                (*(vuint8   *)(&__IPSBAR[0x0150]))
467
468#define MCF5282_DMA2_SAR                (*(vuint32  *)(&__IPSBAR[0x0180]))
469#define MCF5282_DMA2_DAR                (*(vuint32  *)(&__IPSBAR[0x0184]))
470#define MCF5282_DMA2_DCR                (*(vuint32  *)(&__IPSBAR[0x0188]))
471#define MCF5282_DMA2_BCR                (*(vuint32  *)(&__IPSBAR[0x018C]))
472#define MCF5282_DMA2_DSR                (*(vuint8   *)(&__IPSBAR[0x0190]))
473
474#define MCF5282_DMA3_SAR                (*(vuint32  *)(&__IPSBAR[0x01C0]))
475#define MCF5282_DMA3_DAR                (*(vuint32  *)(&__IPSBAR[0x01C4]))
476#define MCF5282_DMA3_DCR                (*(vuint32  *)(&__IPSBAR[0x01C8]))
477#define MCF5282_DMA3_BCR                (*(vuint32  *)(&__IPSBAR[0x01CC]))
478#define MCF5282_DMA3_DSR                (*(vuint8   *)(&__IPSBAR[0x01D0]))
479
480#define MCF5282_DMA_SAR(x)              (*(vuint32  *)(&__IPSBAR[0x0100+((x)*0x40)]))
481#define MCF5282_DMA_DAR(x)              (*(vuint32  *)(&__IPSBAR[0x0104+((x)*0x40)]))
482#define MCF5282_DMA_DCR(x)              (*(vuint32  *)(&__IPSBAR[0x0108+((x)*0x40)]))
483#define MCF5282_DMA_BCR(x)              (*(vuint32  *)(&__IPSBAR[0x010C+((x)*0x40)]))
484#define MCF5282_DMA_DSR(x)              (*(vuint8   *)(&__IPSBAR[0x0110+((x)*0x40)]))
485
486/* Bit level definitions and macros */
487#define MCF5282_DMA_DCR_INT                                     (0x80000000)
488#define MCF5282_DMA_DCR_EEXT                            (0x40000000)
489#define MCF5282_DMA_DCR_CS                                      (0x20000000)
490#define MCF5282_DMA_DCR_AA                                      (0x10000000)
491#define MCF5282_DMA_DCR_BWC_DMA                         (0x00000000)
492#define MCF5282_DMA_DCR_BWC_512                         (0x02000000)
493#define MCF5282_DMA_DCR_BWC_1024                        (0x04000000)
494#define MCF5282_DMA_DCR_BWC_2048                        (0x06000000)
495#define MCF5282_DMA_DCR_BWC_4096                        (0x08000000)
496#define MCF5282_DMA_DCR_BWC_8192                        (0x0A000000)
497#define MCF5282_DMA_DCR_BWC_16384                       (0x0C000000)
498#define MCF5282_DMA_DCR_BWC_32768                       (0x0E000000)
499#define MCF5282_DMA_DCR_SINC                            (0x00400000)
500#define MCF5282_DMA_DCR_SSIZE_LONG                      (0x00000000)
501#define MCF5282_DMA_DCR_SSIZE_BYTE                      (0x00100000)
502#define MCF5282_DMA_DCR_SSIZE_WORD                      (0x00200000)
503#define MCF5282_DMA_DCR_SSIZE_LINE                      (0x00300000)
504#define MCF5282_DMA_DCR_DINC                            (0x00080000)
505#define MCF5282_DMA_DCR_DSIZE_LONG                      (0x00000000)
506#define MCF5282_DMA_DCR_DSIZE_BYTE                      (0x00020000)
507#define MCF5282_DMA_DCR_DSIZE_WORD                      (0x00040000)
508#define MCF5282_DMA_DCR_START                           (0x00010000)
509#define MCF5282_DMA_DCR_AT                                      (0x00008000)
510
511#define MCF5282_DMA_DSR_CE                                      (0x40)
512#define MCF5282_DMA_DSR_BES                                     (0x20)
513#define MCF5282_DMA_DSR_BED                                     (0x10)
514#define MCF5282_DMA_DSR_REQ                                     (0x04)
515#define MCF5282_DMA_DSR_BSY                                     (0x02)
516#define MCF5282_DMA_DSR_DONE                            (0x01)
517
518/*********************************************************************
519*
520* Universal Asychronous Receiver/Transmitter (UART) Module
521*
522*********************************************************************/
523
524/* Read/Write access macros for general use */
525#define MCF5282_UART0_UMR               (*(vuint8  *)(&__IPSBAR[0x0200]))
526#define MCF5282_UART0_USR               (*(vuint8  *)(&__IPSBAR[0x0204]))
527#define MCF5282_UART0_UCSR              (*(vuint8  *)(&__IPSBAR[0x0204]))
528#define MCF5282_UART0_UCR               (*(vuint8  *)(&__IPSBAR[0x0208]))
529#define MCF5282_UART0_URB               (*(vuint8  *)(&__IPSBAR[0x020C]))
530#define MCF5282_UART0_UTB               (*(vuint8  *)(&__IPSBAR[0x020C]))
531#define MCF5282_UART0_UIPCR             (*(vuint8  *)(&__IPSBAR[0x0210]))
532#define MCF5282_UART0_UACR              (*(vuint8  *)(&__IPSBAR[0x0210]))
533#define MCF5282_UART0_UISR              (*(vuint8  *)(&__IPSBAR[0x0214]))
534#define MCF5282_UART0_UIMR              (*(vuint8  *)(&__IPSBAR[0x0214]))
535#define MCF5282_UART0_UBG1              (*(vuint8  *)(&__IPSBAR[0x0218]))
536#define MCF5282_UART0_UBG2              (*(vuint8  *)(&__IPSBAR[0x021C]))
537#define MCF5282_UART0_UIP               (*(vuint8  *)(&__IPSBAR[0x0234]))
538#define MCF5282_UART0_UOP1              (*(vuint8  *)(&__IPSBAR[0x0238]))
539#define MCF5282_UART0_UOP0              (*(vuint8  *)(&__IPSBAR[0x023C]))
540
541#define MCF5282_UART1_UMR               (*(vuint8  *)(&__IPSBAR[0x0240]))
542#define MCF5282_UART1_USR               (*(vuint8  *)(&__IPSBAR[0x0244]))
543#define MCF5282_UART1_UCSR              (*(vuint8  *)(&__IPSBAR[0x0244]))
544#define MCF5282_UART1_UCR               (*(vuint8  *)(&__IPSBAR[0x0248]))
545#define MCF5282_UART1_URB               (*(vuint8  *)(&__IPSBAR[0x024C]))
546#define MCF5282_UART1_UTB               (*(vuint8  *)(&__IPSBAR[0x024C]))
547#define MCF5282_UART1_UIPCR             (*(vuint8  *)(&__IPSBAR[0x0250]))
548#define MCF5282_UART1_UACR              (*(vuint8  *)(&__IPSBAR[0x0250]))
549#define MCF5282_UART1_UISR              (*(vuint8  *)(&__IPSBAR[0x0254]))
550#define MCF5282_UART1_UIMR              (*(vuint8  *)(&__IPSBAR[0x0254]))
551#define MCF5282_UART1_UBG1              (*(vuint8  *)(&__IPSBAR[0x0258]))
552#define MCF5282_UART1_UBG2              (*(vuint8  *)(&__IPSBAR[0x025C]))
553#define MCF5282_UART1_UIP               (*(vuint8  *)(&__IPSBAR[0x0274]))
554#define MCF5282_UART1_UOP1              (*(vuint8  *)(&__IPSBAR[0x0278]))
555#define MCF5282_UART1_UOP0              (*(vuint8  *)(&__IPSBAR[0x027C]))
556
557#define MCF5282_UART2_UMR               (*(vuint8  *)(&__IPSBAR[0x0280]))
558#define MCF5282_UART2_USR               (*(vuint8  *)(&__IPSBAR[0x0284]))
559#define MCF5282_UART2_UCSR              (*(vuint8  *)(&__IPSBAR[0x0284]))
560#define MCF5282_UART2_UCR               (*(vuint8  *)(&__IPSBAR[0x0288]))
561#define MCF5282_UART2_URB               (*(vuint8  *)(&__IPSBAR[0x028C]))
562#define MCF5282_UART2_UTB               (*(vuint8  *)(&__IPSBAR[0x028C]))
563#define MCF5282_UART2_UIPCR             (*(vuint8  *)(&__IPSBAR[0x0290]))
564#define MCF5282_UART2_UACR              (*(vuint8  *)(&__IPSBAR[0x0290]))
565#define MCF5282_UART2_UISR              (*(vuint8  *)(&__IPSBAR[0x0294]))
566#define MCF5282_UART2_UIMR              (*(vuint8  *)(&__IPSBAR[0x0294]))
567#define MCF5282_UART2_UBG1              (*(vuint8  *)(&__IPSBAR[0x0298]))
568#define MCF5282_UART2_UBG2              (*(vuint8  *)(&__IPSBAR[0x029C]))
569#define MCF5282_UART2_UIP               (*(vuint8  *)(&__IPSBAR[0x02B4]))
570#define MCF5282_UART2_UOP1              (*(vuint8  *)(&__IPSBAR[0x02B8]))
571#define MCF5282_UART2_UOP0              (*(vuint8  *)(&__IPSBAR[0x02BC]))
572
573#define MCF5282_UART_UMR(x)             (*(vuint8  *)(&__IPSBAR[0x0200+((x)*0x40)]))
574#define MCF5282_UART_USR(x)             (*(vuint8  *)(&__IPSBAR[0x0204+((x)*0x40)]))
575#define MCF5282_UART_UCSR(x)    (*(vuint8  *)(&__IPSBAR[0x0204+((x)*0x40)]))
576#define MCF5282_UART_UCR(x)             (*(vuint8  *)(&__IPSBAR[0x0208+((x)*0x40)]))
577#define MCF5282_UART_URB(x)             (*(vuint8  *)(&__IPSBAR[0x020C+((x)*0x40)]))
578#define MCF5282_UART_UTB(x)             (*(vuint8  *)(&__IPSBAR[0x020C+((x)*0x40)]))
579#define MCF5282_UART_UIPCR(x)   (*(vuint8  *)(&__IPSBAR[0x0210+((x)*0x40)]))
580#define MCF5282_UART_UACR(x)    (*(vuint8  *)(&__IPSBAR[0x0210+((x)*0x40)]))
581#define MCF5282_UART_UISR(x)    (*(vuint8  *)(&__IPSBAR[0x0214+((x)*0x40)]))
582#define MCF5282_UART_UIMR(x)    (*(vuint8  *)(&__IPSBAR[0x0214+((x)*0x40)]))
583#define MCF5282_UART_UBG1(x)    (*(vuint8  *)(&__IPSBAR[0x0218+((x)*0x40)]))
584#define MCF5282_UART_UBG2(x)    (*(vuint8  *)(&__IPSBAR[0x021C+((x)*0x40)]))
585#define MCF5282_UART_UIP(x)             (*(vuint8  *)(&__IPSBAR[0x0234+((x)*0x40)]))
586#define MCF5282_UART_UOP1(x)    (*(vuint8  *)(&__IPSBAR[0x0238+((x)*0x40)]))
587#define MCF5282_UART_UOP0(x)    (*(vuint8  *)(&__IPSBAR[0x023C+((x)*0x40)]))
588
589/* Bit level definitions and macros */
590#define MCF5282_UART_UMR1_RXRTS                         (0x80)
591#define MCF5282_UART_UMR1_RXIRQ                         (0x40)
592#define MCF5282_UART_UMR1_ERR                           (0x20)
593#define MCF5282_UART_UMR1_PM_MULTI_ADDR         (0x1C)
594#define MCF5282_UART_UMR1_PM_MULTI_DATA         (0x18)
595#define MCF5282_UART_UMR1_PM_NONE                       (0x10)
596#define MCF5282_UART_UMR1_PM_FORCE_HI           (0x0C)
597#define MCF5282_UART_UMR1_PM_FORCE_LO           (0x08)
598#define MCF5282_UART_UMR1_PM_ODD                        (0x04)
599#define MCF5282_UART_UMR1_PM_EVEN                       (0x00)
600#define MCF5282_UART_UMR1_BC_5                          (0x00)
601#define MCF5282_UART_UMR1_BC_6                          (0x01)
602#define MCF5282_UART_UMR1_BC_7                          (0x02)
603#define MCF5282_UART_UMR1_BC_8                          (0x03)
604
605#define MCF5282_UART_UMR2_CM_NORMAL                     (0x00)
606#define MCF5282_UART_UMR2_CM_ECHO                       (0x40)
607#define MCF5282_UART_UMR2_CM_LOCAL_LOOP         (0x80)
608#define MCF5282_UART_UMR2_CM_REMOTE_LOOP        (0xC0)
609#define MCF5282_UART_UMR2_TXRTS                         (0x20)
610#define MCF5282_UART_UMR2_TXCTS                         (0x10)
611#define MCF5282_UART_UMR2_STOP_BITS_1           (0x07)
612#define MCF5282_UART_UMR2_STOP_BITS_15          (0x08)
613#define MCF5282_UART_UMR2_STOP_BITS_2           (0x0F)
614#define MCF5282_UART_UMR2_STOP_BITS(a)          ((a)&0x0f)
615
616#define MCF5282_UART_USR_RB                                     (0x80)
617#define MCF5282_UART_USR_FE                                     (0x40)
618#define MCF5282_UART_USR_PE                                     (0x20)
619#define MCF5282_UART_USR_OE                                     (0x10)
620#define MCF5282_UART_USR_TXEMP                          (0x08)
621#define MCF5282_UART_USR_TXRDY                          (0x04)
622#define MCF5282_UART_USR_FFULL                          (0x02)
623#define MCF5282_UART_USR_RXRDY                          (0x01)
624
625#define MCF5282_UART_UCSR_RCS_SYS_CLK           (0xD0)
626#define MCF5282_UART_UCSR_RCS_DTIN16            (0xE0)
627#define MCF5282_UART_UCSR_RCS_DTIN                      (0xF0)
628#define MCF5282_UART_UCSR_TCS_SYS_CLK           (0x0D)
629#define MCF5282_UART_UCSR_TCS_DTIN16            (0x0E)
630#define MCF5282_UART_UCSR_TCS_DTIN                      (0x0F)
631
632#define MCF5282_UART_UCR_NONE                           (0x00)
633#define MCF5282_UART_UCR_STOP_BREAK                     (0x70)
634#define MCF5282_UART_UCR_START_BREAK            (0x60)
635#define MCF5282_UART_UCR_RESET_BKCHGINT         (0x50)
636#define MCF5282_UART_UCR_RESET_ERROR            (0x40)
637#define MCF5282_UART_UCR_RESET_TX                       (0x30)
638#define MCF5282_UART_UCR_RESET_RX                       (0x20)
639#define MCF5282_UART_UCR_RESET_MR                       (0x10)
640#define MCF5282_UART_UCR_TX_DISABLED            (0x08)
641#define MCF5282_UART_UCR_TX_ENABLED                     (0x04)
642#define MCF5282_UART_UCR_RX_DISABLED            (0x02)
643#define MCF5282_UART_UCR_RX_ENABLED                     (0x01)
644
645#define MCF5282_UART_UIPCR_COS                          (0x10)
646#define MCF5282_UART_UIPCR_CTS                          (0x01)
647
648#define MCF5282_UART_UACR_IEC                           (0x01)
649
650#define MCF5282_UART_UISR_COS                           (0x80)
651#define MCF5282_UART_UISR_ABC                           (0x40)
652#define MCF5282_UART_UISR_RXFIFO                        (0x20)
653#define MCF5282_UART_UISR_TXFIFO                        (0x10)
654#define MCF5282_UART_UISR_RXFTO                         (0x08)
655#define MCF5282_UART_UISR_DB                            (0x04)
656#define MCF5282_UART_UISR_RXRDY                         (0x02)
657#define MCF5282_UART_UISR_TXRDY                         (0x01)
658
659#define MCF5282_UART_UIMR_COS                           (0x80)
660#define MCF5282_UART_UIMR_DB                            (0x04)
661#define MCF5282_UART_UIMR_FFULL                         (0x02)
662#define MCF5282_UART_UIMR_TXRDY                         (0x01)
663
664#define MCF5282_UART_UIP_CTS                            (0x01)
665
666#define MCF5282_UART_UOP_RTS                            (0x01)
667
668/*********************************************************************
669*
670* Inter-IC (I2C) Module
671*
672*********************************************************************/
673
674/* Read/Write access macros for general use */
675#define MCF5282_I2C_I2ADR               (*(vuint8  *)(&__IPSBAR[0x0300]))
676#define MCF5282_I2C_I2FDR               (*(vuint8  *)(&__IPSBAR[0x0304]))
677#define MCF5282_I2C_I2CR                (*(vuint8  *)(&__IPSBAR[0x0308]))
678#define MCF5282_I2C_I2SR                (*(vuint8  *)(&__IPSBAR[0x030C]))
679#define MCF5282_I2C_I2DR                (*(vuint8  *)(&__IPSBAR[0x0310]))
680
681/* Bit level definitions and macros */
682#define MCF5282_I2C_I2ADR_ADDR(x)                       (((x)&0x7F)<<0x01)
683
684#define MCF5282_I2C_I2FDR_IC(x)                         (((x)&0x3F))
685
686#define MCF5282_I2C_I2CR_IEN                            (0x80)
687#define MCF5282_I2C_I2CR_IIEN                           (0x40)
688#define MCF5282_I2C_I2CR_MSTA                           (0x20)
689#define MCF5282_I2C_I2CR_MTX                            (0x10)
690#define MCF5282_I2C_I2CR_TXAK                           (0x08)
691#define MCF5282_I2C_I2CR_RSTA                           (0x04)
692
693#define MCF5282_I2C_I2SR_ICF                            (0x80)
694#define MCF5282_I2C_I2SR_IAAS                           (0x40)
695#define MCF5282_I2C_I2SR_IBB                            (0x20)
696#define MCF5282_I2C_I2SR_IAL                            (0x10)
697#define MCF5282_I2C_I2SR_SRW                            (0x04)
698#define MCF5282_I2C_I2SR_IIF                            (0x02)
699#define MCF5282_I2C_I2SR_RXAK                           (0x01)
700
701/*********************************************************************
702*
703* Queued Serial Peripheral Interface (QSPI) Module
704*
705*********************************************************************/
706
707/* Read/Write access macros for general use */
708#define MCF5282_QSPI_QMR                (*(vuint16 *)(&__IPSBAR[0x0340]))
709#define MCF5282_QSPI_QDLYR              (*(vuint16 *)(&__IPSBAR[0x0344]))
710#define MCF5282_QSPI_QWR                (*(vuint16 *)(&__IPSBAR[0x0348]))
711#define MCF5282_QSPI_QIR                (*(vuint16 *)(&__IPSBAR[0x034C]))
712#define MCF5282_QSPI_QAR                (*(vuint16 *)(&__IPSBAR[0x0350]))
713#define MCF5282_QSPI_QDR                (*(vuint16 *)(&__IPSBAR[0x0354]))
714#define MCF5282_QSPI_QCR                (*(vuint16 *)(&__IPSBAR[0x0354]))
715
716/* Bit level definitions and macros */
717#define MCF5282_QSPI_QMR_MSTR                           (0x8000)
718#define MCF5282_QSPI_QMR_DOHIE                          (0x4000)
719#define MCF5282_QSPI_QMR_BITS_16                        (0x0000)
720#define MCF5282_QSPI_QMR_BITS_8                         (0x2000)
721#define MCF5282_QSPI_QMR_BITS_9                         (0x2400)
722#define MCF5282_QSPI_QMR_BITS_10                        (0x2800)
723#define MCF5282_QSPI_QMR_BITS_11                        (0x2C00)
724#define MCF5282_QSPI_QMR_BITS_12                        (0x3000)
725#define MCF5282_QSPI_QMR_BITS_13                        (0x3400)
726#define MCF5282_QSPI_QMR_BITS_14                        (0x3800)
727#define MCF5282_QSPI_QMR_BITS_15                        (0x3C00)
728#define MCF5282_QSPI_QMR_CPOL                           (0x0200)
729#define MCF5282_QSPI_QMR_CPHA                           (0x0100)
730#define MCF5282_QSPI_QMR_BAUD(x)                        (((x)&0x00FF))
731
732#define MCF5282_QSPI_QDLYR_SPE                          (0x8000)
733#define MCF5282_QSPI_QDLYR_QCD(x)                       (((x)&0x007F)<<8)
734#define MCF5282_QSPI_QDLYR_DTL(x)                       (((x)&0x00FF))
735
736#define MCF5282_QSPI_QWR_HALT                           (0x8000)
737#define MCF5282_QSPI_QWR_WREN                           (0x4000)
738#define MCF5282_QSPI_QWR_WRTO                           (0x2000)
739#define MCF5282_QSPI_QWR_CSIV                           (0x1000)
740#define MCF5282_QSPI_QWR_ENDQP(x)                       (((x)&0x000F)<<8)
741#define MCF5282_QSPI_QWR_CPTQP(x)                       (((x)&0x000F)<<4)
742#define MCF5282_QSPI_QWR_NEWQP(x)                       (((x)&0x000F))
743
744#define MCF5282_QSPI_QIR_WCEFB                          (0x8000)
745#define MCF5282_QSPI_QIR_ABRTB                          (0x4000)
746#define MCF5282_QSPI_QIR_ABRTL                          (0x1000)
747#define MCF5282_QSPI_QIR_WCEFE                          (0x0800)
748#define MCF5282_QSPI_QIR_ABRTE                          (0x0400)
749#define MCF5282_QSPI_QIR_SPIFE                          (0x0100)
750#define MCF5282_QSPI_QIR_WCEF                           (0x0008)
751#define MCF5282_QSPI_QIR_ABRT                           (0x0004)
752#define MCF5282_QSPI_QIR_SPIF                           (0x0001)
753
754#define MCF5282_QSPI_QAR_ADDR(x)                        (((x)&0x003F))
755
756#define MCF5282_QSPI_QDR_COMMAND(x)                     (((x)&0xFF00))
757
758#define MCF5282_QSPI_QCR_DATA(x)                        (((x)&0x00FF)<<8)
759#define MCF5282_QSPI_QCR_CONT                           (0x8000)
760#define MCF5282_QSPI_QCR_BITSE                          (0x4000)
761#define MCF5282_QSPI_QCR_DT                                     (0x2000)
762#define MCF5282_QSPI_QCR_DSCK                           (0x1000)
763#define MCF5282_QSPI_QCR_CS(x)                          (((x)&0x000F)<<8)
764
765/*********************************************************************
766*
767* DMA Timer Module
768*
769*********************************************************************/
770
771/* Read/Write access macros for general use */
772#define MCF5282_TIMER0_DTMR             (*(vuint16 *)(&__IPSBAR[0x0400]))
773#define MCF5282_TIMER0_DTXMR    (*(vuint8  *)(&__IPSBAR[0x0402]))
774#define MCF5282_TIMER0_DTER             (*(vuint8  *)(&__IPSBAR[0x0403]))
775#define MCF5282_TIMER0_DTRR             (*(vuint32 *)(&__IPSBAR[0x0404]))
776#define MCF5282_TIMER0_DTCR             (*(vuint32 *)(&__IPSBAR[0x0408]))
777#define MCF5282_TIMER0_DTCN             (*(vuint32 *)(&__IPSBAR[0x040C]))
778
779#define MCF5282_TIMER1_DTMR             (*(vuint16 *)(&__IPSBAR[0x0440]))
780#define MCF5282_TIMER1_DTXMR    (*(vuint8  *)(&__IPSBAR[0x0442]))
781#define MCF5282_TIMER1_DTER             (*(vuint8  *)(&__IPSBAR[0x0443]))
782#define MCF5282_TIMER1_DTRR             (*(vuint32 *)(&__IPSBAR[0x0444]))
783#define MCF5282_TIMER1_DTCR             (*(vuint32 *)(&__IPSBAR[0x0448]))
784#define MCF5282_TIMER1_DTCN             (*(vuint32 *)(&__IPSBAR[0x044C]))
785
786#define MCF5282_TIMER2_DTMR             (*(vuint16 *)(&__IPSBAR[0x0480]))
787#define MCF5282_TIMER2_DTXMR    (*(vuint8  *)(&__IPSBAR[0x0482]))
788#define MCF5282_TIMER2_DTER             (*(vuint8  *)(&__IPSBAR[0x0483]))
789#define MCF5282_TIMER2_DTRR             (*(vuint32 *)(&__IPSBAR[0x0484]))
790#define MCF5282_TIMER2_DTCR             (*(vuint32 *)(&__IPSBAR[0x0488]))
791#define MCF5282_TIMER2_DTCN             (*(vuint32 *)(&__IPSBAR[0x048C]))
792
793#define MCF5282_TIMER3_DTMR             (*(vuint16 *)(&__IPSBAR[0x04C0]))
794#define MCF5282_TIMER3_DTXMR    (*(vuint8  *)(&__IPSBAR[0x04C2]))
795#define MCF5282_TIMER3_DTER             (*(vuint8  *)(&__IPSBAR[0x04C3]))
796#define MCF5282_TIMER3_DTRR             (*(vuint32 *)(&__IPSBAR[0x04C4]))
797#define MCF5282_TIMER3_DTCR             (*(vuint32 *)(&__IPSBAR[0x04C8]))
798#define MCF5282_TIMER3_DTCN             (*(vuint32 *)(&__IPSBAR[0x04CC]))
799
800#define MCF5282_TIMER_DTMR(x)   (*(vuint16 *)(&__IPSBAR[0x0400+((x)*0x40)]))
801#define MCF5282_TIMER_DTXMR(x)  (*(vuint8  *)(&__IPSBAR[0x0402+((x)*0x40)]))
802#define MCF5282_TIMER_DTER(x)   (*(vuint8  *)(&__IPSBAR[0x0403+((x)*0x40)]))
803#define MCF5282_TIMER_DTRR(x)   (*(vuint32 *)(&__IPSBAR[0x0404+((x)*0x40)]))
804#define MCF5282_TIMER_DTCR(x)   (*(vuint32 *)(&__IPSBAR[0x0408+((x)*0x40)]))
805#define MCF5282_TIMER_DTCN(x)   (*(vuint32 *)(&__IPSBAR[0x040C+((x)*0x40)]))
806
807/* Bit level definitions and macros */
808#define MCF5282_TIMER_DTMR_PS(a)                        (((a)&0x00FF)<<8)
809#define MCF5282_TIMER_DTMR_CE_ANY                       (0x00C0)
810#define MCF5282_TIMER_DTMR_CE_FALL                      (0x0080)
811#define MCF5282_TIMER_DTMR_CE_RISE                      (0x0040)
812#define MCF5282_TIMER_DTMR_CE_NONE                      (0x0000)
813#define MCF5282_TIMER_DTMR_OM                           (0x0020)
814#define MCF5282_TIMER_DTMR_ORRI                         (0x0010)
815#define MCF5282_TIMER_DTMR_FRR                          (0x0008)
816#define MCF5282_TIMER_DTMR_CLK_DTIN                     (0x0006)
817#define MCF5282_TIMER_DTMR_CLK_DIV16            (0x0004)
818#define MCF5282_TIMER_DTMR_CLK_DIV1                     (0x0002)
819#define MCF5282_TIMER_DTMR_CLK_STOP                     (0x0000)
820#define MCF5282_TIMER_DTMR_RST                          (0x0001)
821
822#define MCF5282_TIMER_DTXMR_DMAEN                       (0x80)
823#define MCF5282_TIMER_DTXMR_MODE16                      (0x01)
824
825#define MCF5282_TIMER_DTER_REF                          (0x02)
826#define MCF5282_TIMER_DTER_CAP                          (0x01)
827
828/*********************************************************************
829*
830* Interrupt Controller (INTC) Module
831*
832*********************************************************************/
833
834/* Read/Write access macros for general use */
835#define MCF5282_INTC0_IPRH              (*(vuint32 *)(&__IPSBAR[0x0C00]))
836#define MCF5282_INTC0_IPRL              (*(vuint32 *)(&__IPSBAR[0x0C04]))
837#define MCF5282_INTC0_IMRH              (*(vuint32 *)(&__IPSBAR[0x0C08]))
838#define MCF5282_INTC0_IMRL              (*(vuint32 *)(&__IPSBAR[0x0C0C]))
839#define MCF5282_INTC0_INTFRCH   (*(vuint32 *)(&__IPSBAR[0x0C10]))
840#define MCF5282_INTC0_INTFRCL   (*(vuint32 *)(&__IPSBAR[0x0C14]))
841#define MCF5282_INTC0_IRLR              (*(vuint8  *)(&__IPSBAR[0x0C18]))
842#define MCF5282_INTC0_IACKLPR   (*(vuint8  *)(&__IPSBAR[0x0C19]))
843#define MCF5282_INTC0_ICR1              (*(vuint8  *)(&__IPSBAR[0x0C41]))
844#define MCF5282_INTC0_ICR2              (*(vuint8  *)(&__IPSBAR[0x0C42]))
845#define MCF5282_INTC0_ICR3              (*(vuint8  *)(&__IPSBAR[0x0C43]))
846#define MCF5282_INTC0_ICR4              (*(vuint8  *)(&__IPSBAR[0x0C44]))
847#define MCF5282_INTC0_ICR5              (*(vuint8  *)(&__IPSBAR[0x0C45]))
848#define MCF5282_INTC0_ICR6              (*(vuint8  *)(&__IPSBAR[0x0C46]))
849#define MCF5282_INTC0_ICR7              (*(vuint8  *)(&__IPSBAR[0x0C47]))
850#define MCF5282_INTC0_ICR8              (*(vuint8  *)(&__IPSBAR[0x0C48]))
851#define MCF5282_INTC0_ICR9              (*(vuint8  *)(&__IPSBAR[0x0C49]))
852#define MCF5282_INTC0_ICR10             (*(vuint8  *)(&__IPSBAR[0x0C4A]))
853#define MCF5282_INTC0_ICR11             (*(vuint8  *)(&__IPSBAR[0x0C4B]))
854#define MCF5282_INTC0_ICR12             (*(vuint8  *)(&__IPSBAR[0x0C4C]))
855#define MCF5282_INTC0_ICR13             (*(vuint8  *)(&__IPSBAR[0x0C4D]))
856#define MCF5282_INTC0_ICR14             (*(vuint8  *)(&__IPSBAR[0x0C4E]))
857#define MCF5282_INTC0_ICR15             (*(vuint8  *)(&__IPSBAR[0x0C4F]))
858#define MCF5282_INTC0_ICR17             (*(vuint8  *)(&__IPSBAR[0x0C51]))
859#define MCF5282_INTC0_ICR18             (*(vuint8  *)(&__IPSBAR[0x0C52]))
860#define MCF5282_INTC0_ICR19             (*(vuint8  *)(&__IPSBAR[0x0C53]))
861#define MCF5282_INTC0_ICR20             (*(vuint8  *)(&__IPSBAR[0x0C54]))
862#define MCF5282_INTC0_ICR21             (*(vuint8  *)(&__IPSBAR[0x0C55]))
863#define MCF5282_INTC0_ICR22             (*(vuint8  *)(&__IPSBAR[0x0C56]))
864#define MCF5282_INTC0_ICR23             (*(vuint8  *)(&__IPSBAR[0x0C57]))
865#define MCF5282_INTC0_ICR24             (*(vuint8  *)(&__IPSBAR[0x0C58]))
866#define MCF5282_INTC0_ICR25             (*(vuint8  *)(&__IPSBAR[0x0C59]))
867#define MCF5282_INTC0_ICR26             (*(vuint8  *)(&__IPSBAR[0x0C5A]))
868#define MCF5282_INTC0_ICR27             (*(vuint8  *)(&__IPSBAR[0x0C5B]))
869#define MCF5282_INTC0_ICR28             (*(vuint8  *)(&__IPSBAR[0x0C5C]))
870#define MCF5282_INTC0_ICR29             (*(vuint8  *)(&__IPSBAR[0x0C5D]))
871#define MCF5282_INTC0_ICR30             (*(vuint8  *)(&__IPSBAR[0x0C5E]))
872#define MCF5282_INTC0_ICR31             (*(vuint8  *)(&__IPSBAR[0x0C5F]))
873#define MCF5282_INTC0_ICR32             (*(vuint8  *)(&__IPSBAR[0x0C60]))
874#define MCF5282_INTC0_ICR33             (*(vuint8  *)(&__IPSBAR[0x0C61]))
875#define MCF5282_INTC0_ICR34             (*(vuint8  *)(&__IPSBAR[0x0C62]))
876#define MCF5282_INTC0_ICR35             (*(vuint8  *)(&__IPSBAR[0x0C63]))
877#define MCF5282_INTC0_ICR36             (*(vuint8  *)(&__IPSBAR[0x0C64]))
878#define MCF5282_INTC0_ICR37             (*(vuint8  *)(&__IPSBAR[0x0C65]))
879#define MCF5282_INTC0_ICR38             (*(vuint8  *)(&__IPSBAR[0x0C66]))
880#define MCF5282_INTC0_ICR39             (*(vuint8  *)(&__IPSBAR[0x0C67]))
881#define MCF5282_INTC0_ICR40             (*(vuint8  *)(&__IPSBAR[0x0C68]))
882#define MCF5282_INTC0_ICR41             (*(vuint8  *)(&__IPSBAR[0x0C69]))
883#define MCF5282_INTC0_ICR42             (*(vuint8  *)(&__IPSBAR[0x0C6A]))
884#define MCF5282_INTC0_ICR43             (*(vuint8  *)(&__IPSBAR[0x0C6B]))
885#define MCF5282_INTC0_ICR44             (*(vuint8  *)(&__IPSBAR[0x0C6C]))
886#define MCF5282_INTC0_ICR45             (*(vuint8  *)(&__IPSBAR[0x0C6D]))
887#define MCF5282_INTC0_ICR46             (*(vuint8  *)(&__IPSBAR[0x0C6E]))
888#define MCF5282_INTC0_ICR47             (*(vuint8  *)(&__IPSBAR[0x0C6F]))
889#define MCF5282_INTC0_ICR48             (*(vuint8  *)(&__IPSBAR[0x0C70]))
890#define MCF5282_INTC0_ICR49             (*(vuint8  *)(&__IPSBAR[0x0C71]))
891#define MCF5282_INTC0_ICR50             (*(vuint8  *)(&__IPSBAR[0x0C72]))
892#define MCF5282_INTC0_ICR51             (*(vuint8  *)(&__IPSBAR[0x0C73]))
893#define MCF5282_INTC0_ICR52             (*(vuint8  *)(&__IPSBAR[0x0C74]))
894#define MCF5282_INTC0_ICR53             (*(vuint8  *)(&__IPSBAR[0x0C75]))
895#define MCF5282_INTC0_ICR54             (*(vuint8  *)(&__IPSBAR[0x0C76]))
896#define MCF5282_INTC0_ICR55             (*(vuint8  *)(&__IPSBAR[0x0C77]))
897#define MCF5282_INTC0_ICR56             (*(vuint8  *)(&__IPSBAR[0x0C78]))
898#define MCF5282_INTC0_ICR57             (*(vuint8  *)(&__IPSBAR[0x0C79]))
899#define MCF5282_INTC0_ICR58             (*(vuint8  *)(&__IPSBAR[0x0C7A]))
900#define MCF5282_INTC0_ICR59             (*(vuint8  *)(&__IPSBAR[0x0C7B]))
901#define MCF5282_INTC0_ICR60             (*(vuint8  *)(&__IPSBAR[0x0C7C]))
902#define MCF5282_INTC0_ICR61             (*(vuint8  *)(&__IPSBAR[0x0C7D]))
903#define MCF5282_INTC0_ICR62             (*(vuint8  *)(&__IPSBAR[0x0C7E]))
904#define MCF5282_INTC0_SWIACK    (*(vuint8  *)(&__IPSBAR[0x0CE0]))
905#define MCF5282_INTC0_L1IACK    (*(vuint8  *)(&__IPSBAR[0x0CE4]))
906#define MCF5282_INTC0_L2IACK    (*(vuint8  *)(&__IPSBAR[0x0CE8]))
907#define MCF5282_INTC0_L3IACK    (*(vuint8  *)(&__IPSBAR[0x0CEC]))
908#define MCF5282_INTC0_L4IACK    (*(vuint8  *)(&__IPSBAR[0x0CF0]))
909#define MCF5282_INTC0_L5IACK    (*(vuint8  *)(&__IPSBAR[0x0CF4]))
910#define MCF5282_INTC0_L6IACK    (*(vuint8  *)(&__IPSBAR[0x0CF8]))
911#define MCF5282_INTC0_L7IACK    (*(vuint8  *)(&__IPSBAR[0x0CFC]))
912
913#define MCF5282_INTC1_IPRH              (*(vuint32 *)(&__IPSBAR[0x0D00]))
914#define MCF5282_INTC1_IPRL              (*(vuint32 *)(&__IPSBAR[0x0D04]))
915#define MCF5282_INTC1_IMRH              (*(vuint32 *)(&__IPSBAR[0x0D08]))
916#define MCF5282_INTC1_IMRL              (*(vuint32 *)(&__IPSBAR[0x0D0C]))
917#define MCF5282_INTC1_INTFRCH   (*(vuint32 *)(&__IPSBAR[0x0D10]))
918#define MCF5282_INTC1_INTFRCL   (*(vuint32 *)(&__IPSBAR[0x0D14]))
919#define MCF5282_INTC1_IRLR              (*(vuint8  *)(&__IPSBAR[0x0D18]))
920#define MCF5282_INTC1_IACKLPR   (*(vuint8  *)(&__IPSBAR[0x0D19]))
921#define MCF5282_INTC1_ICR08             (*(vuint8  *)(&__IPSBAR[0x0D48]))
922#define MCF5282_INTC1_ICR09             (*(vuint8  *)(&__IPSBAR[0x0D49]))
923#define MCF5282_INTC1_ICR10             (*(vuint8  *)(&__IPSBAR[0x0D4A]))
924#define MCF5282_INTC1_ICR11             (*(vuint8  *)(&__IPSBAR[0x0D4B]))
925#define MCF5282_INTC1_ICR12             (*(vuint8  *)(&__IPSBAR[0x0D4C]))
926#define MCF5282_INTC1_ICR13             (*(vuint8  *)(&__IPSBAR[0x0D4D]))
927#define MCF5282_INTC1_ICR14             (*(vuint8  *)(&__IPSBAR[0x0D4E]))
928#define MCF5282_INTC1_ICR15             (*(vuint8  *)(&__IPSBAR[0x0D4F]))
929#define MCF5282_INTC1_ICR16             (*(vuint8  *)(&__IPSBAR[0x0D50]))
930#define MCF5282_INTC1_ICR17             (*(vuint8  *)(&__IPSBAR[0x0D51]))
931#define MCF5282_INTC1_ICR18             (*(vuint8  *)(&__IPSBAR[0x0D52]))
932#define MCF5282_INTC1_ICR19             (*(vuint8  *)(&__IPSBAR[0x0D53]))
933#define MCF5282_INTC1_ICR20             (*(vuint8  *)(&__IPSBAR[0x0D54]))
934#define MCF5282_INTC1_ICR21             (*(vuint8  *)(&__IPSBAR[0x0D55]))
935#define MCF5282_INTC1_ICR22             (*(vuint8  *)(&__IPSBAR[0x0D56]))
936#define MCF5282_INTC1_ICR23             (*(vuint8  *)(&__IPSBAR[0x0D57]))
937#define MCF5282_INTC1_ICR24             (*(vuint8  *)(&__IPSBAR[0x0D58]))
938#define MCF5282_INTC1_ICR25             (*(vuint8  *)(&__IPSBAR[0x0D59]))
939#define MCF5282_INTC1_ICR26             (*(vuint8  *)(&__IPSBAR[0x0D5A]))
940#define MCF5282_INTC1_SWIACK    (*(vuint8  *)(&__IPSBAR[0x0DE0]))
941#define MCF5282_INTC1_L1IACK    (*(vuint8  *)(&__IPSBAR[0x0DE4]))
942#define MCF5282_INTC1_L2IACK    (*(vuint8  *)(&__IPSBAR[0x0DE8]))
943#define MCF5282_INTC1_L3IACK    (*(vuint8  *)(&__IPSBAR[0x0DEC]))
944#define MCF5282_INTC1_L4IACK    (*(vuint8  *)(&__IPSBAR[0x0DF0]))
945#define MCF5282_INTC1_L5IACK    (*(vuint8  *)(&__IPSBAR[0x0DF4]))
946#define MCF5282_INTC1_L6IACK    (*(vuint8  *)(&__IPSBAR[0x0DF8]))
947#define MCF5282_INTC1_L7IACK    (*(vuint8  *)(&__IPSBAR[0x0DFC]))
948
949/* Bit level definitions and macros */
950#define MCF5282_INTC_IPRH_INT63                         (0x80000000)
951#define MCF5282_INTC_IPRH_INT62                         (0x40000000)
952#define MCF5282_INTC_IPRH_INT61                         (0x20000000)
953#define MCF5282_INTC_IPRH_INT60                         (0x10000000)
954#define MCF5282_INTC_IPRH_INT59                         (0x08000000)
955#define MCF5282_INTC_IPRH_INT58                         (0x04000000)
956#define MCF5282_INTC_IPRH_INT57                         (0x02000000)
957#define MCF5282_INTC_IPRH_INT56                         (0x01000000)
958#define MCF5282_INTC_IPRH_INT55                         (0x00800000)
959#define MCF5282_INTC_IPRH_INT54                         (0x00400000)
960#define MCF5282_INTC_IPRH_INT53                         (0x00200000)
961#define MCF5282_INTC_IPRH_INT52                         (0x00100000)
962#define MCF5282_INTC_IPRH_INT51                         (0x00080000)
963#define MCF5282_INTC_IPRH_INT50                         (0x00040000)
964#define MCF5282_INTC_IPRH_INT49                         (0x00020000)
965#define MCF5282_INTC_IPRH_INT48                         (0x00010000)
966#define MCF5282_INTC_IPRH_INT47                         (0x00008000)
967#define MCF5282_INTC_IPRH_INT46                         (0x00004000)
968#define MCF5282_INTC_IPRH_INT45                         (0x00002000)
969#define MCF5282_INTC_IPRH_INT44                         (0x00001000)
970#define MCF5282_INTC_IPRH_INT43                         (0x00000800)
971#define MCF5282_INTC_IPRH_INT42                         (0x00000400)
972#define MCF5282_INTC_IPRH_INT41                         (0x00000200)
973#define MCF5282_INTC_IPRH_INT40                         (0x00000100)
974#define MCF5282_INTC_IPRH_INT39                         (0x00000080)
975#define MCF5282_INTC_IPRH_INT38                         (0x00000040)
976#define MCF5282_INTC_IPRH_INT37                         (0x00000020)
977#define MCF5282_INTC_IPRH_INT36                         (0x00000010)
978#define MCF5282_INTC_IPRH_INT35                         (0x00000008)
979#define MCF5282_INTC_IPRH_INT34                         (0x00000004)
980#define MCF5282_INTC_IPRH_INT33                         (0x00000002)
981#define MCF5282_INTC_IPRH_INT32                         (0x00000001)
982
983#define MCF5282_INTC_IPRL_INT31                         (0x80000000)
984#define MCF5282_INTC_IPRL_INT30                         (0x40000000)
985#define MCF5282_INTC_IPRL_INT29                         (0x20000000)
986#define MCF5282_INTC_IPRL_INT28                         (0x10000000)
987#define MCF5282_INTC_IPRL_INT27                         (0x08000000)
988#define MCF5282_INTC_IPRL_INT26                         (0x04000000)
989#define MCF5282_INTC_IPRL_INT25                         (0x02000000)
990#define MCF5282_INTC_IPRL_INT24                         (0x01000000)
991#define MCF5282_INTC_IPRL_INT23                         (0x00800000)
992#define MCF5282_INTC_IPRL_INT22                         (0x00400000)
993#define MCF5282_INTC_IPRL_INT21                         (0x00200000)
994#define MCF5282_INTC_IPRL_INT20                         (0x00100000)
995#define MCF5282_INTC_IPRL_INT19                         (0x00080000)
996#define MCF5282_INTC_IPRL_INT18                         (0x00040000)
997#define MCF5282_INTC_IPRL_INT17                         (0x00020000)
998#define MCF5282_INTC_IPRL_INT16                         (0x00010000)
999#define MCF5282_INTC_IPRL_INT15                         (0x00008000)
1000#define MCF5282_INTC_IPRL_INT14                         (0x00004000)
1001#define MCF5282_INTC_IPRL_INT13                         (0x00002000)
1002#define MCF5282_INTC_IPRL_INT12                         (0x00001000)
1003#define MCF5282_INTC_IPRL_INT11                         (0x00000800)
1004#define MCF5282_INTC_IPRL_INT10                         (0x00000400)
1005#define MCF5282_INTC_IPRL_INT9                          (0x00000200)
1006#define MCF5282_INTC_IPRL_INT8                          (0x00000100)
1007#define MCF5282_INTC_IPRL_INT7                          (0x00000080)
1008#define MCF5282_INTC_IPRL_INT6                          (0x00000040)
1009#define MCF5282_INTC_IPRL_INT5                          (0x00000020)
1010#define MCF5282_INTC_IPRL_INT4                          (0x00000010)
1011#define MCF5282_INTC_IPRL_INT3                          (0x00000008)
1012#define MCF5282_INTC_IPRL_INT2                          (0x00000004)
1013#define MCF5282_INTC_IPRL_INT1                          (0x00000002)
1014
1015#define MCF5282_INTC_IMRH_INT63                         (0x80000000)
1016#define MCF5282_INTC_IMRH_INT62                         (0x40000000)
1017#define MCF5282_INTC_IMRH_INT61                         (0x20000000)
1018#define MCF5282_INTC_IMRH_INT60                         (0x10000000)
1019#define MCF5282_INTC_IMRH_INT59                         (0x08000000)
1020#define MCF5282_INTC_IMRH_INT58                         (0x04000000)
1021#define MCF5282_INTC_IMRH_INT57                         (0x02000000)
1022#define MCF5282_INTC_IMRH_INT56                         (0x01000000)
1023#define MCF5282_INTC_IMRH_INT55                         (0x00800000)
1024#define MCF5282_INTC_IMRH_INT54                         (0x00400000)
1025#define MCF5282_INTC_IMRH_INT53                         (0x00200000)
1026#define MCF5282_INTC_IMRH_INT52                         (0x00100000)
1027#define MCF5282_INTC_IMRH_INT51                         (0x00080000)
1028#define MCF5282_INTC_IMRH_INT50                         (0x00040000)
1029#define MCF5282_INTC_IMRH_INT49                         (0x00020000)
1030#define MCF5282_INTC_IMRH_INT48                         (0x00010000)
1031#define MCF5282_INTC_IMRH_INT47                         (0x00008000)
1032#define MCF5282_INTC_IMRH_INT46                         (0x00004000)
1033#define MCF5282_INTC_IMRH_INT45                         (0x00002000)
1034#define MCF5282_INTC_IMRH_INT44                         (0x00001000)
1035#define MCF5282_INTC_IMRH_INT43                         (0x00000800)
1036#define MCF5282_INTC_IMRH_INT42                         (0x00000400)
1037#define MCF5282_INTC_IMRH_INT41                         (0x00000200)
1038#define MCF5282_INTC_IMRH_INT40                         (0x00000100)
1039#define MCF5282_INTC_IMRH_INT39                         (0x00000080)
1040#define MCF5282_INTC_IMRH_INT38                         (0x00000040)
1041#define MCF5282_INTC_IMRH_INT37                         (0x00000020)
1042#define MCF5282_INTC_IMRH_INT36                         (0x00000010)
1043#define MCF5282_INTC_IMRH_INT35                         (0x00000008)
1044#define MCF5282_INTC_IMRH_INT34                         (0x00000004)
1045#define MCF5282_INTC_IMRH_INT33                         (0x00000002)
1046#define MCF5282_INTC_IMRH_INT32                         (0x00000001)
1047
1048#define MCF5282_INTC_IMRL_INT31                         (0x80000000)
1049#define MCF5282_INTC_IMRL_INT30                         (0x40000000)
1050#define MCF5282_INTC_IMRL_INT29                         (0x20000000)
1051#define MCF5282_INTC_IMRL_INT28                         (0x10000000)
1052#define MCF5282_INTC_IMRL_INT27                         (0x08000000)
1053#define MCF5282_INTC_IMRL_INT26                         (0x04000000)
1054#define MCF5282_INTC_IMRL_INT25                         (0x02000000)
1055#define MCF5282_INTC_IMRL_INT24                         (0x01000000)
1056#define MCF5282_INTC_IMRL_INT23                         (0x00800000)
1057#define MCF5282_INTC_IMRL_INT22                         (0x00400000)
1058#define MCF5282_INTC_IMRL_INT21                         (0x00200000)
1059#define MCF5282_INTC_IMRL_INT20                         (0x00100000)
1060#define MCF5282_INTC_IMRL_INT19                         (0x00080000)
1061#define MCF5282_INTC_IMRL_INT18                         (0x00040000)
1062#define MCF5282_INTC_IMRL_INT17                         (0x00020000)
1063#define MCF5282_INTC_IMRL_INT16                         (0x00010000)
1064#define MCF5282_INTC_IMRL_INT15                         (0x00008000)
1065#define MCF5282_INTC_IMRL_INT14                         (0x00004000)
1066#define MCF5282_INTC_IMRL_INT13                         (0x00002000)
1067#define MCF5282_INTC_IMRL_INT12                         (0x00001000)
1068#define MCF5282_INTC_IMRL_INT11                         (0x00000800)
1069#define MCF5282_INTC_IMRL_INT10                         (0x00000400)
1070#define MCF5282_INTC_IMRL_INT9                          (0x00000200)
1071#define MCF5282_INTC_IMRL_INT8                          (0x00000100)
1072#define MCF5282_INTC_IMRL_INT7                          (0x00000080)
1073#define MCF5282_INTC_IMRL_INT6                          (0x00000040)
1074#define MCF5282_INTC_IMRL_INT5                          (0x00000020)
1075#define MCF5282_INTC_IMRL_INT4                          (0x00000010)
1076#define MCF5282_INTC_IMRL_INT3                          (0x00000008)
1077#define MCF5282_INTC_IMRL_INT2                          (0x00000004)
1078#define MCF5282_INTC_IMRL_INT1                          (0x00000002)
1079#define MCF5282_INTC_IMRL_MASKALL                       (0x00000001)
1080
1081#define MCF5282_INTC_INTFRCH_INT63                      (0x80000000)
1082#define MCF5282_INTC_INTFRCH_INT62                      (0x40000000)
1083#define MCF5282_INTC_INTFRCH_INT61                      (0x20000000)
1084#define MCF5282_INTC_INTFRCH_INT60                      (0x10000000)
1085#define MCF5282_INTC_INTFRCH_INT59                      (0x08000000)
1086#define MCF5282_INTC_INTFRCH_INT58                      (0x04000000)
1087#define MCF5282_INTC_INTFRCH_INT57                      (0x02000000)
1088#define MCF5282_INTC_INTFRCH_INT56                      (0x01000000)
1089#define MCF5282_INTC_INTFRCH_INT55                      (0x00800000)
1090#define MCF5282_INTC_INTFRCH_INT54                      (0x00400000)
1091#define MCF5282_INTC_INTFRCH_INT53                      (0x00200000)
1092#define MCF5282_INTC_INTFRCH_INT52                      (0x00100000)
1093#define MCF5282_INTC_INTFRCH_INT51                      (0x00080000)
1094#define MCF5282_INTC_INTFRCH_INT50                      (0x00040000)
1095#define MCF5282_INTC_INTFRCH_INT49                      (0x00020000)
1096#define MCF5282_INTC_INTFRCH_INT48                      (0x00010000)
1097#define MCF5282_INTC_INTFRCH_INT47                      (0x00008000)
1098#define MCF5282_INTC_INTFRCH_INT46                      (0x00004000)
1099#define MCF5282_INTC_INTFRCH_INT45                      (0x00002000)
1100#define MCF5282_INTC_INTFRCH_INT44                      (0x00001000)
1101#define MCF5282_INTC_INTFRCH_INT43                      (0x00000800)
1102#define MCF5282_INTC_INTFRCH_INT42                      (0x00000400)
1103#define MCF5282_INTC_INTFRCH_INT41                      (0x00000200)
1104#define MCF5282_INTC_INTFRCH_INT40                      (0x00000100)
1105#define MCF5282_INTC_INTFRCH_INT39                      (0x00000080)
1106#define MCF5282_INTC_INTFRCH_INT38                      (0x00000040)
1107#define MCF5282_INTC_INTFRCH_INT37                      (0x00000020)
1108#define MCF5282_INTC_INTFRCH_INT36                      (0x00000010)
1109#define MCF5282_INTC_INTFRCH_INT35                      (0x00000008)
1110#define MCF5282_INTC_INTFRCH_INT34                      (0x00000004)
1111#define MCF5282_INTC_INTFRCH_INT33                      (0x00000002)
1112#define MCF5282_INTC_INTFRCH_INT32                      (0x00000001)
1113
1114#define MCF5282_INTC_INTFRCL_INT31                      (0x80000000)
1115#define MCF5282_INTC_INTFRCL_INT30                      (0x40000000)
1116#define MCF5282_INTC_INTFRCL_INT29                      (0x20000000)
1117#define MCF5282_INTC_INTFRCL_INT28                      (0x10000000)
1118#define MCF5282_INTC_INTFRCL_INT27                      (0x08000000)
1119#define MCF5282_INTC_INTFRCL_INT26                      (0x04000000)
1120#define MCF5282_INTC_INTFRCL_INT25                      (0x02000000)
1121#define MCF5282_INTC_INTFRCL_INT24                      (0x01000000)
1122#define MCF5282_INTC_INTFRCL_INT23                      (0x00800000)
1123#define MCF5282_INTC_INTFRCL_INT22                      (0x00400000)
1124#define MCF5282_INTC_INTFRCL_INT21                      (0x00200000)
1125#define MCF5282_INTC_INTFRCL_INT20                      (0x00100000)
1126#define MCF5282_INTC_INTFRCL_INT19                      (0x00080000)
1127#define MCF5282_INTC_INTFRCL_INT18                      (0x00040000)
1128#define MCF5282_INTC_INTFRCL_INT17                      (0x00020000)
1129#define MCF5282_INTC_INTFRCL_INT16                      (0x00010000)
1130#define MCF5282_INTC_INTFRCL_INT15                      (0x00008000)
1131#define MCF5282_INTC_INTFRCL_INT14                      (0x00004000)
1132#define MCF5282_INTC_INTFRCL_INT13                      (0x00002000)
1133#define MCF5282_INTC_INTFRCL_INT12                      (0x00001000)
1134#define MCF5282_INTC_INTFRCL_INT11                      (0x00000800)
1135#define MCF5282_INTC_INTFRCL_INT10                      (0x00000400)
1136#define MCF5282_INTC_INTFRCL_INT9                       (0x00000200)
1137#define MCF5282_INTC_INTFRCL_INT8                       (0x00000100)
1138#define MCF5282_INTC_INTFRCL_INT7                       (0x00000080)
1139#define MCF5282_INTC_INTFRCL_INT6                       (0x00000040)
1140#define MCF5282_INTC_INTFRCL_INT5                       (0x00000020)
1141#define MCF5282_INTC_INTFRCL_INT4                       (0x00000010)
1142#define MCF5282_INTC_INTFRCL_INT3                       (0x00000008)
1143#define MCF5282_INTC_INTFRCL_INT2                       (0x00000004)
1144#define MCF5282_INTC_INTFRCL_INT1                       (0x00000002)
1145
1146#define MCF5282_INTC_IRLR_IRQ7                          (0x80)
1147#define MCF5282_INTC_IRLR_IRQ6                          (0x40)
1148#define MCF5282_INTC_IRLR_IRQ5                          (0x20)
1149#define MCF5282_INTC_IRLR_IRQ4                          (0x10)
1150#define MCF5282_INTC_IRLR_IRQ3                          (0x08)
1151#define MCF5282_INTC_IRLR_IRQ2                          (0x04)
1152#define MCF5282_INTC_IRLR_IRQ1                          (0x02)
1153
1154#define MCF5282_INTC_ICR_IL(x)                          (((x)&0x07)<<3)
1155#define MCF5282_INTC_ICR_IP(x)                          (((x)&0x07)<<0)
1156
1157/*********************************************************************
1158*
1159* Global Interrupt Acknowledge Cycle (GIAC) Registers
1160*
1161*********************************************************************/
1162
1163/* Read/Write access macros for general use */
1164#define MCF5282_GIAC_GSWIACK    (*(vuint8  *)(&__IPSBAR[0x0FE0]))
1165#define MCF5282_GIAC_GL1IACK    (*(vuint8  *)(&__IPSBAR[0x0FE4]))
1166#define MCF5282_GIAC_GL2IACK    (*(vuint8  *)(&__IPSBAR[0x0FE8]))
1167#define MCF5282_GIAC_GL3IACK    (*(vuint8  *)(&__IPSBAR[0x0FEC]))
1168#define MCF5282_GIAC_GL4IACK    (*(vuint8  *)(&__IPSBAR[0x0FF0]))
1169#define MCF5282_GIAC_GL5IACK    (*(vuint8  *)(&__IPSBAR[0x0FF4]))
1170#define MCF5282_GIAC_GL6IACK    (*(vuint8  *)(&__IPSBAR[0x0FF8]))
1171#define MCF5282_GIAC_GL7IACK    (*(vuint8  *)(&__IPSBAR[0x0FFC]))
1172
1173/* Bit level definitions and macros */
1174
1175/* To do - add bit level definintions */
1176
1177/*********************************************************************
1178*
1179* Fast Ethernet Controller (FEC) Module
1180*
1181*********************************************************************/
1182
1183/* Read/Write access macros for general use */
1184#define MCF5282_FEC_EIR                 (*(vuint32  *)(&__IPSBAR[0x1004]))
1185#define MCF5282_FEC_EIMR                (*(vuint32  *)(&__IPSBAR[0x1008]))
1186#define MCF5282_FEC_RDAR                (*(vuint32  *)(&__IPSBAR[0x1010]))
1187#define MCF5282_FEC_TDAR                (*(vuint32  *)(&__IPSBAR[0x1014]))
1188#define MCF5282_FEC_ECR                 (*(vuint32  *)(&__IPSBAR[0x1024]))
1189#define MCF5282_FEC_MMFR                (*(vuint32  *)(&__IPSBAR[0x1040]))
1190#define MCF5282_FEC_MSCR                (*(vuint32  *)(&__IPSBAR[0x1044]))
1191#define MCF5282_FEC_MIBC                (*(vuint32  *)(&__IPSBAR[0x1064]))
1192#define MCF5282_FEC_RCR                 (*(vuint32  *)(&__IPSBAR[0x1084]))
1193#define MCF5282_FEC_TCR                 (*(vuint32  *)(&__IPSBAR[0x10C4]))
1194#define MCF5282_FEC_PALR                (*(vuint32  *)(&__IPSBAR[0x10E4]))
1195#define MCF5282_FEC_PAUR                (*(vuint32  *)(&__IPSBAR[0x10E8]))
1196#define MCF5282_FEC_OPD                 (*(vuint32  *)(&__IPSBAR[0x10EC]))
1197#define MCF5282_FEC_IAUR                (*(vuint32  *)(&__IPSBAR[0x1118]))
1198#define MCF5282_FEC_IALR                (*(vuint32  *)(&__IPSBAR[0x111C]))
1199#define MCF5282_FEC_GAUR                (*(vuint32  *)(&__IPSBAR[0x1120]))
1200#define MCF5282_FEC_GALR                (*(vuint32  *)(&__IPSBAR[0x1124]))
1201#define MCF5282_FEC_TFWR                (*(vuint32  *)(&__IPSBAR[0x1144]))
1202#define MCF5282_FEC_FRBR                (*(vuint32  *)(&__IPSBAR[0x114C]))
1203#define MCF5282_FEC_FRSR                (*(vuint32  *)(&__IPSBAR[0x1150]))
1204#define MCF5282_FEC_ERDSR               (*(vuint32  *)(&__IPSBAR[0x1180]))
1205#define MCF5282_FEC_ETDSR               (*(vuint32  *)(&__IPSBAR[0x1184]))
1206#define MCF5282_FEC_EMRBR               (*(vuint32  *)(&__IPSBAR[0x1188]))
1207
1208#define MCF5282_FEC_RMON_T_DROP                 (*(vuint32  *)(&__IPSBAR[0x1200]))
1209#define MCF5282_FEC_RMON_T_PACKETS              (*(vuint32  *)(&__IPSBAR[0x1204]))
1210#define MCF5282_FEC_RMON_T_BC_PKT               (*(vuint32  *)(&__IPSBAR[0x1208]))
1211#define MCF5282_FEC_RMON_T_MC_PKT               (*(vuint32  *)(&__IPSBAR[0x120C]))
1212#define MCF5282_FEC_RMON_T_CRC_ALIGN    (*(vuint32  *)(&__IPSBAR[0x1210]))
1213#define MCF5282_FEC_RMON_T_UNDERSIZE    (*(vuint32  *)(&__IPSBAR[0x1214]))
1214#define MCF5282_FEC_RMON_T_OVERSIZE             (*(vuint32  *)(&__IPSBAR[0x1218]))
1215#define MCF5282_FEC_RMON_T_FRAG                 (*(vuint32  *)(&__IPSBAR[0x121C]))
1216#define MCF5282_FEC_RMON_T_JAB                  (*(vuint32  *)(&__IPSBAR[0x1220]))
1217#define MCF5282_FEC_RMON_T_COL                  (*(vuint32  *)(&__IPSBAR[0x1224]))
1218#define MCF5282_FEC_RMON_T_P64                  (*(vuint32  *)(&__IPSBAR[0x1228]))
1219#define MCF5282_FEC_RMON_T_P65TO127             (*(vuint32  *)(&__IPSBAR[0x122C]))
1220#define MCF5282_FEC_RMON_T_P128TO255    (*(vuint32  *)(&__IPSBAR[0x1230]))
1221#define MCF5282_FEC_RMON_T_P256TO511    (*(vuint32  *)(&__IPSBAR[0x1234]))
1222#define MCF5282_FEC_RMON_T_P512TO1023   (*(vuint32  *)(&__IPSBAR[0x1238]))
1223#define MCF5282_FEC_RMON_T_P1024TO2047  (*(vuint32  *)(&__IPSBAR[0x123C]))
1224#define MCF5282_FEC_RMON_T_P_GTE2048    (*(vuint32  *)(&__IPSBAR[0x1240]))
1225#define MCF5282_FEC_RMON_T_OCTETS               (*(vuint32  *)(&__IPSBAR[0x1244]))
1226#define MCF5282_FEC_IEEE_T_DROP                 (*(vuint32  *)(&__IPSBAR[0x1248]))
1227#define MCF5282_FEC_IEEE_T_FRAME_OK             (*(vuint32  *)(&__IPSBAR[0x124C]))
1228#define MCF5282_FEC_IEEE_T_1COL                 (*(vuint32  *)(&__IPSBAR[0x1250]))
1229#define MCF5282_FEC_IEEE_T_MCOL                 (*(vuint32  *)(&__IPSBAR[0x1254]))
1230#define MCF5282_FEC_IEEE_T_DEF                  (*(vuint32  *)(&__IPSBAR[0x1258]))
1231#define MCF5282_FEC_IEEE_T_LCOL                 (*(vuint32  *)(&__IPSBAR[0x125C]))
1232#define MCF5282_FEC_IEEE_T_EXCOL                (*(vuint32  *)(&__IPSBAR[0x1260]))
1233#define MCF5282_FEC_IEEE_T_MACERR               (*(vuint32  *)(&__IPSBAR[0x1264]))
1234#define MCF5282_FEC_IEEE_T_CSERR                (*(vuint32  *)(&__IPSBAR[0x1268]))
1235#define MCF5282_FEC_IEEE_T_SQE                  (*(vuint32  *)(&__IPSBAR[0x126C]))
1236#define MCF5282_FEC_IEEE_T_FDXFC                (*(vuint32  *)(&__IPSBAR[0x1270]))
1237#define MCF5282_FEC_IEEE_T_OCTETS_OK    (*(vuint32  *)(&__IPSBAR[0x1274]))
1238#define MCF5282_FEC_RMON_R_PACKETS              (*(vuint32  *)(&__IPSBAR[0x1284]))
1239#define MCF5282_FEC_RMON_R_BC_PKT               (*(vuint32  *)(&__IPSBAR[0x1288]))
1240#define MCF5282_FEC_RMON_R_MC_PKT               (*(vuint32  *)(&__IPSBAR[0x128C]))
1241#define MCF5282_FEC_RMON_R_CRC_ALIGN    (*(vuint32  *)(&__IPSBAR[0x1290]))
1242#define MCF5282_FEC_RMON_R_UNDERSIZE    (*(vuint32  *)(&__IPSBAR[0x1294]))
1243#define MCF5282_FEC_RMON_R_OVERSIZE             (*(vuint32  *)(&__IPSBAR[0x1298]))
1244#define MCF5282_FEC_RMON_R_FRAG                 (*(vuint32  *)(&__IPSBAR[0x129C]))
1245#define MCF5282_FEC_RMON_R_JAB                  (*(vuint32  *)(&__IPSBAR[0x12A0]))
1246#define MCF5282_FEC_RMON_R_RESVD_0              (*(vuint32  *)(&__IPSBAR[0x12A4]))
1247#define MCF5282_FEC_RMON_R_P64                  (*(vuint32  *)(&__IPSBAR[0x12A8]))
1248#define MCF5282_FEC_RMON_R_P65T0127             (*(vuint32  *)(&__IPSBAR[0x12AC]))
1249#define MCF5282_FEC_RMON_R_P128TO255    (*(vuint32  *)(&__IPSBAR[0x12B0]))
1250#define MCF5282_FEC_RMON_R_P256TO511    (*(vuint32  *)(&__IPSBAR[0x12B4]))
1251#define MCF5282_FEC_RMON_R_P512TO1023   (*(vuint32  *)(&__IPSBAR[0x12B8]))
1252#define MCF5282_FEC_RMON_R_P1024TO2047  (*(vuint32  *)(&__IPSBAR[0x12BC]))
1253#define MCF5282_FEC_RMON_R_GTE2048              (*(vuint32  *)(&__IPSBAR[0x12C0]))
1254#define MCF5282_FEC_RMON_R_OCTETS               (*(vuint32  *)(&__IPSBAR[0x12C4]))
1255#define MCF5282_FEC_IEEE_R_DROP                 (*(vuint32  *)(&__IPSBAR[0x12C8]))
1256#define MCF5282_FEC_IEEE_R_FRAME_OK             (*(vuint32  *)(&__IPSBAR[0x12CC]))
1257#define MCF5282_FEC_IEEE_R_CRC                  (*(vuint32  *)(&__IPSBAR[0x12D0]))
1258#define MCF5282_FEC_IEEE_R_ALIGN                (*(vuint32  *)(&__IPSBAR[0x12D4]))
1259#define MCF5282_FEC_IEEE_R_MACERR               (*(vuint32  *)(&__IPSBAR[0x12D8]))
1260#define MCF5282_FEC_IEEE_R_FDXFC                (*(vuint32  *)(&__IPSBAR[0x12DC]))
1261#define MCF5282_FEC_IEEE_R_OCTETS_OK    (*(vuint32  *)(&__IPSBAR[0x12E0]))
1262
1263/* Bit level definitions and macros */
1264#define MCF5282_FEC_EIR_HBERR                           (0x80000000)
1265#define MCF5282_FEC_EIR_BABR                            (0x40000000)
1266#define MCF5282_FEC_EIR_BABT                            (0x20000000)
1267#define MCF5282_FEC_EIR_GRA                                     (0x10000000)
1268#define MCF5282_FEC_EIR_TXF                                     (0x08000000)
1269#define MCF5282_FEC_EIR_TXB                                     (0x04000000)
1270#define MCF5282_FEC_EIR_RXF                                     (0x02000000)
1271#define MCF5282_FEC_EIR_RXB                                     (0x01000000)
1272#define MCF5282_FEC_EIR_MII                                     (0x00800000)
1273#define MCF5282_FEC_EIR_EBERR                           (0x00400000)
1274#define MCF5282_FEC_EIR_LC                                      (0x00200000)
1275#define MCF5282_FEC_EIR_RL                                      (0x00100000)
1276#define MCF5282_FEC_EIR_UN                                      (0x00080000)
1277
1278#define MCF5282_FEC_EIMR_HBERR                          (0x80000000)
1279#define MCF5282_FEC_EIMR_BABR                           (0x40000000)
1280#define MCF5282_FEC_EIMR_BABT                           (0x20000000)
1281#define MCF5282_FEC_EIMR_GRA                            (0x10000000)
1282#define MCF5282_FEC_EIMR_TXF                            (0x08000000)
1283#define MCF5282_FEC_EIMR_TXB                            (0x04000000)
1284#define MCF5282_FEC_EIMR_RXF                            (0x02000000)
1285#define MCF5282_FEC_EIMR_RXB                            (0x01000000)
1286#define MCF5282_FEC_EIMR_MII                            (0x00800000)
1287#define MCF5282_FEC_EIMR_EBERR                          (0x00400000)
1288#define MCF5282_FEC_EIMR_LC                                     (0x00200000)
1289#define MCF5282_FEC_EIMR_RL                                     (0x00100000)
1290#define MCF5282_FEC_EIMR_UN                                     (0x00080000)
1291
1292#define MCF5282_FEC_RDAR_R_DES_ACTIVE           (0x01000000)
1293
1294#define MCF5282_FEC_TDAR_X_DES_ACTIVE           (0x01000000)
1295
1296#define MCF5282_FEC_ECR_ETHER_EN                        (0x00000002)
1297#define MCF5282_FEC_ECR_RESET                           (0x00000001)
1298
1299#define MCF5282_FEC_MMFR_ST                                     (0x40000000)
1300#define MCF5282_FEC_MMFR_OP_RD                          (0x20000000)
1301#define MCF5282_FEC_MMFR_OP_WR                          (0x10000000)
1302#define MCF5282_FEC_MMFR_PA(x)                          (((x)&0x1F)<<23)
1303#define MCF5282_FEC_MMFR_RA(x)                          (((x)&0x1F)<<18)
1304#define MCF5282_FEC_MMFR_TA                                     (0x00020000)
1305#define MCF5282_FEC_MMFR_DATA(x)                        (((x)&0xFFFF))
1306
1307#define MCF5282_FEC_MSCR_DIS_PREAMBLE           (0x00000008)
1308#define MCF5282_FEC_MSCR_MII_SPEED(x)           (((x)&0x1F)<<1)
1309
1310#define MCF5282_FEC_MIBC_MIB_DISABLE            (0x80000000)
1311#define MCF5282_FEC_MIBC_MIB_IDLE                       (0x40000000)
1312
1313#define MCF5282_FEC_RCR_MAX_FL(x)                       (((x)&0x07FF)<<16)
1314#define MCF5282_FEC_RCR_FCE                                     (0x00000020)
1315#define MCF5282_FEC_RCR_BC_REJ                          (0x00000010)
1316#define MCF5282_FEC_RCR_PROM                            (0x00000008)
1317#define MCF5282_FEC_RCR_MII_MODE                        (0x00000004)
1318#define MCF5282_FEC_RCR_DRT                                     (0x00000002)
1319#define MCF5282_FEC_RCR_LOOP                            (0x00000001)
1320
1321#define MCF5282_FEC_TCR_RFC_PAUSE                       (0x00000010)
1322#define MCF5282_FEC_TCR_TFC_PAUSE                       (0x00000008)
1323#define MCF5282_FEC_TCR_FDEN                            (0x00000004)
1324#define MCF5282_FEC_TCR_HBC                                     (0x00000002)
1325#define MCF5282_FEC_TCR_GTS                                     (0x00000001)
1326
1327#define MCF5282_FEC_PALR_BYTE0(x)                       (((x)&0xFF)<<24)
1328#define MCF5282_FEC_PALR_BYTE1(x)                       (((x)&0xFF)<<16)
1329#define MCF5282_FEC_PALR_BYTE2(x)                       (((x)&0xFF)<<8)
1330#define MCF5282_FEC_PALR_BYTE3(x)                       (((x)&0xFF))
1331
1332#define MCF5282_FEC_PAUR_BYTE4(x)                       (((x)&0xFF)<<24)
1333#define MCF5282_FEC_PAUR_BYTE5(x)                       (((x)&0xFF)<<16)
1334
1335#define MCF5282_FEC_OPD_PAUSE_DUR(x)            (((x)&0xFFFF))
1336
1337#define MCF5282_FEC_TFWR_X_WMRK_64                      (0x00000001)
1338#define MCF5282_FEC_TFWR_X_WMRK_128                     (0x00000002)
1339#define MCF5282_FEC_TFWR_X_WMRK_192                     (0x00000003)
1340
1341#define MCF5282_FEC_EMRBR_R_BUF_SIZE(x)         (((x)&0x7F)<<4)
1342
1343#define MCF5282_FEC_TxBD_R                                      0x8000
1344#define MCF5282_FEC_TxBD_BUSY                           0x4000
1345#define MCF5282_FEC_TxBD_TO1                            0x4000
1346#define MCF5282_FEC_TxBD_W                                      0x2000
1347#define MCF5282_FEC_TxBD_TO2                            0x1000
1348#define MCF5282_FEC_TxBD_FIRST                          0x1000
1349#define MCF5282_FEC_TxBD_L                                      0x0800
1350#define MCF5282_FEC_TxBD_TC                                     0x0400
1351#define MCF5282_FEC_TxBD_DEF                            0x0200
1352#define MCF5282_FEC_TxBD_HB                                     0x0100
1353#define MCF5282_FEC_TxBD_LC                                     0x0080
1354#define MCF5282_FEC_TxBD_RL                                     0x0040
1355#define MCF5282_FEC_TxBD_UN                                     0x0002
1356#define MCF5282_FEC_TxBD_CSL                            0x0001
1357
1358#define MCF5282_FEC_RxBD_E                                      0x8000
1359#define MCF5282_FEC_RxBD_INUSE                          0x4000
1360#define MCF5282_FEC_RxBD_R01                            0x4000
1361#define MCF5282_FEC_RxBD_W                                      0x2000
1362#define MCF5282_FEC_RxBD_R02                            0x1000
1363#define MCF5282_FEC_RxBD_L                                      0x0800
1364#define MCF5282_FEC_RxBD_M                                      0x0100
1365#define MCF5282_FEC_RxBD_BC                                     0x0080
1366#define MCF5282_FEC_RxBD_MC                                     0x0040
1367#define MCF5282_FEC_RxBD_LG                                     0x0020
1368#define MCF5282_FEC_RxBD_NO                                     0x0010
1369#define MCF5282_FEC_RxBD_CR                                     0x0004
1370#define MCF5282_FEC_RxBD_OV                                     0x0002
1371#define MCF5282_FEC_RxBD_TR                                     0x0001
1372
1373/*********************************************************************
1374*
1375* General Purpose I/O (GPIO) Module
1376*
1377*********************************************************************/
1378
1379/* Read/Write access macros for general use */
1380#define MCF5282_GPIO_PORTA              (*(vuint8  *)(&__IPSBAR[0x100000]))
1381#define MCF5282_GPIO_PORTB              (*(vuint8  *)(&__IPSBAR[0x100001]))
1382#define MCF5282_GPIO_PORTC              (*(vuint8  *)(&__IPSBAR[0x100002]))
1383#define MCF5282_GPIO_PORTD              (*(vuint8  *)(&__IPSBAR[0x100003]))
1384#define MCF5282_GPIO_PORTE              (*(vuint8  *)(&__IPSBAR[0x100004]))
1385#define MCF5282_GPIO_PORTF              (*(vuint8  *)(&__IPSBAR[0x100005]))
1386#define MCF5282_GPIO_PORTG              (*(vuint8  *)(&__IPSBAR[0x100006]))
1387#define MCF5282_GPIO_PORTH              (*(vuint8  *)(&__IPSBAR[0x100007]))
1388#define MCF5282_GPIO_PORTJ              (*(vuint8  *)(&__IPSBAR[0x100008]))
1389#define MCF5282_GPIO_PORTDD             (*(vuint8  *)(&__IPSBAR[0x100009]))
1390#define MCF5282_GPIO_PORTEH             (*(vuint8  *)(&__IPSBAR[0x10000A]))
1391#define MCF5282_GPIO_PORTEL             (*(vuint8  *)(&__IPSBAR[0x10000B]))
1392#define MCF5282_GPIO_PORTAS             (*(vuint8  *)(&__IPSBAR[0x10000C]))
1393#define MCF5282_GPIO_PORTQS             (*(vuint8  *)(&__IPSBAR[0x10000D]))
1394#define MCF5282_GPIO_PORTSD             (*(vuint8  *)(&__IPSBAR[0x10000E]))
1395#define MCF5282_GPIO_PORTTC             (*(vuint8  *)(&__IPSBAR[0x10000F]))
1396#define MCF5282_GPIO_PORTTD             (*(vuint8  *)(&__IPSBAR[0x100010]))
1397#define MCF5282_GPIO_PORTUA             (*(vuint8  *)(&__IPSBAR[0x100011]))
1398
1399#define MCF5282_GPIO_DDRA               (*(vuint8  *)(&__IPSBAR[0x100014]))
1400#define MCF5282_GPIO_DDRB               (*(vuint8  *)(&__IPSBAR[0x100015]))
1401#define MCF5282_GPIO_DDRC               (*(vuint8  *)(&__IPSBAR[0x100016]))
1402#define MCF5282_GPIO_DDRD               (*(vuint8  *)(&__IPSBAR[0x100017]))
1403#define MCF5282_GPIO_DDRE               (*(vuint8  *)(&__IPSBAR[0x100018]))
1404#define MCF5282_GPIO_DDRF               (*(vuint8  *)(&__IPSBAR[0x100019]))
1405#define MCF5282_GPIO_DDRG               (*(vuint8  *)(&__IPSBAR[0x10001A]))
1406#define MCF5282_GPIO_DDRH               (*(vuint8  *)(&__IPSBAR[0x10001B]))
1407#define MCF5282_GPIO_DDRJ               (*(vuint8  *)(&__IPSBAR[0x10001C]))
1408#define MCF5282_GPIO_DDRDD              (*(vuint8  *)(&__IPSBAR[0x10001D]))
1409#define MCF5282_GPIO_DDREH              (*(vuint8  *)(&__IPSBAR[0x10001E]))
1410#define MCF5282_GPIO_DDREL              (*(vuint8  *)(&__IPSBAR[0x10001F]))
1411#define MCF5282_GPIO_DDRAS              (*(vuint8  *)(&__IPSBAR[0x100020]))
1412#define MCF5282_GPIO_DDRQS              (*(vuint8  *)(&__IPSBAR[0x100021]))
1413#define MCF5282_GPIO_DDRSD              (*(vuint8  *)(&__IPSBAR[0x100022]))
1414#define MCF5282_GPIO_DDRTC              (*(vuint8  *)(&__IPSBAR[0x100023]))
1415#define MCF5282_GPIO_DDRTD              (*(vuint8  *)(&__IPSBAR[0x100024]))
1416#define MCF5282_GPIO_DDRUA              (*(vuint8  *)(&__IPSBAR[0x100025]))
1417
1418#define MCF5282_GPIO_PORTAP             (*(vuint8  *)(&__IPSBAR[0x100028]))
1419#define MCF5282_GPIO_PORTBP             (*(vuint8  *)(&__IPSBAR[0x100029]))
1420#define MCF5282_GPIO_PORTCP             (*(vuint8  *)(&__IPSBAR[0x10002A]))
1421#define MCF5282_GPIO_PORTDP             (*(vuint8  *)(&__IPSBAR[0x10002B]))
1422#define MCF5282_GPIO_PORTEP             (*(vuint8  *)(&__IPSBAR[0x10002C]))
1423#define MCF5282_GPIO_PORTFP             (*(vuint8  *)(&__IPSBAR[0x10002D]))
1424#define MCF5282_GPIO_PORTGP             (*(vuint8  *)(&__IPSBAR[0x10002E]))
1425#define MCF5282_GPIO_PORTHP             (*(vuint8  *)(&__IPSBAR[0x10002F]))
1426#define MCF5282_GPIO_PORTJP             (*(vuint8  *)(&__IPSBAR[0x100030]))
1427#define MCF5282_GPIO_PORTDDP    (*(vuint8  *)(&__IPSBAR[0x100031]))
1428#define MCF5282_GPIO_PORTEHP    (*(vuint8  *)(&__IPSBAR[0x100032]))
1429#define MCF5282_GPIO_PORTELP    (*(vuint8  *)(&__IPSBAR[0x100033]))
1430#define MCF5282_GPIO_PORTASP    (*(vuint8  *)(&__IPSBAR[0x100034]))
1431#define MCF5282_GPIO_PORTQSP    (*(vuint8  *)(&__IPSBAR[0x100035]))
1432#define MCF5282_GPIO_PORTSDP    (*(vuint8  *)(&__IPSBAR[0x100036]))
1433#define MCF5282_GPIO_PORTTCP    (*(vuint8  *)(&__IPSBAR[0x100037]))
1434#define MCF5282_GPIO_PORTTDP    (*(vuint8  *)(&__IPSBAR[0x100038]))
1435#define MCF5282_GPIO_PORTUAP    (*(vuint8  *)(&__IPSBAR[0x100039]))
1436
1437#define MCF5282_GPIO_SETA               (*(vuint8  *)(&__IPSBAR[0x100028]))
1438#define MCF5282_GPIO_SETB               (*(vuint8  *)(&__IPSBAR[0x100029]))
1439#define MCF5282_GPIO_SETC               (*(vuint8  *)(&__IPSBAR[0x10002A]))
1440#define MCF5282_GPIO_SETD               (*(vuint8  *)(&__IPSBAR[0x10002B]))
1441#define MCF5282_GPIO_SETE               (*(vuint8  *)(&__IPSBAR[0x10002C]))
1442#define MCF5282_GPIO_SETF               (*(vuint8  *)(&__IPSBAR[0x10002D]))
1443#define MCF5282_GPIO_SETG       (*(vuint8  *)(&__IPSBAR[0x10002E]))
1444#define MCF5282_GPIO_SETH       (*(vuint8  *)(&__IPSBAR[0x10002F]))
1445#define MCF5282_GPIO_SETJ       (*(vuint8  *)(&__IPSBAR[0x100030]))
1446#define MCF5282_GPIO_SETDD      (*(vuint8  *)(&__IPSBAR[0x100031]))
1447#define MCF5282_GPIO_SETEH      (*(vuint8  *)(&__IPSBAR[0x100032]))
1448#define MCF5282_GPIO_SETEL      (*(vuint8  *)(&__IPSBAR[0x100033]))
1449#define MCF5282_GPIO_SETAS      (*(vuint8  *)(&__IPSBAR[0x100034]))
1450#define MCF5282_GPIO_SETQS      (*(vuint8  *)(&__IPSBAR[0x100035]))
1451#define MCF5282_GPIO_SETSD      (*(vuint8  *)(&__IPSBAR[0x100036]))
1452#define MCF5282_GPIO_SETTC      (*(vuint8  *)(&__IPSBAR[0x100037]))
1453#define MCF5282_GPIO_SETTD      (*(vuint8  *)(&__IPSBAR[0x100038]))
1454#define MCF5282_GPIO_SETUA      (*(vuint8  *)(&__IPSBAR[0x100039]))
1455
1456#define MCF5282_GPIO_CLRA               (*(vuint8  *)(&__IPSBAR[0x10003C]))
1457#define MCF5282_GPIO_CLRB               (*(vuint8  *)(&__IPSBAR[0x10003D]))
1458#define MCF5282_GPIO_CLRC               (*(vuint8  *)(&__IPSBAR[0x10003E]))
1459#define MCF5282_GPIO_CLRD               (*(vuint8  *)(&__IPSBAR[0x10003F]))
1460#define MCF5282_GPIO_CLRE               (*(vuint8  *)(&__IPSBAR[0x100040]))
1461#define MCF5282_GPIO_CLRF               (*(vuint8  *)(&__IPSBAR[0x100041]))
1462#define MCF5282_GPIO_CLRG               (*(vuint8  *)(&__IPSBAR[0x100042]))
1463#define MCF5282_GPIO_CLRH               (*(vuint8  *)(&__IPSBAR[0x100043]))
1464#define MCF5282_GPIO_CLRJ               (*(vuint8  *)(&__IPSBAR[0x100044]))
1465#define MCF5282_GPIO_CLRDD      (*(vuint8  *)(&__IPSBAR[0x100045]))
1466#define MCF5282_GPIO_CLREH      (*(vuint8  *)(&__IPSBAR[0x100046]))
1467#define MCF5282_GPIO_CLREL      (*(vuint8  *)(&__IPSBAR[0x100047]))
1468#define MCF5282_GPIO_CLRAS      (*(vuint8  *)(&__IPSBAR[0x100048]))
1469#define MCF5282_GPIO_CLRQS      (*(vuint8  *)(&__IPSBAR[0x100049]))
1470#define MCF5282_GPIO_CLRSD      (*(vuint8  *)(&__IPSBAR[0x10004A]))
1471#define MCF5282_GPIO_CLRTC      (*(vuint8  *)(&__IPSBAR[0x10004B]))
1472#define MCF5282_GPIO_CLRTD      (*(vuint8  *)(&__IPSBAR[0x10004C]))
1473#define MCF5282_GPIO_CLRUA      (*(vuint8  *)(&__IPSBAR[0x10004D]))
1474
1475#define MCF5282_GPIO_PBCDPAR    (*(vuint8  *)(&__IPSBAR[0x100050]))
1476#define MCF5282_GPIO_PFPAR      (*(vuint8  *)(&__IPSBAR[0x100051]))
1477#define MCF5282_GPIO_PEPAR      (*(vuint16 *)(&__IPSBAR[0x100052]))
1478#define MCF5282_GPIO_PJPAR      (*(vuint8  *)(&__IPSBAR[0x100054]))
1479#define MCF5282_GPIO_PSDPAR     (*(vuint8  *)(&__IPSBAR[0x100055]))
1480#define MCF5282_GPIO_PASPAR     (*(vuint16 *)(&__IPSBAR[0x100056]))
1481#define MCF5282_GPIO_PEHLPAR    (*(vuint8  *)(&__IPSBAR[0x100058]))
1482#define MCF5282_GPIO_PQSPAR     (*(vuint8  *)(&__IPSBAR[0x100059]))
1483#define MCF5282_GPIO_PTCPAR     (*(vuint8  *)(&__IPSBAR[0x10005A]))
1484#define MCF5282_GPIO_PTDPAR     (*(vuint8  *)(&__IPSBAR[0x10005B]))
1485#define MCF5282_GPIO_PUAPAR     (*(vuint8  *)(&__IPSBAR[0x10005C]))
1486
1487/* Bit level definitions and macros */
1488#define MCF5282_GPIO_PORTx7                                     (0x80)
1489#define MCF5282_GPIO_PORTx6                                     (0x40)
1490#define MCF5282_GPIO_PORTx5                                     (0x20)
1491#define MCF5282_GPIO_PORTx4                                     (0x10)
1492#define MCF5282_GPIO_PORTx3                                     (0x08)
1493#define MCF5282_GPIO_PORTx2                                     (0x04)
1494#define MCF5282_GPIO_PORTx1                                     (0x02)
1495#define MCF5282_GPIO_PORTx0                                     (0x01)
1496#define MCF5282_GPIO_PORTx(x)                           (0x01<<(x))
1497
1498#define MCF5282_GPIO_DDRx7                                      (0x80)
1499#define MCF5282_GPIO_DDRx6                                      (0x40)
1500#define MCF5282_GPIO_DDRx5                                      (0x20)
1501#define MCF5282_GPIO_DDRx4                                      (0x10)
1502#define MCF5282_GPIO_DDRx3                                      (0x08)
1503#define MCF5282_GPIO_DDRx2                                      (0x04)
1504#define MCF5282_GPIO_DDRx1                                      (0x02)
1505#define MCF5282_GPIO_DDRx0                                      (0x01)
1506#define MCF5282_GPIO_DDRx(x)                            (0x01<<(x))
1507
1508#define MCF5282_GPIO_PORTxP7                            (0x80)
1509#define MCF5282_GPIO_PORTxP6                            (0x40)
1510#define MCF5282_GPIO_PORTxP5                            (0x20)
1511#define MCF5282_GPIO_PORTxP4                            (0x10)
1512#define MCF5282_GPIO_PORTxP3                            (0x08)
1513#define MCF5282_GPIO_PORTxP2                            (0x04)
1514#define MCF5282_GPIO_PORTxP1                            (0x02)
1515#define MCF5282_GPIO_PORTxP0                            (0x01)
1516#define MCF5282_GPIO_PORTxP(x)                          (0x01<<(x))
1517
1518#define MCF5282_GPIO_SETx7                                      (0x80)
1519#define MCF5282_GPIO_SETx6                                      (0x40)
1520#define MCF5282_GPIO_SETx5                                      (0x20)
1521#define MCF5282_GPIO_SETx4                                      (0x10)
1522#define MCF5282_GPIO_SETx3                                      (0x08)
1523#define MCF5282_GPIO_SETx2                                      (0x04)
1524#define MCF5282_GPIO_SETx1                                      (0x02)
1525#define MCF5282_GPIO_SETx0                                      (0x01)
1526#define MCF5282_GPIO_SETx(x)                            (0x01<<(x))
1527
1528#define MCF5282_GPIO_CLRx7                                      (0x80)
1529#define MCF5282_GPIO_CLRx6                                      (0x40)
1530#define MCF5282_GPIO_CLRx5                                      (0x20)
1531#define MCF5282_GPIO_CLRx4                                      (0x10)
1532#define MCF5282_GPIO_CLRx3                                      (0x08)
1533#define MCF5282_GPIO_CLRx2                                      (0x04)
1534#define MCF5282_GPIO_CLRx1                                      (0x02)
1535#define MCF5282_GPIO_CLRx0                                      (0x01)
1536#define MCF5282_GPIO_CLRx(x)                            (0x01<<(x))
1537
1538#define MCF5282_GPIO_PBCDPAR_PBPA                       (0x80)
1539#define MCF5282_GPIO_PBCDPAR_PCDPA                      (0x40)
1540
1541#define MCF5282_GPIO_PEPAR_PEPA7                        (0x4000)
1542#define MCF5282_GPIO_PEPAR_PEPA6                        (0x1000)
1543#define MCF5282_GPIO_PEPAR_PEPA5                        (0x0400)
1544#define MCF5282_GPIO_PEPAR_PEPA4                        (0x0100)
1545#define MCF5282_GPIO_PEPAR_PEPA3                        (0x0040)
1546#define MCF5282_GPIO_PEPAR_PEPA2                        (0x0010)
1547#define MCF5282_GPIO_PEPAR_PEPA1(x)                     (((x)&0x3)<<2)
1548#define MCF5282_GPIO_PEPAR_PEPA0(x)                     (((x)&0x3))
1549
1550#define MCF5282_GPIO_PFPAR_PFPA7                        (0x80)
1551#define MCF5282_GPIO_PFPAR_PFPA6                        (0x40)
1552#define MCF5282_GPIO_PFPAR_PFPA5                        (0x20)
1553
1554#define MCF5282_GPIO_PJPAR_PJPA7                        (0x80)
1555#define MCF5282_GPIO_PJPAR_PJPA6                        (0x40)
1556#define MCF5282_GPIO_PJPAR_PJPA5                        (0x20)
1557#define MCF5282_GPIO_PJPAR_PJPA4                        (0x10)
1558#define MCF5282_GPIO_PJPAR_PJPA3                        (0x08)
1559#define MCF5282_GPIO_PJPAR_PJPA2                        (0x04)
1560#define MCF5282_GPIO_PJPAR_PJPA1                        (0x02)
1561#define MCF5282_GPIO_PJPAR_PJPA0                        (0x01)
1562#define MCF5282_GPIO_PJPAR_PJPA(x)                      (0x01<<(x))
1563
1564#define MCF5282_GPIO_PSDPAR_PSDPA                       (0x80)
1565
1566#define MCF5282_GPIO_PASPAR_PASPA5(x)           (((x)&0x3)<<10)
1567#define MCF5282_GPIO_PASPAR_PASPA4(x)           (((x)&0x3)<<8)
1568#define MCF5282_GPIO_PASPAR_PASPA3(x)           (((x)&0x3)<<6)
1569#define MCF5282_GPIO_PASPAR_PASPA2(x)           (((x)&0x3)<<4)
1570#define MCF5282_GPIO_PASPAR_PASPA1(x)           (((x)&0x3)<<2)
1571#define MCF5282_GPIO_PASPAR_PASPA0(x)           (((x)&0x3))
1572
1573#define MCF5282_GPIO_PEHLPAR_PEHPA                      (0x80)
1574#define MCF5282_GPIO_PEHLPAR_PELPA                      (0x40)
1575
1576#define MCF5282_GPIO_PQSPAR_PQSPA6                      (0x40)
1577#define MCF5282_GPIO_PQSPAR_PQSPA5                      (0x20)
1578#define MCF5282_GPIO_PQSPAR_PQSPA4                      (0x10)
1579#define MCF5282_GPIO_PQSPAR_PQSPA3                      (0x08)
1580#define MCF5282_GPIO_PQSPAR_PQSPA2                      (0x04)
1581#define MCF5282_GPIO_PQSPAR_PQSPA1                      (0x02)
1582#define MCF5282_GPIO_PQSPAR_PQSPA0                      (0x01)
1583#define MCF5282_GPIO_PQSPAR_PQSPA(x)            (0x01<<(x))
1584
1585#define MCF5282_GPIO_PTCPAR_PTCPA3(x)           (((x)&0x3)<<6)
1586#define MCF5282_GPIO_PTCPAR_PTCPA2(x)           (((x)&0x3)<<4)
1587#define MCF5282_GPIO_PTCPAR_PTCPA1(x)           (((x)&0x3)<<2)
1588#define MCF5282_GPIO_PTCPAR_PTCPA0(x)           (((x)&0x3))
1589
1590#define MCF5282_GPIO_PTDPAR_PTDPA3(x)           (((x)&0x3)<<6)
1591#define MCF5282_GPIO_PTDPAR_PTDPA2(x)           (((x)&0x3)<<4)
1592#define MCF5282_GPIO_PTDPAR_PTDPA1(x)           (((x)&0x3)<<2)
1593#define MCF5282_GPIO_PTDPAR_PTDPA0(x)           (((x)&0x3))
1594
1595#define MCF5282_GPIO_PUAPAR_PUAPA3                      (0x08)
1596#define MCF5282_GPIO_PUAPAR_PUAPA2                      (0x04)
1597#define MCF5282_GPIO_PUAPAR_PUAPA1                      (0x02)
1598#define MCF5282_GPIO_PUAPAR_PUAPA0                      (0x01)
1599
1600/*********************************************************************
1601*
1602* Reset Controller Module
1603*
1604*********************************************************************/
1605
1606/* Read/Write access macros for general use */
1607#define MCF5282_RESET_RCR               (*(vuint8  *)(&__IPSBAR[0x110000]))
1608#define MCF5282_RESET_RSR               (*(vuint8  *)(&__IPSBAR[0x110001]))
1609
1610/* Bit level definitions and macros */
1611#define MCF5282_RESET_RCR_SOFTRST                       (0x80)
1612#define MCF5282_RESET_RCR_FRCRSTOUT             (0x40)
1613#define MCF5282_RESET_RCR_LVDF                          (0x10)
1614#define MCF5282_RESET_RCR_LVDIE                         (0x08)
1615#define MCF5282_RESET_RCR_LVDRE                         (0x04)
1616#define MCF5282_RESET_RCR_LVDE                          (0x01)
1617
1618#define MCF5282_RESET_RSR_LVD                           (0x40)
1619#define MCF5282_RESET_RSR_SOFT                          (0x20)
1620#define MCF5282_RESET_RSR_WDR                           (0x10)
1621#define MCF5282_RESET_RSR_POR                           (0x08)
1622#define MCF5282_RESET_RSR_EXT                           (0x04)
1623#define MCF5282_RESET_RSR_LOC                           (0x02)
1624#define MCF5282_RESET_RSR_LOL                           (0x01)
1625
1626/*********************************************************************
1627*
1628* Chip Configuration Module (CCM)
1629*
1630*********************************************************************/
1631
1632/* Read/Write access macros for general use */
1633#define MCF5282_CCM_CCR                 (*(vuint16 *)(&__IPSBAR[0x110004]))
1634#define MCF5282_CCM_RCON                (*(vuint16 *)(&__IPSBAR[0x110008]))
1635#define MCF5282_CCM_CIR                 (*(vuint16 *)(&__IPSBAR[0x11000A]))
1636
1637/* Bit level definitions and macros */
1638#define MCF5282_CCM_CCR_LOAD                            (0x8000)
1639#define MCF5282_CCM_CCR_MODE(x)                         (((x)&0x0007)<<8)
1640#define MCF5282_CCM_CCR_SZEN                            (0x0040)
1641#define MCF5282_CCM_CCR_PSTEN                           (0x0020)
1642#define MCF5282_CCM_CCR_BME                                     (0x0008)
1643#define MCF5282_CCM_CCR_BMT(x)                          (((x)&0x0007))
1644
1645/*********************************************************************
1646*
1647* Power Management Module (PMM)
1648*
1649*********************************************************************/
1650
1651/* Read/Write access macros for general use */
1652#define MCF5282_PMM_LPICR               (*(vuint8  *)(&__IPSBAR[0x000012]))
1653#define MCF5282_PMM_LPCR                (*(vuint8  *)(&__IPSBAR[0x110007]))
1654
1655/* Bit level definitions and macros */
1656#define MCF5282_PMM_LPICR_ENBSTOP                       (0x80)
1657#define MCF5282_PMM_LPICR_XLMP_IPL(x)           (((x)&0x07)<<4)
1658
1659#define MCF5282_PMM_LPCR_LPMD_STOP                      (0xC0)
1660#define MCF5282_PMM_LPCR_LPMD_WAIT                      (0x80)
1661#define MCF5282_PMM_LPCR_LPMD_DOZE                      (0x40)
1662#define MCF5282_PMM_LPCR_LPMD_RUN                       (0x00)
1663#define MCF5282_PMM_LPCR_STPMD(x)                       (((x)&0x03)<<3)
1664#define MCF5282_PMM_LPCR_LVDSE                          (0x02)
1665
1666/*********************************************************************
1667*
1668* Clock Module
1669*
1670*********************************************************************/
1671
1672/* Read/Write access macros for general use */
1673#define MCF5282_CLOCK_SYNCR             (*(vuint16 *)(&__IPSBAR[0x120000]))
1674#define MCF5282_CLOCK_SYNSR             (*(vuint8  *)(&__IPSBAR[0x120002]))
1675
1676/* Bit level definitions and macros */
1677#define MCF5282_CLOCK_SYNCR_LOLRE                       (0x8000)
1678#define MCF5282_CLOCK_SYNCR_MFD(x)                      (((x)&0x0007)<<12)
1679#define MCF5282_CLOCK_SYNCR_LOCRE                       (0x0800)
1680#define MCF5282_CLOCK_SYNCR_RFD(x)                      (((x)&0x0007)<<8)
1681#define MCF5282_CLOCK_SYNCR_LOCEN                       (0x0080)
1682#define MCF5282_CLOCK_SYNCR_DISCLK                      (0x0040)
1683#define MCF5282_CLOCK_SYNCR_FWKUP                       (0x0020)
1684#define MCF5282_CLOCK_SYNCR_STPMD(x)            (((x)&0x0003)<<2)
1685
1686#define MCF5282_CLOCK_SYNSR_PLLMODE                     (0x80)
1687#define MCF5282_CLOCK_SYNSR_PLLSEL                      (0x40)
1688#define MCF5282_CLOCK_SYNSR_PLLREF                      (0x20)
1689#define MCF5282_CLOCK_SYNSR_LOCKS                       (0x10)
1690#define MCF5282_CLOCK_SYNSR_LOCK                        (0x08)
1691#define MCF5282_CLOCK_SYNSR_LOCS                        (0x04)
1692
1693/*********************************************************************
1694*
1695* Edge Port (EPORT) Module
1696*
1697*********************************************************************/
1698
1699/* Read/Write access macros for general use */
1700#define MCF5282_EPORT_EPPAR             (*(vuint16 *)(&__IPSBAR[0x130000]))
1701#define MCF5282_EPORT_EPDDR             (*(vuint8  *)(&__IPSBAR[0x130002]))
1702#define MCF5282_EPORT_EPIER             (*(vuint8  *)(&__IPSBAR[0x130003]))
1703#define MCF5282_EPORT_EPDR              (*(vuint8  *)(&__IPSBAR[0x130004]))
1704#define MCF5282_EPORT_EPPDR             (*(vuint8  *)(&__IPSBAR[0x130005]))
1705#define MCF5282_EPORT_EPFR              (*(vuint8  *)(&__IPSBAR[0x130006]))
1706
1707/* Bit level definitions and macros */
1708#define MCF5282_EPORT_EPPAR_EPPA7_LEVEL         (0x0000)
1709#define MCF5282_EPORT_EPPAR_EPPA7_RISING        (0x4000)
1710#define MCF5282_EPORT_EPPAR_EPPA7_FALLING       (0x8000)
1711#define MCF5282_EPORT_EPPAR_EPPA7_BOTHEDGE      (0xC000)
1712#define MCF5282_EPORT_EPPAR_EPPA6_LEVEL         (0x0000)
1713#define MCF5282_EPORT_EPPAR_EPPA6_RISING    (0x1000)
1714#define MCF5282_EPORT_EPPAR_EPPA6_FALLING   (0x2000)
1715#define MCF5282_EPORT_EPPAR_EPPA6_BOTHEDGE  (0x3000)
1716#define MCF5282_EPORT_EPPAR_EPPA5_LEVEL         (0x0000)
1717#define MCF5282_EPORT_EPPAR_EPPA5_RISING    (0x0400)
1718#define MCF5282_EPORT_EPPAR_EPPA5_FALLING   (0x0800)
1719#define MCF5282_EPORT_EPPAR_EPPA5_BOTHEDGE  (0x0C00)
1720#define MCF5282_EPORT_EPPAR_EPPA4_LEVEL         (0x0000)
1721#define MCF5282_EPORT_EPPAR_EPPA4_RISING    (0x0100)
1722#define MCF5282_EPORT_EPPAR_EPPA4_FALLING   (0x0200)
1723#define MCF5282_EPORT_EPPAR_EPPA4_BOTHEDGE  (0x0300)
1724#define MCF5282_EPORT_EPPAR_EPPA3_LEVEL         (0x0000)
1725#define MCF5282_EPORT_EPPAR_EPPA3_RISING    (0x0040)
1726#define MCF5282_EPORT_EPPAR_EPPA3_FALLING   (0x0080)
1727#define MCF5282_EPORT_EPPAR_EPPA3_BOTHEDGE  (0x00C0)
1728#define MCF5282_EPORT_EPPAR_EPPA2_LEVEL         (0x0000)
1729#define MCF5282_EPORT_EPPAR_EPPA2_RISING    (0x0010)
1730#define MCF5282_EPORT_EPPAR_EPPA2_FALLING   (0x0020)
1731#define MCF5282_EPORT_EPPAR_EPPA2_BOTHEDGE  (0x0030)
1732#define MCF5282_EPORT_EPPAR_EPPA1_LEVEL         (0x0000)
1733#define MCF5282_EPORT_EPPAR_EPPA1_RISING    (0x0004)
1734#define MCF5282_EPORT_EPPAR_EPPA1_FALLING   (0x0008)
1735#define MCF5282_EPORT_EPPAR_EPPA1_BOTHEDGE  (0x000C)
1736
1737
1738#define MCF5282_EPORT_EPDDR_EPDD7                       (0x80)
1739#define MCF5282_EPORT_EPDDR_EPDD6                       (0x40)
1740#define MCF5282_EPORT_EPDDR_EPDD5                       (0x20)
1741#define MCF5282_EPORT_EPDDR_EPDD4                       (0x10)
1742#define MCF5282_EPORT_EPDDR_EPDD3                       (0x08)
1743#define MCF5282_EPORT_EPDDR_EPDD2                       (0x04)
1744#define MCF5282_EPORT_EPDDR_EPDD1                       (0x02)
1745#define MCF5282_EPORT_EPDDR_EPDD(x)                     (0x01<<(x))
1746
1747#define MCF5282_EPORT_EPIER_EPIE7                       (0x80)
1748#define MCF5282_EPORT_EPIER_EPIE6                       (0x40)
1749#define MCF5282_EPORT_EPIER_EPIE5                       (0x20)
1750#define MCF5282_EPORT_EPIER_EPIE4                       (0x10)
1751#define MCF5282_EPORT_EPIER_EPIE3                       (0x08)
1752#define MCF5282_EPORT_EPIER_EPIE2                       (0x04)
1753#define MCF5282_EPORT_EPIER_EPIE1                       (0x02)
1754#define MCF5282_EPORT_EPIER_EPIE(x)                     (0x01<<(x))
1755
1756#define MCF5282_EPORT_EPDR_EPD7                         (0x80)
1757#define MCF5282_EPORT_EPDR_EPD6                         (0x40)
1758#define MCF5282_EPORT_EPDR_EPD5                         (0x20)
1759#define MCF5282_EPORT_EPDR_EPD4                         (0x10)
1760#define MCF5282_EPORT_EPDR_EPD3                         (0x08)
1761#define MCF5282_EPORT_EPDR_EPD2                         (0x04)
1762#define MCF5282_EPORT_EPDR_EPD1                         (0x02)
1763#define MCF5282_EPORT_EPDR_EPD(x)                       (0x01<<(x))
1764
1765#define MCF5282_EPORT_EPPDR_EPPD7                       (0x80)
1766#define MCF5282_EPORT_EPPDR_EPPD6                       (0x40)
1767#define MCF5282_EPORT_EPPDR_EPPD5                       (0x20)
1768#define MCF5282_EPORT_EPPDR_EPPD4                       (0x10)
1769#define MCF5282_EPORT_EPPDR_EPPD3                       (0x08)
1770#define MCF5282_EPORT_EPPDR_EPPD2                       (0x04)
1771#define MCF5282_EPORT_EPPDR_EPPD1                       (0x02)
1772#define MCF5282_EPORT_EPPDR_EPPD(x)                     (0x01<<(x))
1773
1774#define MCF5282_EPORT_EPFR_EPF7                         (0x80)
1775#define MCF5282_EPORT_EPFR_EPF6                         (0x40)
1776#define MCF5282_EPORT_EPFR_EPF5                         (0x20)
1777#define MCF5282_EPORT_EPFR_EPF4                         (0x10)
1778#define MCF5282_EPORT_EPFR_EPF3                         (0x08)
1779#define MCF5282_EPORT_EPFR_EPF2                         (0x04)
1780#define MCF5282_EPORT_EPFR_EPF1                         (0x02)
1781#define MCF5282_EPORT_EPFR_EPF(x)                       (0x01<<(x))
1782
1783/*********************************************************************
1784*
1785* Watchdog Timer Module (WTM)
1786*
1787*********************************************************************/
1788
1789/* Read/Write access macros for general use */
1790#define MCF5282_WTM_WCR         (*(vuint16 *)(&__IPSBAR[0x140000]))
1791#define MCF5282_WTM_WMR         (*(vuint16 *)(&__IPSBAR[0x140002]))
1792#define MCF5282_WTM_WCNTR       (*(vuint16 *)(&__IPSBAR[0x140004]))
1793#define MCF5282_WTM_WSR         (*(vuint16 *)(&__IPSBAR[0x140006]))
1794
1795/* Bit level definitions and macros */
1796#define MCF5282_WTM_WCR_WAIT                            (0x0008)
1797#define MCF5282_WTM_WCR_DOZE                            (0x0004)
1798#define MCF5282_WTM_WCR_HALTED                          (0x0002)
1799#define MCF5282_WTM_WCR_EN                              (0x0001)
1800
1801#define MCF5282_WTM_WSR_SEQ1                            (0x5555)
1802#define MCF5282_WTM_WSR_SEQ2                            (0xAAAA)
1803
1804/*********************************************************************
1805*
1806* Programmable Interrupt Timer (PIT) Module
1807*
1808*********************************************************************/
1809
1810/* Read/Write access macros for general use */
1811#define MCF5282_PIT0_PCSR               (*(vuint16 *)(&__IPSBAR[0x150000]))
1812#define MCF5282_PIT0_PMR                (*(vuint16 *)(&__IPSBAR[0x150002]))
1813#define MCF5282_PIT0_PCNTR              (*(vuint16 *)(&__IPSBAR[0x150004]))
1814
1815#define MCF5282_PIT1_PCSR               (*(vuint16 *)(&__IPSBAR[0x160000]))
1816#define MCF5282_PIT1_PMR                (*(vuint16 *)(&__IPSBAR[0x160002]))
1817#define MCF5282_PIT1_PCNTR              (*(vuint16 *)(&__IPSBAR[0x160004]))
1818
1819#define MCF5282_PIT2_PCSR               (*(vuint16 *)(&__IPSBAR[0x170000]))
1820#define MCF5282_PIT2_PMR                (*(vuint16 *)(&__IPSBAR[0x170002]))
1821#define MCF5282_PIT2_PCNTR              (*(vuint16 *)(&__IPSBAR[0x170004]))
1822
1823#define MCF5282_PIT3_PCSR               (*(vuint16 *)(&__IPSBAR[0x180000]))
1824#define MCF5282_PIT3_PMR                (*(vuint16 *)(&__IPSBAR[0x180002]))
1825#define MCF5282_PIT3_PCNTR              (*(vuint16 *)(&__IPSBAR[0x180004]))
1826
1827#define MCF5282_PIT_PCSR(x)             (*(vuint16 *)(&__IPSBAR[0x150000+(0x1000*(x))]))
1828#define MCF5282_PIT_PMR(x)              (*(vuint16 *)(&__IPSBAR[0x150002+(0x1000*(x))]))
1829#define MCF5282_PIT_PCNTR(x)    (*(vuint16 *)(&__IPSBAR[0x150004+(0x1000*(x))]))
1830
1831/* Bit level definitions and macros */
1832#define MCF5282_PIT_PCSR_PRE(x)                         (((x)&0x000F)<<8)
1833#define MCF5282_PIT_PCSR_DOZE                           (0x0040)
1834#define MCF5282_PIT_PCSR_HALTED                         (0x0020)
1835#define MCF5282_PIT_PCSR_OVW                            (0x0010)
1836#define MCF5282_PIT_PCSR_PIE                            (0x0008)
1837#define MCF5282_PIT_PCSR_PIF                            (0x0004)
1838#define MCF5282_PIT_PCSR_RLD                            (0x0002)
1839#define MCF5282_PIT_PCSR_EN                                     (0x0001)
1840
1841/*********************************************************************
1842*
1843* Queued Analog to Digital Converter (QADC) Module
1844*
1845*********************************************************************/
1846
1847/* Read/Write access macros for general use */
1848#define MCF5282_QADC_QADCMCR    (*(vuint16 *)(&__IPSBAR[0x190000]))
1849#define MCF5282_QADC_PORTQA             (*(vuint8  *)(&__IPSBAR[0x190006]))
1850#define MCF5282_QADC_PORTQB             (*(vuint8  *)(&__IPSBAR[0x190007]))
1851#define MCF5282_QADC_DDRQA              (*(vuint8  *)(&__IPSBAR[0x190008]))
1852#define MCF5282_QADC_DDRQB              (*(vuint8  *)(&__IPSBAR[0x190009]))
1853#define MCF5282_QADC_QACR0              (*(vuint16 *)(&__IPSBAR[0x19000A]))
1854#define MCF5282_QADC_QACR1              (*(vuint16 *)(&__IPSBAR[0x19000C]))
1855#define MCF5282_QADC_QACR2              (*(vuint16 *)(&__IPSBAR[0x19000E]))
1856#define MCF5282_QADC_QASR0              (*(vuint16 *)(&__IPSBAR[0x190010]))
1857#define MCF5282_QADC_QASR1              (*(vuint16 *)(&__IPSBAR[0x190012]))
1858#define MCF5282_QADC_CCW(x)             (*(vuint16 *)(&__IPSBAR[0x190200+((x)*2)]))
1859#define MCF5282_QADC_RJURR(x)   (*(vuint16 *)(&__IPSBAR[0x190280+((x)*2)]))
1860#define MCF5282_QADC_LJSRR(x)   (*(vuint16 *)(&__IPSBAR[0x190300+((x)*2)]))
1861#define MCF5282_QADC_LJURR(x)   (*(vuint16 *)(&__IPSBAR[0x190380+((x)*2)]))
1862
1863/* Bit level definitions and macros */
1864#define MCF5282_QADC_QADCMCR_QSTOP                      (0x8000)
1865#define MCF5282_QADC_QADCMCR_QDBG                       (0x4000)
1866#define MCF5282_QADC_QADCMCR_SUPV                       (0x0080)
1867
1868#define MCF5282_QADC_PORTQA_PQA4                        (0x10)
1869#define MCF5282_QADC_PORTQA_PQA3                        (0x08)
1870#define MCF5282_QADC_PORTQA_PQA1                        (0x02)
1871#define MCF5282_QADC_PORTQA_PQA0                        (0x01)
1872#define MCF5282_QADC_PORTQA_AN56                        (0x10)
1873#define MCF5282_QADC_PORTQA_AN55                        (0x08)
1874#define MCF5282_QADC_PORTQA_ETRIG2                      (0x10)
1875#define MCF5282_QADC_PORTQA_ETRIG1                      (0x08)
1876#define MCF5282_QADC_PORTQA_AN53                        (0x02)
1877#define MCF5282_QADC_PORTQA_AN52                        (0x01)
1878#define MCF5282_QADC_PORTQA_MA1                         (0x02)
1879#define MCF5282_QADC_PORTQA_MA0                         (0x01)
1880
1881#define MCF5282_QADC_PORTQB_PQB3                        (0x08)
1882#define MCF5282_QADC_PORTQB_PQB2                        (0x04)
1883#define MCF5282_QADC_PORTQB_PQB1                        (0x02)
1884#define MCF5282_QADC_PORTQB_PQB0                        (0x01)
1885#define MCF5282_QADC_PORTQB_AN3                         (0x08)
1886#define MCF5282_QADC_PORTQB_AN2                         (0x04)
1887#define MCF5282_QADC_PORTQB_AN1                         (0x02)
1888#define MCF5282_QADC_PORTQB_AN0                         (0x01)
1889#define MCF5282_QADC_PORTQB_ANZ                         (0x08)
1890#define MCF5282_QADC_PORTQB_ANY                         (0x04)
1891#define MCF5282_QADC_PORTQB_ANX                         (0x02)
1892#define MCF5282_QADC_PORTQB_ANW                         (0x01)
1893
1894#define MCF5282_QADC_DDRQA_DDQA4                        (0x10)
1895#define MCF5282_QADC_DDRQA_DDQA3                        (0x08)
1896#define MCF5282_QADC_DDRQA_DDQA1                        (0x02)
1897#define MCF5282_QADC_DDRQA_DDQA0                        (0x01)
1898
1899#define MCF5282_QADC_DDRQB_DDQB3                        (0x08)
1900#define MCF5282_QADC_DDRQB_DDQB2                        (0x04)
1901#define MCF5282_QADC_DDRQB_DDQB1                        (0x02)
1902#define MCF5282_QADC_DDRQB_DDQB0                        (0x01)
1903
1904#define MCF5282_QADC_QACR0_MUX                          (0x8000)
1905#define MCF5282_QADC_QACR0_TRG                          (0x1000)
1906#define MCF5282_QADC_QACR0_QPR(x)                       (((x)&0x007F))
1907
1908#define MCF5282_QADC_QACRx_CIE                          (0x8000)
1909#define MCF5282_QADC_QACRx_PIE                          (0x4000)
1910#define MCF5282_QADC_QACRx_SSE                          (0x2000)
1911#define MCF5282_QADC_QACRx_MQ(x)                        (((x)&0x001F)<<8)
1912#define MCF5282_QADC_QACRx_RESUME                       (0x0080)
1913#define MCF5282_QADC_QACRx_BQ(x)                        (((x)&0x007F))
1914
1915#define MCF5282_QADC_QASR0_CF1                          (0x8000)
1916#define MCF5282_QADC_QASR0_PF1                          (0x4000)
1917#define MCF5282_QADC_QASR0_CF2                          (0x2000)
1918#define MCF5282_QADC_QASR0_PF2                          (0x1000)
1919#define MCF5282_QADC_QASR0_TOR1                         (0x0800)
1920#define MCF5282_QADC_QASR0_TOR2                         (0x0400)
1921
1922#define MCF5282_QADC_CCW_P                                      (0x0200)
1923#define MCF5282_QADC_CCW_BYP                            (0x0100)
1924#define MCF5282_QADC_CCW_IST(x)                         (((x)&0x0003)<<14)
1925#define MCF5282_QADC_CCW_CHAN(x)                        (((x)&0x003F))
1926
1927/*********************************************************************
1928*
1929* General Purpose Timer (GPT) Module
1930*
1931*********************************************************************/
1932
1933/* Read/Write access macros for general use */
1934#define MCF5282_GPTA_GPTIOS             (*(vuint8  *)(&__IPSBAR[0x1A0000]))
1935#define MCF5282_GPTA_GPTCFORC   (*(vuint8  *)(&__IPSBAR[0x1A0001]))
1936#define MCF5282_GPTA_GPTOC3M    (*(vuint8  *)(&__IPSBAR[0x1A0002]))
1937#define MCF5282_GPTA_GPTOC3D    (*(vuint8  *)(&__IPSBAR[0x1A0003]))
1938#define MCF5282_GPTA_GPTCNT             (*(vuint16 *)(&__IPSBAR[0x1A0004]))
1939#define MCF5282_GPTA_GPTSCR1    (*(vuint8  *)(&__IPSBAR[0x1A0006]))
1940#define MCF5282_GPTA_GPTTOV             (*(vuint8  *)(&__IPSBAR[0x1A0008]))
1941#define MCF5282_GPTA_GPTCTL1    (*(vuint8  *)(&__IPSBAR[0x1A0009]))
1942#define MCF5282_GPTA_GPTCTL2    (*(vuint8  *)(&__IPSBAR[0x1A000B]))
1943#define MCF5282_GPTA_GPTIE              (*(vuint8  *)(&__IPSBAR[0x1A000C]))
1944#define MCF5282_GPTA_GPTSCR2    (*(vuint8  *)(&__IPSBAR[0x1A000D]))
1945#define MCF5282_GPTA_GPTFLG1    (*(vuint8  *)(&__IPSBAR[0x1A000E]))
1946#define MCF5282_GPTA_GPTFLG2    (*(vuint8  *)(&__IPSBAR[0x1A000F]))
1947#define MCF5282_GPTA_GPTC0              (*(vuint16 *)(&__IPSBAR[0x1A0010]))
1948#define MCF5282_GPTA_GPTC1              (*(vuint16 *)(&__IPSBAR[0x1A0012]))
1949#define MCF5282_GPTA_GPTC2              (*(vuint16 *)(&__IPSBAR[0x1A0014]))
1950#define MCF5282_GPTA_GPTC3              (*(vuint16 *)(&__IPSBAR[0x1A0016]))
1951#define MCF5282_GPTA_GPTPACTL   (*(vuint8  *)(&__IPSBAR[0x1A0018]))
1952#define MCF5282_GPTA_GPTPAFLG   (*(vuint8  *)(&__IPSBAR[0x1A0019]))
1953#define MCF5282_GPTA_GPTPACNT   (*(vuint16 *)(&__IPSBAR[0x1A001A]))
1954#define MCF5282_GPTA_GPTPORT    (*(vuint8  *)(&__IPSBAR[0x1A001D]))
1955#define MCF5282_GPTA_GPTDDR             (*(vuint8  *)(&__IPSBAR[0x1A001E]))
1956
1957#define MCF5282_GPTB_GPTIOS             (*(vuint8  *)(&__IPSBAR[0x1B0000]))
1958#define MCF5282_GPTB_GPTCFORC   (*(vuint8  *)(&__IPSBAR[0x1B0001]))
1959#define MCF5282_GPTB_GPTOC3M    (*(vuint8  *)(&__IPSBAR[0x1B0002]))
1960#define MCF5282_GPTB_GPTOC3D    (*(vuint8  *)(&__IPSBAR[0x1B0003]))
1961#define MCF5282_GPTB_GPTCNT             (*(vuint16 *)(&__IPSBAR[0x1B0004]))
1962#define MCF5282_GPTB_GPTSCR1    (*(vuint8  *)(&__IPSBAR[0x1B0006]))
1963#define MCF5282_GPTB_GPTTOV             (*(vuint8  *)(&__IPSBAR[0x1B0008]))
1964#define MCF5282_GPTB_GPTCTL1    (*(vuint8  *)(&__IPSBAR[0x1B0009]))
1965#define MCF5282_GPTB_GPTCTL2    (*(vuint8  *)(&__IPSBAR[0x1B000B]))
1966#define MCF5282_GPTB_GPTIE              (*(vuint8  *)(&__IPSBAR[0x1B000C]))
1967#define MCF5282_GPTB_GPTSCR2    (*(vuint8  *)(&__IPSBAR[0x1B000D]))
1968#define MCF5282_GPTB_GPTFLG1    (*(vuint8  *)(&__IPSBAR[0x1B000E]))
1969#define MCF5282_GPTB_GPTFLG2    (*(vuint8  *)(&__IPSBAR[0x1B000F]))
1970#define MCF5282_GPTB_GPTC0              (*(vuint16 *)(&__IPSBAR[0x1B0010]))
1971#define MCF5282_GPTB_GPTC1              (*(vuint16 *)(&__IPSBAR[0x1B0012]))
1972#define MCF5282_GPTB_GPTC2              (*(vuint16 *)(&__IPSBAR[0x1B0014]))
1973#define MCF5282_GPTB_GPTC3              (*(vuint16 *)(&__IPSBAR[0x1B0016]))
1974#define MCF5282_GPTB_GPTPACTL   (*(vuint8  *)(&__IPSBAR[0x1B0018]))
1975#define MCF5282_GPTB_GPTPAFLG   (*(vuint8  *)(&__IPSBAR[0x1B0019]))
1976#define MCF5282_GPTB_GPTPACNT   (*(vuint16 *)(&__IPSBAR[0x1B001A]))
1977#define MCF5282_GPTB_GPTPORT    (*(vuint8  *)(&__IPSBAR[0x1B001D]))
1978#define MCF5282_GPTB_GPTDDR             (*(vuint8  *)(&__IPSBAR[0x1B001E]))
1979
1980/* Bit level definitions and macros */
1981#define MCF5282_GPT_GPTIOS_IOS3                         (0x08)
1982#define MCF5282_GPT_GPTIOS_IOS2                         (0x04)
1983#define MCF5282_GPT_GPTIOS_IOS1                         (0x02)
1984#define MCF5282_GPT_GPTIOS_IOS0                         (0x01)
1985
1986#define MCF5282_GPT_GPTCFORC_FOC3                       (0x08)
1987#define MCF5282_GPT_GPTCFORC_FOC2                       (0x04)
1988#define MCF5282_GPT_GPTCFORC_FOC1                       (0x02)
1989#define MCF5282_GPT_GPTCFORC_FOC0                       (0x01)
1990
1991#define MCF5282_GPT_GPTOC3M_OC3M3                       (0x08)
1992#define MCF5282_GPT_GPTOC3M_OC3M2                       (0x04)
1993#define MCF5282_GPT_GPTOC3M_OC3M1                       (0x02)
1994#define MCF5282_GPT_GPTOC3M_OC3M0                       (0x01)
1995
1996#define MCF5282_GPT_GPTOC3M_OC3D(x)                     (((x)&0x04))
1997
1998#define MCF5282_GPT_GPTSCR1_GPTEN                       (0x80)
1999#define MCF5282_GPT_GPTSCR1_TFFCA                       (0x10)
2000
2001#define MCF5282_GPT_GPTTOV3                                     (0x08)
2002#define MCF5282_GPT_GPTTOV2                                     (0x04)
2003#define MCF5282_GPT_GPTTOV1                                     (0x02)
2004#define MCF5282_GPT_GPTTOV0                                     (0x01)
2005
2006#define MCF5282_GPT_GPTCTL_OMOL3(x)                     (((x)&0x03)<<6)
2007#define MCF5282_GPT_GPTCTL_OMOL2(x)                     (((x)&0x03)<<4)
2008#define MCF5282_GPT_GPTCTL_OMOL1(x)                     (((x)&0x03)<<2)
2009#define MCF5282_GPT_GPTCTL_OMOL0(x)                     (((x)&0x03))
2010
2011#define MCF5282_GPT_GPTCTL2_EDG3(x)                     (((x)&0x03)<<6)
2012#define MCF5282_GPT_GPTCTL2_EDG2(x)                     (((x)&0x03)<<4)
2013#define MCF5282_GPT_GPTCTL2_EDG1(x)                     (((x)&0x03)<<2)
2014#define MCF5282_GPT_GPTCTL2_EDG0(x)                     (((x)&0x03))
2015
2016#define MCF5282_GPT_GPTIE_C3I                           (0x08)
2017#define MCF5282_GPT_GPTIE_C2I                           (0x04)
2018#define MCF5282_GPT_GPTIE_C1I                           (0x02)
2019#define MCF5282_GPT_GPTIE_C0I                           (0x01)
2020
2021#define MCF5282_GPT_GPTSCR2_TOI                         (0x80)
2022#define MCF5282_GPT_GPTSCR2_PUPT                        (0x20)
2023#define MCF5282_GPT_GPTSCR2_RDPT                        (0x10)
2024#define MCF5282_GPT_GPTSCR2_TCRE                        (0x08)
2025#define MCF5282_GPT_GPTSCR2_PR(x)                       (((x)&0x07))
2026
2027#define MCF5282_GPT_GPTFLG1_C3F                         (0x08)
2028#define MCF5282_GPT_GPTFLG1_C2F                         (0x04)
2029#define MCF5282_GPT_GPTFLG1_C1F                         (0x02)
2030#define MCF5282_GPT_GPTFLG1_C0F                         (0x01)
2031
2032#define MCF5282_GPT_GPTFLG2_TOF                         (0x80)
2033#define MCF5282_GPT_GPTFLG2_C3F                         (0x08)
2034#define MCF5282_GPT_GPTFLG2_C2F                         (0x04)
2035#define MCF5282_GPT_GPTFLG2_C1F                         (0x02)
2036#define MCF5282_GPT_GPTFLG2_C0F                         (0x01)
2037
2038#define MCF5282_GPT_GPTPACTL_PAE                        (0x40)
2039#define MCF5282_GPT_GPTPACTL_PAMOD                      (0x20)
2040#define MCF5282_GPT_GPTPACTL_PEDGE                      (0x10)
2041#define MCF5282_GPT_GPTPACTL_CLK_PACLK          (0x04)
2042#define MCF5282_GPT_GPTPACTL_CLK_PACLK256       (0x08)
2043#define MCF5282_GPT_GPTPACTL_CLK_PACLK65536     (0x0C)
2044#define MCF5282_GPT_GPTPACTL_CLK(x)                     (((x)&0x03)<<2)
2045#define MCF5282_GPT_GPTPACTL_PAOVI                      (0x02)
2046#define MCF5282_GPT_GPTPACTL_PAI                        (0x01)
2047
2048#define MCF5282_GPT_GPTPAFLG_PAOVF                      (0x02)
2049#define MCF5282_GPT_GPTPAFLG_PAIF                       (0x01)
2050
2051#define MCF5282_GPT_GPTPORT_PORTT3                      (0x08)
2052#define MCF5282_GPT_GPTPORT_PORTT2                      (0x04)
2053#define MCF5282_GPT_GPTPORT_PORTT1                      (0x02)
2054#define MCF5282_GPT_GPTPORT_PORTT0                      (0x01)
2055
2056#define MCF5282_GPT_GPTDDR_DDRT3                        (0x08)
2057#define MCF5282_GPT_GPTDDR_DDRT2                        (0x04)
2058#define MCF5282_GPT_GPTDDR_DDRT1                        (0x02)
2059#define MCF5282_GPT_GPTDDR_DDRT0                        (0x01)
2060
2061/*********************************************************************
2062*
2063* FlexCAN Module
2064*
2065*********************************************************************/
2066
2067/* Read/Write access macros for general use */
2068#define MCF5282_FLEXCAN_CANMCR          (*(vuint16 *)(&__IPSBAR[0x1C0000]))
2069#define MCF5282_FLEXCAN_CANCTRL0        (*(vuint8  *)(&__IPSBAR[0x1C0006]))
2070#define MCF5282_FLEXCAN_CANCTRL1        (*(vuint8  *)(&__IPSBAR[0x1C0007]))
2071#define MCF5282_FLEXCAN_PRESDIV         (*(vuint8  *)(&__IPSBAR[0x1C0008]))
2072#define MCF5282_FLEXCAN_CANCTRL2        (*(vuint8  *)(&__IPSBAR[0x1C0009]))
2073#define MCF5282_FLEXCAN_TIMER           (*(vuint16 *)(&__IPSBAR[0x1C000A]))
2074#define MCF5282_FLEXCAN_RXGMASK         (*(vuint32 *)(&__IPSBAR[0x1C0010]))
2075#define MCF5282_FLEXCAN_RX14MASK        (*(vuint32 *)(&__IPSBAR[0x1C0014]))
2076#define MCF5282_FLEXCAN_RX15MASK        (*(vuint32 *)(&__IPSBAR[0x1C0018]))
2077#define MCF5282_FLEXCAN_ESTAT           (*(vuint16 *)(&__IPSBAR[0x1C0020]))
2078#define MCF5282_FLEXCAN_IMASK           (*(vuint16 *)(&__IPSBAR[0x1C0022]))
2079#define MCF5282_FLEXCAN_IFLAG           (*(vuint16 *)(&__IPSBAR[0x1C0024]))
2080#define MCF5282_FLEXCAN_RXECTR          (*(vuint8  *)(&__IPSBAR[0x1C0026]))
2081#define MCF5282_FLEXCAN_TXECTR          (*(vuint8  *)(&__IPSBAR[0x1C0027]))
2082#define MCF5282_FLEXCAN_MBUF0_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C0081]))
2083#define MCF5282_FLEXCAN_MBUF0_IDH       (*(vuint16 *)(&__IPSBAR[0x1C0082]))
2084#define MCF5282_FLEXCAN_MBUF0_IDL       (*(vuint16 *)(&__IPSBAR[0x1C0084]))
2085#define MCF5282_FLEXCAN_MBUF0_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C0086]))
2086#define MCF5282_FLEXCAN_MBUF0_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C0087]))
2087#define MCF5282_FLEXCAN_MBUF0_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C0088]))
2088#define MCF5282_FLEXCAN_MBUF0_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C0089]))
2089#define MCF5282_FLEXCAN_MBUF0_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C008A]))
2090#define MCF5282_FLEXCAN_MBUF0_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C008B]))
2091#define MCF5282_FLEXCAN_MBUF0_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C008C]))
2092#define MCF5282_FLEXCAN_MBUF0_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C008D]))
2093#define MCF5282_FLEXCAN_MBUF1_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C0091]))
2094#define MCF5282_FLEXCAN_MBUF1_IDH       (*(vuint16 *)(&__IPSBAR[0x1C0092]))
2095#define MCF5282_FLEXCAN_MBUF1_IDL       (*(vuint16 *)(&__IPSBAR[0x1C0094]))
2096#define MCF5282_FLEXCAN_MBUF1_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C0096]))
2097#define MCF5282_FLEXCAN_MBUF1_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C0097]))
2098#define MCF5282_FLEXCAN_MBUF1_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C0098]))
2099#define MCF5282_FLEXCAN_MBUF1_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C0099]))
2100#define MCF5282_FLEXCAN_MBUF1_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C009A]))
2101#define MCF5282_FLEXCAN_MBUF1_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C009B]))
2102#define MCF5282_FLEXCAN_MBUF1_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C009C]))
2103#define MCF5282_FLEXCAN_MBUF1_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C009D]))
2104#define MCF5282_FLEXCAN_MBUF2_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C00A1]))
2105#define MCF5282_FLEXCAN_MBUF2_IDH       (*(vuint16 *)(&__IPSBAR[0x1C00A2]))
2106#define MCF5282_FLEXCAN_MBUF2_IDL       (*(vuint16 *)(&__IPSBAR[0x1C00A4]))
2107#define MCF5282_FLEXCAN_MBUF2_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C00A6]))
2108#define MCF5282_FLEXCAN_MBUF2_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C00A7]))
2109#define MCF5282_FLEXCAN_MBUF2_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C00A8]))
2110#define MCF5282_FLEXCAN_MBUF2_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C00A9]))
2111#define MCF5282_FLEXCAN_MBUF2_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C00AA]))
2112#define MCF5282_FLEXCAN_MBUF2_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C00AB]))
2113#define MCF5282_FLEXCAN_MBUF2_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C00AC]))
2114#define MCF5282_FLEXCAN_MBUF2_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C00AD]))
2115#define MCF5282_FLEXCAN_MBUF3_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C00B1]))
2116#define MCF5282_FLEXCAN_MBUF3_IDH       (*(vuint16 *)(&__IPSBAR[0x1C00B2]))
2117#define MCF5282_FLEXCAN_MBUF3_IDL       (*(vuint16 *)(&__IPSBAR[0x1C00B4]))
2118#define MCF5282_FLEXCAN_MBUF3_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C00B6]))
2119#define MCF5282_FLEXCAN_MBUF3_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C00B7]))
2120#define MCF5282_FLEXCAN_MBUF3_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C00B8]))
2121#define MCF5282_FLEXCAN_MBUF3_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C00B9]))
2122#define MCF5282_FLEXCAN_MBUF3_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C00BA]))
2123#define MCF5282_FLEXCAN_MBUF3_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C00BB]))
2124#define MCF5282_FLEXCAN_MBUF3_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C00BC]))
2125#define MCF5282_FLEXCAN_MBUF3_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C00BD]))
2126#define MCF5282_FLEXCAN_MBUF4_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C00C1]))
2127#define MCF5282_FLEXCAN_MBUF4_IDH       (*(vuint16 *)(&__IPSBAR[0x1C00C2]))
2128#define MCF5282_FLEXCAN_MBUF4_IDL       (*(vuint16 *)(&__IPSBAR[0x1C00C4]))
2129#define MCF5282_FLEXCAN_MBUF4_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C00C6]))
2130#define MCF5282_FLEXCAN_MBUF4_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C00C7]))
2131#define MCF5282_FLEXCAN_MBUF4_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C00C8]))
2132#define MCF5282_FLEXCAN_MBUF4_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C00C9]))
2133#define MCF5282_FLEXCAN_MBUF4_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C00CA]))
2134#define MCF5282_FLEXCAN_MBUF4_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C00CB]))
2135#define MCF5282_FLEXCAN_MBUF4_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C00CC]))
2136#define MCF5282_FLEXCAN_MBUF4_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C00CD]))
2137#define MCF5282_FLEXCAN_MBUF5_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C00D1]))
2138#define MCF5282_FLEXCAN_MBUF5_IDH       (*(vuint16 *)(&__IPSBAR[0x1C00D2]))
2139#define MCF5282_FLEXCAN_MBUF5_IDL       (*(vuint16 *)(&__IPSBAR[0x1C00D4]))
2140#define MCF5282_FLEXCAN_MBUF5_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C00D6]))
2141#define MCF5282_FLEXCAN_MBUF5_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C00D7]))
2142#define MCF5282_FLEXCAN_MBUF5_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C00D8]))
2143#define MCF5282_FLEXCAN_MBUF5_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C00D9]))
2144#define MCF5282_FLEXCAN_MBUF5_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C00DA]))
2145#define MCF5282_FLEXCAN_MBUF5_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C00DB]))
2146#define MCF5282_FLEXCAN_MBUF5_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C00DC]))
2147#define MCF5282_FLEXCAN_MBUF5_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C00DD]))
2148#define MCF5282_FLEXCAN_MBUF6_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C00E1]))
2149#define MCF5282_FLEXCAN_MBUF6_IDH       (*(vuint16 *)(&__IPSBAR[0x1C00E2]))
2150#define MCF5282_FLEXCAN_MBUF6_IDL       (*(vuint16 *)(&__IPSBAR[0x1C00E4]))
2151#define MCF5282_FLEXCAN_MBUF6_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C00E6]))
2152#define MCF5282_FLEXCAN_MBUF6_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C00E7]))
2153#define MCF5282_FLEXCAN_MBUF6_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C00E8]))
2154#define MCF5282_FLEXCAN_MBUF6_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C00E9]))
2155#define MCF5282_FLEXCAN_MBUF6_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C00EA]))
2156#define MCF5282_FLEXCAN_MBUF6_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C00EB]))
2157#define MCF5282_FLEXCAN_MBUF6_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C00EC]))
2158#define MCF5282_FLEXCAN_MBUF6_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C00ED]))
2159#define MCF5282_FLEXCAN_MBUF7_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C00F1]))
2160#define MCF5282_FLEXCAN_MBUF7_IDH       (*(vuint16 *)(&__IPSBAR[0x1C00F2]))
2161#define MCF5282_FLEXCAN_MBUF7_IDL       (*(vuint16 *)(&__IPSBAR[0x1C00F4]))
2162#define MCF5282_FLEXCAN_MBUF7_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C00F6]))
2163#define MCF5282_FLEXCAN_MBUF7_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C00F7]))
2164#define MCF5282_FLEXCAN_MBUF7_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C00F8]))
2165#define MCF5282_FLEXCAN_MBUF7_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C00F9]))
2166#define MCF5282_FLEXCAN_MBUF7_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C00FA]))
2167#define MCF5282_FLEXCAN_MBUF7_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C00FB]))
2168#define MCF5282_FLEXCAN_MBUF7_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C00FC]))
2169#define MCF5282_FLEXCAN_MBUF7_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C00FD]))
2170#define MCF5282_FLEXCAN_MBUF8_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C0101]))
2171#define MCF5282_FLEXCAN_MBUF8_IDH       (*(vuint16 *)(&__IPSBAR[0x1C0102]))
2172#define MCF5282_FLEXCAN_MBUF8_IDL       (*(vuint16 *)(&__IPSBAR[0x1C0104]))
2173#define MCF5282_FLEXCAN_MBUF8_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C0106]))
2174#define MCF5282_FLEXCAN_MBUF8_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C0107]))
2175#define MCF5282_FLEXCAN_MBUF8_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C0108]))
2176#define MCF5282_FLEXCAN_MBUF8_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C0109]))
2177#define MCF5282_FLEXCAN_MBUF8_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C010A]))
2178#define MCF5282_FLEXCAN_MBUF8_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C010B]))
2179#define MCF5282_FLEXCAN_MBUF8_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C010C]))
2180#define MCF5282_FLEXCAN_MBUF8_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C010D]))
2181#define MCF5282_FLEXCAN_MBUF9_CTRL      (*(vuint8 *)(&__IPSBAR[0x1C0111]))
2182#define MCF5282_FLEXCAN_MBUF9_IDH       (*(vuint16 *)(&__IPSBAR[0x1C0112]))
2183#define MCF5282_FLEXCAN_MBUF9_IDL       (*(vuint16 *)(&__IPSBAR[0x1C0114]))
2184#define MCF5282_FLEXCAN_MBUF9_BYTE0     (*(vuint8  *)(&__IPSBAR[0x1C0116]))
2185#define MCF5282_FLEXCAN_MBUF9_BYTE1     (*(vuint8  *)(&__IPSBAR[0x1C0117]))
2186#define MCF5282_FLEXCAN_MBUF9_BYTE2     (*(vuint8  *)(&__IPSBAR[0x1C0118]))
2187#define MCF5282_FLEXCAN_MBUF9_BYTE3     (*(vuint8  *)(&__IPSBAR[0x1C0119]))
2188#define MCF5282_FLEXCAN_MBUF9_BYTE4     (*(vuint8  *)(&__IPSBAR[0x1C011A]))
2189#define MCF5282_FLEXCAN_MBUF9_BYTE5     (*(vuint8  *)(&__IPSBAR[0x1C011B]))
2190#define MCF5282_FLEXCAN_MBUF9_BYTE6     (*(vuint8  *)(&__IPSBAR[0x1C011C]))
2191#define MCF5282_FLEXCAN_MBUF9_BYTE7     (*(vuint8  *)(&__IPSBAR[0x1C011D]))
2192#define MCF5282_FLEXCAN_MBUF10_CTRL             (*(vuint8 *)(&__IPSBAR[0x1C0121]))
2193#define MCF5282_FLEXCAN_MBUF10_IDH              (*(vuint16 *)(&__IPSBAR[0x1C0122]))
2194#define MCF5282_FLEXCAN_MBUF10_IDL              (*(vuint16 *)(&__IPSBAR[0x1C0124]))
2195#define MCF5282_FLEXCAN_MBUF10_BYTE0    (*(vuint8  *)(&__IPSBAR[0x1C0126]))
2196#define MCF5282_FLEXCAN_MBUF10_BYTE1    (*(vuint8  *)(&__IPSBAR[0x1C0127]))
2197#define MCF5282_FLEXCAN_MBUF10_BYTE2    (*(vuint8  *)(&__IPSBAR[0x1C0128]))
2198#define MCF5282_FLEXCAN_MBUF10_BYTE3    (*(vuint8  *)(&__IPSBAR[0x1C0129]))
2199#define MCF5282_FLEXCAN_MBUF10_BYTE4    (*(vuint8  *)(&__IPSBAR[0x1C012A]))
2200#define MCF5282_FLEXCAN_MBUF10_BYTE5    (*(vuint8  *)(&__IPSBAR[0x1C012B]))
2201#define MCF5282_FLEXCAN_MBUF10_BYTE6    (*(vuint8  *)(&__IPSBAR[0x1C012C]))
2202#define MCF5282_FLEXCAN_MBUF10_BYTE7    (*(vuint8  *)(&__IPSBAR[0x1C012D]))
2203#define MCF5282_FLEXCAN_MBUF11_CTRL             (*(vuint8 *)(&__IPSBAR[0x1C0131]))
2204#define MCF5282_FLEXCAN_MBUF11_IDH              (*(vuint16 *)(&__IPSBAR[0x1C0132]))
2205#define MCF5282_FLEXCAN_MBUF11_IDL              (*(vuint16 *)(&__IPSBAR[0x1C0134]))
2206#define MCF5282_FLEXCAN_MBUF11_BYTE0    (*(vuint8  *)(&__IPSBAR[0x1C0136]))
2207#define MCF5282_FLEXCAN_MBUF11_BYTE1    (*(vuint8  *)(&__IPSBAR[0x1C0137]))
2208#define MCF5282_FLEXCAN_MBUF11_BYTE2    (*(vuint8  *)(&__IPSBAR[0x1C0138]))
2209#define MCF5282_FLEXCAN_MBUF11_BYTE3    (*(vuint8  *)(&__IPSBAR[0x1C0139]))
2210#define MCF5282_FLEXCAN_MBUF11_BYTE4    (*(vuint8  *)(&__IPSBAR[0x1C013A]))
2211#define MCF5282_FLEXCAN_MBUF11_BYTE5    (*(vuint8  *)(&__IPSBAR[0x1C013B]))
2212#define MCF5282_FLEXCAN_MBUF11_BYTE6    (*(vuint8  *)(&__IPSBAR[0x1C013C]))
2213#define MCF5282_FLEXCAN_MBUF11_BYTE7    (*(vuint8  *)(&__IPSBAR[0x1C013D]))
2214#define MCF5282_FLEXCAN_MBUF12_CTRL             (*(vuint8 *)(&__IPSBAR[0x1C0141]))
2215#define MCF5282_FLEXCAN_MBUF12_IDH              (*(vuint16 *)(&__IPSBAR[0x1C0142]))
2216#define MCF5282_FLEXCAN_MBUF12_IDL              (*(vuint16 *)(&__IPSBAR[0x1C0144]))
2217#define MCF5282_FLEXCAN_MBUF12_BYTE0    (*(vuint8  *)(&__IPSBAR[0x1C0146]))
2218#define MCF5282_FLEXCAN_MBUF12_BYTE1    (*(vuint8  *)(&__IPSBAR[0x1C0147]))
2219#define MCF5282_FLEXCAN_MBUF12_BYTE2    (*(vuint8  *)(&__IPSBAR[0x1C0148]))
2220#define MCF5282_FLEXCAN_MBUF12_BYTE3    (*(vuint8  *)(&__IPSBAR[0x1C0149]))
2221#define MCF5282_FLEXCAN_MBUF12_BYTE4    (*(vuint8  *)(&__IPSBAR[0x1C014A]))
2222#define MCF5282_FLEXCAN_MBUF12_BYTE5    (*(vuint8  *)(&__IPSBAR[0x1C014B]))
2223#define MCF5282_FLEXCAN_MBUF12_BYTE6    (*(vuint8  *)(&__IPSBAR[0x1C014C]))
2224#define MCF5282_FLEXCAN_MBUF12_BYTE7    (*(vuint8  *)(&__IPSBAR[0x1C014D]))
2225#define MCF5282_FLEXCAN_MBUF13_CTRL             (*(vuint8 *)(&__IPSBAR[0x1C0151]))
2226#define MCF5282_FLEXCAN_MBUF13_IDH              (*(vuint16 *)(&__IPSBAR[0x1C0152]))
2227#define MCF5282_FLEXCAN_MBUF13_IDL              (*(vuint16 *)(&__IPSBAR[0x1C0154]))
2228#define MCF5282_FLEXCAN_MBUF13_BYTE0    (*(vuint8  *)(&__IPSBAR[0x1C0156]))
2229#define MCF5282_FLEXCAN_MBUF13_BYTE1    (*(vuint8  *)(&__IPSBAR[0x1C0157]))
2230#define MCF5282_FLEXCAN_MBUF13_BYTE2    (*(vuint8  *)(&__IPSBAR[0x1C0158]))
2231#define MCF5282_FLEXCAN_MBUF13_BYTE3    (*(vuint8  *)(&__IPSBAR[0x1C0159]))
2232#define MCF5282_FLEXCAN_MBUF13_BYTE4    (*(vuint8  *)(&__IPSBAR[0x1C015A]))
2233#define MCF5282_FLEXCAN_MBUF13_BYTE5    (*(vuint8  *)(&__IPSBAR[0x1C015B]))
2234#define MCF5282_FLEXCAN_MBUF13_BYTE6    (*(vuint8  *)(&__IPSBAR[0x1C015C]))
2235#define MCF5282_FLEXCAN_MBUF13_BYTE7    (*(vuint8  *)(&__IPSBAR[0x1C015D]))
2236#define MCF5282_FLEXCAN_MBUF14_CTRL             (*(vuint8 *)(&__IPSBAR[0x1C0161]))
2237#define MCF5282_FLEXCAN_MBUF14_IDH              (*(vuint16 *)(&__IPSBAR[0x1C0162]))
2238#define MCF5282_FLEXCAN_MBUF14_IDL              (*(vuint16 *)(&__IPSBAR[0x1C0164]))
2239#define MCF5282_FLEXCAN_MBUF14_BYTE0    (*(vuint8  *)(&__IPSBAR[0x1C0166]))
2240#define MCF5282_FLEXCAN_MBUF14_BYTE1    (*(vuint8  *)(&__IPSBAR[0x1C0167]))
2241#define MCF5282_FLEXCAN_MBUF14_BYTE2    (*(vuint8  *)(&__IPSBAR[0x1C0168]))
2242#define MCF5282_FLEXCAN_MBUF14_BYTE3    (*(vuint8  *)(&__IPSBAR[0x1C0169]))
2243#define MCF5282_FLEXCAN_MBUF14_BYTE4    (*(vuint8  *)(&__IPSBAR[0x1C016A]))
2244#define MCF5282_FLEXCAN_MBUF14_BYTE5    (*(vuint8  *)(&__IPSBAR[0x1C016B]))
2245#define MCF5282_FLEXCAN_MBUF14_BYTE6    (*(vuint8  *)(&__IPSBAR[0x1C016C]))
2246#define MCF5282_FLEXCAN_MBUF14_BYTE7    (*(vuint8  *)(&__IPSBAR[0x1C016D]))
2247#define MCF5282_FLEXCAN_MBUF15_CTRL             (*(vuint8 *)(&__IPSBAR[0x1C0171]))
2248#define MCF5282_FLEXCAN_MBUF15_IDH              (*(vuint16 *)(&__IPSBAR[0x1C0172]))
2249#define MCF5282_FLEXCAN_MBUF15_IDL              (*(vuint16 *)(&__IPSBAR[0x1C0174]))
2250#define MCF5282_FLEXCAN_MBUF15_BYTE0    (*(vuint8  *)(&__IPSBAR[0x1C0176]))
2251#define MCF5282_FLEXCAN_MBUF15_BYTE1    (*(vuint8  *)(&__IPSBAR[0x1C0177]))
2252#define MCF5282_FLEXCAN_MBUF15_BYTE2    (*(vuint8  *)(&__IPSBAR[0x1C0178]))
2253#define MCF5282_FLEXCAN_MBUF15_BYTE3    (*(vuint8  *)(&__IPSBAR[0x1C0179]))
2254#define MCF5282_FLEXCAN_MBUF15_BYTE4    (*(vuint8  *)(&__IPSBAR[0x1C017A]))
2255#define MCF5282_FLEXCAN_MBUF15_BYTE5    (*(vuint8  *)(&__IPSBAR[0x1C017B]))
2256#define MCF5282_FLEXCAN_MBUF15_BYTE6    (*(vuint8  *)(&__IPSBAR[0x1C017C]))
2257#define MCF5282_FLEXCAN_MBUF15_BYTE7    (*(vuint8  *)(&__IPSBAR[0x1C017D]))
2258
2259#define MCF5282_FLEXCAN_MBUF0_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C0086+(x))]))
2260#define MCF5282_FLEXCAN_MBUF1_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C0096+(x))]))
2261#define MCF5282_FLEXCAN_MBUF2_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C00A6+(x))]))
2262#define MCF5282_FLEXCAN_MBUF3_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C00B6+(x))]))
2263#define MCF5282_FLEXCAN_MBUF4_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C00C6+(x))]))
2264#define MCF5282_FLEXCAN_MBUF5_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C00D6+(x))]))
2265#define MCF5282_FLEXCAN_MBUF6_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C00E6+(x))]))
2266#define MCF5282_FLEXCAN_MBUF7_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C00F6+(x))]))
2267#define MCF5282_FLEXCAN_MBUF8_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C0106+(x))]))
2268#define MCF5282_FLEXCAN_MBUF9_BYTE(x)   (*(vuint8  *)(&__IPSBAR[(0x1C0116+(x))]))
2269#define MCF5282_FLEXCAN_MBUF10_BYTE(x)  (*(vuint8  *)(&__IPSBAR[(0x1C0126+(x))]))
2270#define MCF5282_FLEXCAN_MBUF11_BYTE(x)  (*(vuint8  *)(&__IPSBAR[(0x1C0136+(x))]))
2271#define MCF5282_FLEXCAN_MBUF12_BYTE(x)  (*(vuint8  *)(&__IPSBAR[(0x1C0146+(x))]))
2272#define MCF5282_FLEXCAN_MBUF13_BYTE(x)  (*(vuint8  *)(&__IPSBAR[(0x1C0156+(x))]))
2273#define MCF5282_FLEXCAN_MBUF14_BYTE(x)  (*(vuint8  *)(&__IPSBAR[(0x1C0166+(x))]))
2274#define MCF5282_FLEXCAN_MBUF15_BYTE(x)  (*(vuint8  *)(&__IPSBAR[(0x1C0176+(x))]))
2275
2276#define MCF5282_FLEXCAN_MBUF_BYTE(x,y)  (*(vuint8  *)(&__IPSBAR[((0x1C0086+(0x10*(x))+(y))]))
2277
2278/* Bit level definitions and macros */
2279#define MCF5282_FLEXCAN_CANMCR_STOP                     (0x8000)
2280#define MCF5282_FLEXCAN_CANMCR_FRZ                      (0x4000)
2281#define MCF5282_FLEXCAN_CANMCR_HALT                     (0x1000)
2282#define MCF5282_FLEXCAN_CANMCR_NOTRDY           (0x0800)
2283#define MCF5282_FLEXCAN_CANMCR_WAKEMSK          (0x0400)
2284#define MCF5282_FLEXCAN_CANMCR_SOFTRST          (0x0200)
2285#define MCF5282_FLEXCAN_CANMCR_FRZACK           (0x0100)
2286#define MCF5282_FLEXCAN_CANMCR_SUPV                     (0x0080)
2287#define MCF5282_FLEXCAN_CANMCR_SELFWAKE         (0x0040)
2288#define MCF5282_FLEXCAN_CANMCR_APS                      (0x0020)
2289
2290#define MCF5282_FLEXCAN_CANCTRL0_BOFFMSK        (0x80)
2291#define MCF5282_FLEXCAN_CANCTRL0_ERRMSK         (0x40)
2292#define MCF5282_FLEXCAN_CANCTRL0_RXMODE         (0x04)
2293#define MCF5282_FLEXCAN_CANCTRL0_TXMODE_CMOSPOS         (0x00)
2294#define MCF5282_FLEXCAN_CANCTRL0_TXMODE_CMOSNEG         (0x01)
2295#define MCF5282_FLEXCAN_CANCTRL0_TXMODE_OPENDRAIN       (0x02)
2296
2297#define MCF5282_FLEXCAN_CANCTRL1_SAMP           (0x80)
2298#define MCF5282_FLEXCAN_CANCTRL1_TSYNC          (0x20)
2299#define MCF5282_FLEXCAN_CANCTRL1_LBUF           (0x10)
2300#define MCF5282_FLEXCAN_CANCTRL1_LOM            (0x08)
2301#define MCF5282_FLEXCAN_CANCTRL1_PROPSEG(x)     (((x)&0x07))
2302
2303#define MCF5282_FLEXCAN_CANCTRL2_RJW(x)         (((x)&0x03)<<6)
2304#define MCF5282_FLEXCAN_CANCTRL2_PSEG1(x)       (((x)&0x07)<<3)
2305#define MCF5282_FLEXCAN_CANCTRL2_PSEG2(x)       (((x)&0x07)<<0)
2306
2307#define MCF5282_FLEXCAN_ESTAT_BITERR(x)         (((x)&0x03)<<14)
2308#define MCF5282_FLEXCAN_ESTAT_ACKERR            (0x2000)
2309#define MCF5282_FLEXCAN_ESTAT_CRCERR            (0x1000)
2310#define MCF5282_FLEXCAN_ESTAT_FORMERR           (0x0800)
2311#define MCF5282_FLEXCAN_ESTAT_STUFFERR          (0x0400)
2312#define MCF5282_FLEXCAN_ESTAT_TXWARN            (0x0200)
2313#define MCF5282_FLEXCAN_ESTAT_RXWARN            (0x0100)
2314#define MCF5282_FLEXCAN_ESTAT_IDLE              (0x0080)
2315#define MCF5282_FLEXCAN_ESTAT_TXRX              (0x0040)
2316#define MCF5282_FLEXCAN_ESTAT_FCS(x)            (((x)&0x03)<<4)
2317#define MCF5282_FLEXCAN_ESTAT_BOFFINT           (0x0004)
2318#define MCF5282_FLEXCAN_ESTAT_ERRINT            (0x0002)
2319#define MCF5282_FLEXCAN_ESTAT_WAKEINT           (0x0001)
2320
2321#define MCF5282_FLEXCAN_IMASK_BUF15M            (0x8000)
2322#define MCF5282_FLEXCAN_IMASK_BUF14M            (0x4000)
2323#define MCF5282_FLEXCAN_IMASK_BUF13M            (0x2000)
2324#define MCF5282_FLEXCAN_IMASK_BUF12M            (0x1000)
2325#define MCF5282_FLEXCAN_IMASK_BUF11M            (0x0800)
2326#define MCF5282_FLEXCAN_IMASK_BUF10M            (0x0400)
2327#define MCF5282_FLEXCAN_IMASK_BUF9M             (0x0200)
2328#define MCF5282_FLEXCAN_IMASK_BUF8M             (0x0100)
2329#define MCF5282_FLEXCAN_IMASK_BUF7M             (0x0080)
2330#define MCF5282_FLEXCAN_IMASK_BUF6M             (0x0040)
2331#define MCF5282_FLEXCAN_IMASK_BUF5M             (0x0020)
2332#define MCF5282_FLEXCAN_IMASK_BUF4M             (0x0010)
2333#define MCF5282_FLEXCAN_IMASK_BUF3M             (0x0008)
2334#define MCF5282_FLEXCAN_IMASK_BUF2M             (0x0004)
2335#define MCF5282_FLEXCAN_IMASK_BUF1M             (0x0002)
2336#define MCF5282_FLEXCAN_IMASK_BUF0M             (0x0001)
2337
2338#define MCF5282_FLEXCAN_IFLAG_BUF15I            (0x8000)
2339#define MCF5282_FLEXCAN_IFLAG_BUF14I            (0x4000)
2340#define MCF5282_FLEXCAN_IFLAG_BUF13I            (0x2000)
2341#define MCF5282_FLEXCAN_IFLAG_BUF12I            (0x1000)
2342#define MCF5282_FLEXCAN_IFLAG_BUF11I            (0x0800)
2343#define MCF5282_FLEXCAN_IFLAG_BUF10I            (0x0400)
2344#define MCF5282_FLEXCAN_IFLAG_BUF9I             (0x0200)
2345#define MCF5282_FLEXCAN_IFLAG_BUF8I             (0x0100)
2346#define MCF5282_FLEXCAN_IFLAG_BUF7I             (0x0080)
2347#define MCF5282_FLEXCAN_IFLAG_BUF6I             (0x0040)
2348#define MCF5282_FLEXCAN_IFLAG_BUF5I             (0x0020)
2349#define MCF5282_FLEXCAN_IFLAG_BUF4I             (0x0010)
2350#define MCF5282_FLEXCAN_IFLAG_BUF3I             (0x0008)
2351#define MCF5282_FLEXCAN_IFLAG_BUF2I             (0x0004)
2352#define MCF5282_FLEXCAN_IFLAG_BUF1I             (0x0002)
2353#define MCF5282_FLEXCAN_IFLAG_BUF0I             (0x0001)
2354
2355/*********************************************************************
2356*
2357* ColdFire Flash Module (CFM)
2358*
2359*********************************************************************/
2360
2361/* Read/Write access macros for general use */
2362#define MCF5282_CFM_CFMMCR              (*(vuint16 *)(&__IPSBAR[0x1D0000]))
2363#define MCF5282_CFM_CFMCLKD             (*(vuint8  *)(&__IPSBAR[0x1D0002]))
2364#define MCF5282_CFM_CFMSEC              (*(vuint32 *)(&__IPSBAR[0x1D0008]))
2365#define MCF5282_CFM_CFMPROT             (*(vuint32 *)(&__IPSBAR[0x1D0010]))
2366#define MCF5282_CFM_CFMSACC             (*(vuint32 *)(&__IPSBAR[0x1D0014]))
2367#define MCF5282_CFM_CFMDACC             (*(vuint32 *)(&__IPSBAR[0x1D0018]))
2368#define MCF5282_CFM_CFMUSTAT    (*(vuint8  *)(&__IPSBAR[0x1D0020]))
2369#define MCF5282_CFM_CFMCMD              (*(vuint8  *)(&__IPSBAR[0x1D0024]))
2370#define MCF5282_CFM_CFMDISU             (*(vuint16 *)(&__IPSBAR[0x1D0042]))
2371
2372/* Bit level definitions and macros */
2373#define MCF5282_CFM_FLASHBAR_BA(a)                      ((a)&0xFFF8000)
2374#define MCF5282_CFM_FLASHBAR_WP                         (0x00000100)
2375#define MCF5282_CFM_FLASHBAR_CI                         (0x00000020)
2376#define MCF5282_CFM_FLASHBAR_SC                         (0x00000010)
2377#define MCF5282_CFM_FLASHBAR_SD                         (0x00000008)
2378#define MCF5282_CFM_FLASHBAR_UC                         (0x00000004)
2379#define MCF5282_CFM_FLASHBAR_UD                         (0x00000002)
2380#define MCF5282_CFM_FLASHBAR_V                          (0x00000001)
2381
2382#define MCF5282_CFM_CFMMCR_LOCK                         (0x0400)
2383#define MCF5282_CFM_CFMMCR_PVIE                         (0x0200)
2384#define MCF5282_CFM_CFMMCR_AEIE                         (0x0100)
2385#define MCF5282_CFM_CFMMCR_CBEIE                        (0x0080)
2386#define MCF5282_CFM_CFMMCR_CCIE                         (0x0040)
2387#define MCF5282_CFM_CFMMCR_KEYACC                       (0x0020)
2388
2389#define MCF5282_CFM_CFMCLKD_DIVLD                       (0x80)
2390#define MCF5282_CFM_CFMCLKD_PRDIV8                      (0x40)
2391#define MCF5282_CFM_CFMCLKD_DIV(x)                      (((x)&0x3F))
2392
2393#define MCF5282_CFM_CFMSEC_KEYEN                        (0x80000000)
2394#define MCF5282_CFM_CFMSEC_SECSTAT                      (0x40000000)
2395#define MCF5282_CFM_CFMSEC_SEC(x)                       (((x)&0xFFFF))
2396
2397#define MCF5282_CFM_CFMUSTAT_CBEIF                      (0x80)
2398#define MCF5282_CFM_CFMUSTAT_CCIF                       (0x40)
2399#define MCF5282_CFM_CFMUSTAT_PVIOL                      (0x20)
2400#define MCF5282_CFM_CFMUSTAT_ACCERR                     (0x10)
2401#define MCF5282_CFM_CFMUSTAT_BLANK                      (0x04)
2402
2403#define MCF5282_CFM_CFMCMD_CMD(x)                       (((x)&0x7F))
2404
2405/********************************************************************/
2406
2407#endif  /* _CPU_MCF5282_H */
Note: See TracBrowser for help on using the repository browser.