OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [arm/] [mac7100/] [var/] [current/] [include/] [var_io.h] - Blame information for rev 856

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
#ifndef CYGONCE_HAL_VAR_IO_H
2
#define CYGONCE_HAL_VAR_IO_H
3
//=============================================================================
4
//
5
//      var_io.h
6
//
7
//      Variant specific registers
8
//
9
//=============================================================================
10
// ####ECOSGPLCOPYRIGHTBEGIN####                                            
11
// -------------------------------------------                              
12
// This file is part of eCos, the Embedded Configurable Operating System.   
13
// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2006 Free Software Foundation, Inc.
14
//
15
// eCos is free software; you can redistribute it and/or modify it under    
16
// the terms of the GNU General Public License as published by the Free     
17
// Software Foundation; either version 2 or (at your option) any later      
18
// version.                                                                 
19
//
20
// eCos is distributed in the hope that it will be useful, but WITHOUT      
21
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or    
22
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License    
23
// for more details.                                                        
24
//
25
// You should have received a copy of the GNU General Public License        
26
// along with eCos; if not, write to the Free Software Foundation, Inc.,    
27
// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.            
28
//
29
// As a special exception, if other files instantiate templates or use      
30
// macros or inline functions from this file, or you compile this file      
31
// and link it with other works to produce a work based on this file,       
32
// this file does not by itself cause the resulting work to be covered by   
33
// the GNU General Public License. However the source code for this file    
34
// must still be made available in accordance with section (3) of the GNU   
35
// General Public License v2.                                               
36
//
37
// This exception does not invalidate any other reasons why a work based    
38
// on this file might be covered by the GNU General Public License.         
39
// -------------------------------------------                              
40
// ####ECOSGPLCOPYRIGHTEND####                                              
41
//=============================================================================
42
//#####DESCRIPTIONBEGIN####
43
//
44
// Author(s):   Ilija Koco <ilijak@siva.com.mk> 
45
// Contributors:
46
// Date:        2006-02-03
47
// Purpose:     MAC7100 variant specific registers
48
// Description: based on freescale's mac7100.h
49
// Usage:       #include <cyg/hal/var_io.h>
50
//
51
//####DESCRIPTIONEND####
52
//
53
//=============================================================================
54
 
55
#include <cyg/hal/plf_io.h>
56
 
57
#if !defined HAL_IO_MACROS_NO_ADDRESS_MUNGING
58
#define HAL_IO_MACROS_NO_ADDRESS_MUNGING 1
59
#endif // HAL_IO_MACROS_NO_ADDRESS_MUNGING
60
 
61
// *********************************************************************
62
//
63
// INTC Module
64
//
65
// *********************************************************************
66
 
67
// Interrupt Controller Definitions 
68
#define MAC7100_INTC_BASE      (0xFC048000)
69
 
70
#define MAC7100_IPRH_OFFSET    (0x0000)
71
#define MAC7100_IPRL_OFFSET    (0x0004)
72
#define MAC7100_IMRH_OFFSET    (0x0008)
73
#define MAC7100_IMRL_OFFSET    (0x000C)
74
#define MAC7100_INTFRCH_OFFSET (0x0010)
75
#define MAC7100_INTFRCL_OFFSET (0x0014)
76
#define MAC7100_ICONFIG_OFFSET (0x001B)
77
#define MAC7100_SIMR_OFFSET    (0x001C)
78
#define MAC7100_CIMR_OFFSET    (0x001D)
79
#define MAC7100_CLMASK_OFFSET  (0x001E) // CLMASK - Current Level Mask Register
80
#define MAC7100_SLMASK_OFFSET  (0x001F) // SLMASK - Saved Level Mask Register 
81
#define MAC7100_ICR_OFFSET     (0x0040)
82
#define MAC7100_IRQIACK_OFFSET (0x00EC)
83
#define MAC7100_FIQIACK_OFFSET (0x00F0)
84
 
85
#define MAC7100_INTC_IPRH(intc_base)    (intc_base + MAC7100_IPRH_OFFSET)
86
#define MAC7100_INTC_IPRL(intc_base)    (intc_base + MAC7100_IPRL_OFFSET)
87
#define MAC7100_INTC_IMRH(intc_base)    (intc_base + MAC7100_IMRH_OFFSET)
88
#define MAC7100_INTC_IMRL(intc_base)    (intc_base + MAC7100_IMRL_OFFSET)
89
#define MAC7100_INTC_INTFRC(intc_base)  (intc_base + MAC7100_INTFRCH_OFFSET)
90
#define MAC7100_INTC_INTFRCH(intc_base) (intc_base + MAC7100_INTFRCH_OFFSET)
91
#define MAC7100_INTC_INTFRCL(intc_base) (intc_base + MAC7100_INTFRCL_OFFSET)
92
#define MAC7100_INTC_ICONFIG(intc_base) (intc_base + MAC7100_ICONFIG_OFFSET)
93
#define MAC7100_INTC_IRQIACK(intc_base) (intc_base + MAC7100_IRQIACK_OFFSET)
94
#define MAC7100_INTC_FIQIACK(intc_base) (intc_base + MAC7100_FIQIACK_OFFSET)
95
#define MAC7100_INTC_ICR(intc_base,src) (intc_base + MAC7100_ICR_OFFSET + src)
96
#define MAC7100_INTC_SIMR(intc_base)    (intc_base + MAC7100_SIMR_OFFSET)
97
#define MAC7100_INTC_CIMR(intc_base)    (intc_base + MAC7100_CIMR_OFFSET)
98
#define MAC7100_INTC_CLMASK(intc_base)  (intc_base + MAC7100_CLMASK_OFFSET)
99
#define MAC7100_INTC_SLMASK(intc_base)  (intc_base + MAC7100_SLMASK_OFFSET)
100
 
101
#define MAC7100_INTC_INT_LEVEL(lev) (lev)
102
 
103
// hardware interrupt source vector numbers 
104
#define MAC7100_EDMA0_IV        (0)
105
#define MAC7100_EDMA1_IV        (1)
106
#define MAC7100_EDMA2_IV        (2)
107
#define MAC7100_EDMA3_IV        (3)
108
#define MAC7100_EDMA4_IV        (4)
109
#define MAC7100_EDMA5_IV        (5)
110
#define MAC7100_EDMA6_IV        (6)
111
#define MAC7100_EDMA7_IV        (7)
112
#define MAC7100_EDMA8_IV        (8)
113
#define MAC7100_EDMA9_IV        (9)
114
#define MAC7100_EDMA10_IV       (10)
115
#define MAC7100_EDMA11_IV       (11)
116
#define MAC7100_EDMA12_IV       (12)
117
#define MAC7100_EDMA13_IV       (13)
118
#define MAC7100_EDMA14_IV       (14)
119
#define MAC7100_EDMA15_IV       (15)
120
#define MAC7100_EDMA_Error_IV   (16)
121
#define MAC7100_MCM_SWT_IV      (17)
122
#define MAC7100_CRG_IV          (18)
123
#define MAC7100_PIT1_IV         (19)
124
#define MAC7100_PIT2_IV         (20)
125
#define MAC7100_PIT3_IV         (21)
126
#define MAC7100_PIT4_RTI_IV     (22)
127
#define MAC7100_VREG_IV         (23)
128
#define MAC7100_CAN_A_MB_IV     (24)
129
#define MAC7100_CAN_A_MB14_IV   (25)
130
#define MAC7100_CAN_A_Error_IV  (26)
131
#define MAC7100_CAN_B_MB_IV     (27)
132
#define MAC7100_CAN_B_MB14_IV   (28)
133
#define MAC7100_CAN_B_Error_IV  (29)
134
#define MAC7100_CAN_C_MB_IV     (30)
135
#define MAC7100_CAN_C_MB14_IV   (31)
136
#define MAC7100_CAN_C_Error_IV  (32)
137
#define MAC7100_CAN_D_MB_IV     (33)
138
#define MAC7100_CAN_D_MB14_IV   (34)
139
#define MAC7100_CAN_D_Error_IV  (35)
140
#define MAC7100_I2C_IV          (36)
141
#define MAC7100_DSPI_A_IV       (37)
142
#define MAC7100_DSPI_B_IV       (38)
143
#define MAC7100_ESCI_A_IV       (39)
144
#define MAC7100_ESCI_B_IV       (40)
145
#define MAC7100_ESCI_C_IV       (41)
146
#define MAC7100_ESCI_D_IV       (42)
147
#define MAC7100_EMIOS0_IV       (43)
148
#define MAC7100_EMIOS1_IV       (44)
149
#define MAC7100_EMIOS2_IV       (45)
150
#define MAC7100_EMIOS3_IV       (46)
151
#define MAC7100_EMIOS4_IV       (47)
152
#define MAC7100_EMIOS5_IV       (48)
153
#define MAC7100_EMIOS6_IV       (49)
154
#define MAC7100_EMIOS7_IV       (50)
155
#define MAC7100_EMIOS8_IV       (51)
156
#define MAC7100_EMIOS9_IV       (52)
157
#define MAC7100_EMIOS10_IV      (53)
158
#define MAC7100_EMIOS11_IV      (54)
159
#define MAC7100_EMIOS12_IV      (55)
160
#define MAC7100_EMIOS13_IV      (56)
161
#define MAC7100_EMIOS14_IV      (57)
162
#define MAC7100_EMIOS15_IV      (58)
163
#define MAC7100_ATD_IV          (59)
164
#define MAC7100_CFM_IV          (60)
165
#define MAC7100_PIM_IV          (61)
166
#define MAC7100_IRQ_IV          (62)
167
#define MAC7100_XIRQ_IV         (63)
168
 
169
#define MAC7100_IRQ_SPURIOUS     (-1)
170
 
171
// *******************************************************************
172
//
173
// eSCI Module 
174
//      Note: eSCI definitions are in cyg/devs/ser_esci.h
175
// *******************************************************************
176
#define CYGADDR_IO_SERIAL_FREESCALE_ESCI_A_BASE 0xFC0C4000
177
#define CYGNUM_IO_SERIAL_FREESCALE_ESCI_A_INT_VECTOR MAC7100_ESCI_A_IV
178
 
179
#define CYGADDR_IO_SERIAL_FREESCALE_ESCI_B_BASE 0xFC0C8000
180
#define CYGNUM_IO_SERIAL_FREESCALE_ESCI_B_INT_VECTOR MAC7100_ESCI_B_IV
181
 
182
#define CYGADDR_IO_SERIAL_FREESCALE_ESCI_C_BASE 0xFC0CC000
183
#define CYGNUM_IO_SERIAL_FREESCALE_ESCI_C_INT_VECTOR MAC7100_ESCI_C_IV
184
 
185
#define CYGADDR_IO_SERIAL_FREESCALE_ESCI_D_BASE 0xFC0D0000
186
#define CYGNUM_IO_SERIAL_FREESCALE_ESCI_D_INT_VECTOR MAC7100_ESCI_D_IV
187
 
188
#define CYGNUM_DEV_SER_FREESCALE_ESCI_SYSTEM_CLOCK \
189
  (CYGNUM_HAL_ARM_MAC7100_CLOCK_SPEED/2)
190
#define FREESCALE_ESCI_BAUD(baud_rate)            \
191
  ((CYGNUM_DEV_SER_FREESCALE_ESCI_SYSTEM_CLOCK)/(baud_rate*16))
192
 
193
 
194
// *********************************************************************
195
//
196
// PIT Module
197
//
198
// *********************************************************************
199
 
200
// Periodic Interrupt Timer Module Definitions 
201
 
202
#define MAC7100_PIT_BASE         (0xFC08C000)
203
#define MAC7100_TLVAL0_OFFSET    (0x0000)
204
#define MAC7100_TVAL0_OFFSET     (0x0080)
205
 
206
#define MAC7100_PIT_TLVAL(pit_base,chan)        \
207
  (pit_base + MAC7100_TLVAL0_OFFSET + (4 * chan))
208
#define MAC7100_PIT_TVAL(pit_base,chan)   \
209
  (pit_base + MAC7100_TVAL0_OFFSET + (4 * chan))
210
 
211
#define MAC7100_PITFLG_OFFSET         (0x0100)
212
#define MAC7100_PITINTEN_OFFSET       (0x0104)
213
#define MAC7100_PITINTSEL_OFFSET      (0x0108)
214
#define MAC7100_PITEN_OFFSET          (0x010C)
215
#define MAC7100_PITCTRL_OFFSET        (0x0110)
216
 
217
#define MAC7100_PIT_FLAG_RTIF         (0x00000001)
218
#define MAC7100_PIT_FLAG_TIF(chan)    (0x00000001 << chan)
219
#define MAC7100_PIT_INTSEL_ISEL(chan) (0x00000001 << chan)
220
#define MAC7100_PIT_INTEN_RTIE        (0x00000001)
221
#define MAC7100_PIT_INTEN_TIE(chan)   (0x00000001 << chan)
222
 
223
#define MAC7100_PIT_EN_RTIEN          (0x00000001)
224
#define MAC7100_PIT_EN_PEN(chan)      (0x00000001 << chan)
225
 
226
#define MAC7100_PIT_FLG(pit_base)    (pit_base + MAC7100_PITFLG_OFFSET)
227
#define MAC7100_PIT_INTEN(pit_base)  (pit_base + MAC7100_PITINTEN_OFFSET)
228
#define MAC7100_PIT_INTSEL(pit_base) (pit_base + MAC7100_PITINTSEL_OFFSET)
229
#define MAC7100_PIT_EN(pit_base)     (pit_base + MAC7100_PITEN_OFFSET)
230
 
231
#define MAC7100_PIT_CTRL(pit_base)   (pit_base + MAC7100_PITCTRL_OFFSET)
232
#define MAC7100_PIT_MDIS    (0x01000000)
233
 
234
 
235
// *********************************************************************
236
//
237
// PIM Module
238
//
239
// *********************************************************************/
240
 
241
#define MAC7100_PIM_BASE  (0xFC0E8000)
242
 
243
#define MAC7100_PORT_A_OFFSET (0x000)
244
#define MAC7100_PORT_B_OFFSET (0x040)
245
#define MAC7100_PORT_C_OFFSET (0x080)
246
#define MAC7100_PORT_D_OFFSET (0x0C0)
247
#define MAC7100_PORT_E_OFFSET (0x100)
248
#define MAC7100_PORT_F_OFFSET (0x140)
249
#define MAC7100_PORT_G_OFFSET (0x180)
250
#define MAC7100_PORT_H_OFFSET (0x1C0)
251
#define MAC7100_PORT_I_OFFSET (0x200)
252
 
253
// PORT Pin Configuration Registers 
254
#define MAC7100_PIM_CONFIG(port,pin)  (MAC7100_PIM_BASE+port+((pin)*2)) 
255
// Port Wide Interrupt Flag Register 
256
#define MAC7100_PIM_PORTIFR(port)     (MAC7100_PIM_BASE+port+0x20) 
257
// Port Wide Data Read/Write Register 
258
#define MAC7100_PIM_PORTDATA(port)    (MAC7100_PIM_BASE+port+0x24) 
259
// Port Wide Input Register 
260
#define MAC7100_PIM_PORTIR(port)      (MAC7100_PIM_BASE+port+0x26) 
261
// Port Pin Data Registers 
262
#define MAC7100_PIM_DATA(port,pin)    (MAC7100_PIM_BASE+port+0x28+pin) 
263
 
264
// Global Interrupt Status Register 
265
#define MAC7100_PIM_GLBLINT    (MAC7100_PIM_BASE+0x03C0) 
266
// PIM Configuration Register 
267
#define MAC7100_PIM_PIMCONFIG  (MAC7100_PIM_BASE+0x03C2) 
268
// TDI Pin Configuration Register 
269
#define MAC7100_PIM_CONFIG_TDI (MAC7100_PIM_BASE+0x03C4) 
270
// TDO Pin Configuration Register 
271
#define MAC7100_PIM_CONFIG_TDO (MAC7100_PIM_BASE+0x03C6) 
272
// TMS Pin Configuration Register 
273
#define MAC7100_PIM_CONFIG_TMS (MAC7100_PIM_BASE+0x03C8) 
274
// TCK Pin Configuration Register 
275
#define MAC7100_PIM_CONFIG_TCK (MAC7100_PIM_BASE+0x03CA) 
276
// TA Pin Configuration Register 
277
#define MAC7100_PIM_CONFIG_TA  (MAC7100_PIM_BASE+0x03CC) 
278
 
279
// Bit definitions and macros for PIM_PA_CONFIGn 
280
//  Pin Interrupt Flag Register 
281
#define MAC7100_PIM_PIFR            (0x0001)       
282
//  Pin Interrupt Enable Register 
283
#define MAC7100_PIM_PIER            (0x0002)       
284
//  Pull-up/down Enable Register 
285
#define MAC7100_PIM_PULL(x)         (((x)&0x0003)<<2)    
286
//  Reduced Drive Strength Register 
287
#define MAC7100_PIM_RDR             (0x0010)       
288
//  Open Drain Enable Register 
289
#define MAC7100_PIM_ODER            (0x0020)       
290
//  Data Direction Register 
291
#define MAC7100_PIM_DDR             (0x0040)       
292
#define MAC7100_PIM_MODE            (0x0080)       
293
#define MAC7100_PIM_MODE_PERIPHERAL MAC7100_PIM_MODE
294
 
295
// Bit definitions and macros for PIM_GLBLINT 
296
//  Interrupt Pending 
297
#define MAC7100_PIM_INT_PENDING(x)  (((x)&0x01FF)<<0)    
298
 
299
// Bit definitions and macros for PIM_PIMCONFIG 
300
//  Clock Enable for the EIM module 
301
#define MAC7100_PIM_PORTHSEL        (0x0001)       
302
//  Port H Select 
303
#define MAC7100_PIM_EIMCLKEN        (0x0002)       
304
 
305
#define MAC7100_PIM_PORT32IR(port32ir)  (MAC7100_PIM_BASE+0x03E0+port32ir)
306
 
307
#define MAC7100_PIM_PORT32IR_AB (0x00)
308
#define MAC7100_PIM_PORT32IR_CD (0x04)
309
#define MAC7100_PIM_PORT32IR_EF (0x08)
310
#define MAC7100_PIM_PORT32IR_GH (0x0C)
311
#define MAC7100_PIM_PORT32IR_BC (0x10)
312
#define MAC7100_PIM_PORT32IR_DE (0x14)
313
#define MAC7100_PIM_PORT32IR_FG (0x18)
314
#define MAC7100_PIM_PORT32IR_HI (0x1C)
315
 
316
 
317
// ********************************************************************
318
//
319
// CRG Module
320
//
321
// ********************************************************************
322
 
323
// Register read/write macros 
324
#define MAC7100_CRG_BASE   0xFC088000 // SYNR - Synthesizer Register 
325
#define MAC7100_CRG_SYNR   0xFC088000 // SYNR - Synthesizer Register 
326
#define MAC7100_CRG_REFDV  0xFC088001 // REFDV - Reference Divider Register 
327
#define MAC7100_CRG_CTFLG  0xFC088002 // CTFLG - Test Flags Register (reserved)
328
#define MAC7100_CRG_CRGFLG 0xFC088003 // CRGFLG - Flags Register 
329
#define MAC7100_CRG_CRGINT 0xFC088004 // CRGINT - Interrupt Enable Register 
330
#define MAC7100_CRG_CLKSEL 0xFC088005 // CLKSEL - Clock Select Register 
331
#define MAC7100_CRG_PLLCTL 0xFC088006 // PLLCTL - PLL Control Register 
332
#define MAC7100_CRG_SDMCTL 0xFC088007 // SDMCTL - STOP/DOZE Control Register 
333
#define MAC7100_CRG_BDMCTL 0xFC088008 // BDMCTL - BDM Control Register 
334
#define MAC7100_CRG_FORBYP 0xFC088009 // FORBYP - Force and Bypass Test 
335
#define MAC7100_CRG_CTCTL  0xFC08800A // CTCTL - Test Control Register (resvd) 
336
 
337
// Bit definitions and macros for CRG_SYNR 
338
#define MAC7100_CRG_SYN(x) (((x)&0x3F)<<0)  //  Synthesizer Count value 
339
 
340
// Bit definitions and macros for CRG_REFDV 
341
#define MAC7100_CRG_REFD(x) (((x)&0x0F)<<0)  //Reference divider 
342
 
343
// Bit definitions and macros for CRG_CRGFLG 
344
#define MAC7100_CRG_SCM     (0x01)         //Self Clock Mode Status 
345
#define MAC7100_CRG_SCMIF   (0x02)         //Self Clock Mode Interrupt Flag 
346
#define MAC7100_CRG_TRACK   (0x04)         //Track Status 
347
#define MAC7100_CRG_LOCK    (0x08)         //Lock Status 
348
#define MAC7100_CRG_LOCKIF  (0x10)         //PLL Lock Interrupt Flag 
349
#define MAC7100_CRG_LVRF    (0x20)         //Low Voltage Reset Flag 
350
#define MAC7100_CRG_PORF    (0x40)         //Power on Reset Flag 
351
#define MAC7100_CRG_STPEF   (0x80)         //Stop Entry Flag 
352
 
353
// Bit definitions and macros for CRG_CRGINT 
354
#define MAC7100_CRG_SCMIE   (0x02)         //Self Clock Mode Interrupt Enable 
355
#define MAC7100_CRG_LOCKIE  (0x10)         //Lock Interrupt Enable 
356
 
357
// Bit definitions and macros for CRG_CLKSEL 
358
#define MAC7100_CRG_SWTDOZE  (0x01)         //SWT stops in Doze Mode 
359
#define MAC7100_CRG_RTIDOZE  (0x02)         /*  RTI stops in Doze Mode */
360
#define MAC7100_CRG_PLLDOZE  (0x08)         /*  PLL stops in Doze Mode */
361
#define MAC7100_CRG_DOZE_ROA (0x10)         /*  Reduced Osc Amp in Doze Mode */
362
#define MAC7100_CRG_PSTP     (0x40)         /*  Pseudo Stop */
363
#define MAC7100_CRG_PLLSEL   (0x80)         /*  PLL Select */
364
 
365
// Bit definitions and macros for CRG_PLLCTL 
366
#define MAC7100_CRG_SCME     (0x01)         //Self Clock Mode Enable 
367
#define MAC7100_CRG_PWE      (0x02)         //SWT Enable during Pseudo Stop 
368
#define MAC7100_CRG_PRE      (0x04)         //RTI Enable during Pseudo Stop 
369
#define MAC7100_CRG_FSTWKP   (0x08)         //Fast Wake-up from Full Stop Bit 
370
#define MAC7100_CRG_ACQ      (0x10)         //Acquisition 
371
#define MAC7100_CRG_AUTO     (0x20)         //Automatic Bandwidth Control 
372
#define MAC7100_CRG_PLLON    (0x40)         //Phase Lock Loop On 
373
#define MAC7100_CRG_CME      (0x80)         //Clock Monitor Enable 
374
 
375
// Bit definitions and macros for CRG_SDMCTL 
376
#define MAC7100_CRG_STOP     (0x01)         //STOP mode 
377
#define MAC7100_CRG_DOZE     (0x02)         //DOZE mode 
378
 
379
// Bit definitions and macros for CRG_BDMCTL 
380
#define MAC7100_CRG_RSBCK    (0x40)         //SWT & RTI stop in Active BDM mode
381
 
382
 
383
// *********************************************************************
384
//
385
// MCM Module
386
//
387
// *********************************************************************
388
 
389
// Register read/write macros
390
#define MAC7100_MCM_PCT    0xFC040000 // 
391
#define MAC7100_MCM_REV    0xFC040002 // 
392
#define MAC7100_MCM_AMC    0xFC040004 // 
393
#define MAC7100_MCM_ASC    0xFC040006 // 
394
#define MAC7100_MCM_IMC    0xFC040008 // 
395
// MRSR - Miscellaneous Reset Status Register 
396
#define MAC7100_MCM_MRSR   0xFC04000F 
397
// MWCR - Miscellaneous Wakeup Control Register 
398
#define MAC7100_MCM_MWCR   0xFC040013 
399
// MSWTCR - Miscellaneous Software Watchdog Timer Control Register 
400
#define MAC7100_MCM_MSWTCR 0xFC040016 
401
// MSWTSR - Miscellaneous Software Watchdog Timer Service Register 
402
#define MAC7100_MCM_MSWTSR 0xFC04001B 
403
// MSWTIR - Miscellaneous Software Watchdog Timer Interrupt Register 
404
#define MAC7100_MCM_MSWTIR 0xFC04001F 
405
// AAMR - AXBS Address Map Register 
406
#define MAC7100_MCM_AAMR   0xFC040020 
407
// CFADR - Core Fault Address Register 
408
#define MAC7100_MCM_CFADR  0xFC040070 
409
// CFLOC - Core Fault Location Register 
410
#define MAC7100_MCM_CFLOC  0xFC040076 
411
// CFATR - Core Fault Attributes Register 
412
#define MAC7100_MCM_CFATR  0xFC040077 
413
// CFDTR - Core Fault Data Register 
414
#define MAC7100_MCM_CFDTR  0xFC04007C 
415
 
416
// Bit definitions and macros for MCM_AMC 
417
 
418
//  AXBS Master Configuration 
419
#define MAC7100_MCM_AXMC(x)    (((x)&0x00FF)<<0)    
420
 
421
// Bit definitions and macros for MCM_ASC 
422
//  AXBS Slave Configuration 
423
#define MAC7100_MCM_AXSC(x)    (((x)&0x00FF)<<0)    
424
#define MAC7100_MCM_DP64       (0x8000)             //  64-bit Datapath 
425
 
426
// Bit definitions and macros for MCM_MRSR 
427
#define MAC7100_MCM_SWTR       (0x20)         //  Watchdog Timer Reset 
428
#define MAC7100_MCM_DIR        (0x40)         //  Device Input Reset 
429
#define MAC7100_MCM_POR        (0x80)         //  Power-On Reset 
430
 
431
// Bit definitions and macros for MCM_MWCR 
432
#define MAC7100_MCM_PRILVL(x)  (((x)&0x0F)<<0)  //  Interrupt Priority Level 
433
#define MAC7100_MCM_ENBWCR     (0x80)           //  Enable WCR
434
 
435
// Bit definitions and macros for MCM_MSWTCR 
436
#define MAC7100_MCM_SWT(x)     (((x)&0x001F)<<0)  //  Watchdog Time-Out Period 
437
#define MAC7100_MCM_SWRI(x)    (((x)&0x0003)<<5)  //  Watchdog Reset/Interrupt 
438
#define MAC7100_MCM_SWE        (0x0080)       //  Watchdog Enable 
439
#define MAC7100_MCM_SWRWH      (0x0100)       //  Watchdog Run While Halted 
440
#define MAC7100_MCM_SWCIN16    (0x0200)       //  Force SWT CarryIn16 
441
#define MAC7100_MCM_RO         (0x8000)       //  Read-Only 
442
 
443
// Bit definitions and macros for MCM_MSWTIR 
444
#define MAC7100_MCM_SWTIC      (0x01)         //  Watchdog Interrupt Flag 
445
 
446
// Bit definitions and macros for MCM_AAMR
447
 
448
 
449
//  Address 0 Slave Number 
450
#define MAC7100_MCM_ASLAVE(adr_reg,sl_n) (((sl_n)&0x00000007)<<(adr_reg*4) 
451
//  Enable Address Region 0 
452
#define MAC7100_MCM_EA(adr_reg)        (0x00000008<<(adr_reg*4))  
453
 
454
// Bit definitions and macros for MCM_CFLOC 
455
#define MAC7100_MCM_LOCALERR               (0x80)  //  Bus Error Indicator 
456
 
457
// Bit definitions and macros for MCM_CFATR 
458
//  Protection fault type 
459
#define MAC7100_MCM_PROTECTION(x)          (((x)&0x0F)<<0)  
460
//  8-16-32-64-bit core access 
461
#define MAC7100_MCM_SIZE(x)                (((x)&0x07)<<4)  
462
//  Core read/write access 
463
#define MAC7100_MCM_WRITE                  (0x80)         
464
 
465
//=============================================================================
466
// FIQ interrupt vector which is shared by all HAL variants.
467
 
468
#define CYGNUM_HAL_INTERRUPT_FIQ 0
469
#endif // CYGONCE_HAL_VAR_IO_H
470
//-----------------------------------------------------------------------------
471
// end of var_io.h

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.