RTEMS
6.3
Toggle main menu visibility
Loading...
Searching...
No Matches
bsps
m68k
include
mcf5282
mcf5282.h
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
36
typedef
unsigned
char
uint8;
/* 8 bits */
37
typedef
unsigned
short
int
uint16
__attribute__
((__may_alias__));
/* 16 bits */
38
typedef
unsigned
long
int
uint32
__attribute__
((__may_alias__));
/* 32 bits */
39
40
typedef
signed
char
int8;
/* 8 bits */
41
typedef
signed
short
int
int16
__attribute__
((__may_alias__));
/* 16 bits */
42
typedef
signed
long
int
int32
__attribute__
((__may_alias__));
/* 32 bits */
43
44
typedef
volatile
uint8
vuint8
__attribute__
((__may_alias__));
/* 8 bits */
45
typedef
volatile
uint16 vuint16
__attribute__
((__may_alias__));
/* 16 bits */
46
typedef
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
*/
80
void
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
169
int
asm_set_ipl (uint32);
170
void
mcf5xxx_wr_cacr (uint32);
171
void
mcf5xxx_wr_acr0 (uint32);
172
void
mcf5xxx_wr_acr1 (uint32);
173
void
mcf5xxx_wr_acr2 (uint32);
174
void
mcf5xxx_wr_acr3 (uint32);
175
void
mcf5xxx_wr_other_a7 (uint32);
176
void
mcf5xxx_wr_other_sp (uint32);
177
void
mcf5xxx_wr_vbr (uint32);
178
void
mcf5xxx_wr_macsr (uint32);
179
void
mcf5xxx_wr_mask (uint32);
180
void
mcf5xxx_wr_acc0 (uint32);
181
void
mcf5xxx_wr_accext01 (uint32);
182
void
mcf5xxx_wr_accext23 (uint32);
183
void
mcf5xxx_wr_acc1 (uint32);
184
void
mcf5xxx_wr_acc2 (uint32);
185
void
mcf5xxx_wr_acc3 (uint32);
186
void
mcf5xxx_wr_sr (uint32);
187
void
mcf5xxx_wr_rambar0 (uint32);
188
void
mcf5xxx_wr_rambar1 (uint32);
189
void
mcf5xxx_wr_mbar (uint32);
190
void
mcf5xxx_wr_mbar0 (uint32);
191
void
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
*/
202
extern
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 */
__IPSBAR
#define __IPSBAR
Definition
bsp.h:40
vuint8
volatile unsigned char vuint8
Definition
mcf5223x.h:9
__attribute__
Definition
xnandpsu_onfi.h:185
Generated by
1.18.0