blob: f82ccbe4ec25b0a33cacf5970f6c42f13beb2f68 [file] [log] [blame]
Aubrey.Li9da597f2007-03-09 13:38:44 +08001/************************************************************************
Wolfgang Denk97caf672006-03-12 02:12:27 +01002 *
Aubrey.Li9da597f2007-03-09 13:38:44 +08003 * cdef_LPBlackfin.h
Wolfgang Denk97caf672006-03-12 02:12:27 +01004 *
Aubrey.Li9da597f2007-03-09 13:38:44 +08005 * (c) Copyright 2002-2003 Analog Devices, Inc. All rights reserved.
Wolfgang Denk97caf672006-03-12 02:12:27 +01006 *
Aubrey.Li9da597f2007-03-09 13:38:44 +08007 ************************************************************************/
Wolfgang Denk97caf672006-03-12 02:12:27 +01008
9#ifndef _CDEF_LPBLACKFIN_H
10#define _CDEF_LPBLACKFIN_H
11
Aubrey.Li9da597f2007-03-09 13:38:44 +080012#if !defined(__ADSPLPBLACKFIN__)
13#warning cdef_LPBlackfin.h should only be included for 532 compatible chips.
14#endif
15#include <asm/arch-common/def_LPBlackfin.h>
Wolfgang Denk97caf672006-03-12 02:12:27 +010016
Aubrey.Li9da597f2007-03-09 13:38:44 +080017// Cache & SRAM Memory
Wolfgang Denk97caf672006-03-12 02:12:27 +010018#define pSRAM_BASE_ADDRESS ((volatile void **)SRAM_BASE_ADDRESS)
19#define pDMEM_CONTROL ((volatile unsigned long *)DMEM_CONTROL)
20#define pDCPLB_STATUS ((volatile unsigned long *)DCPLB_STATUS)
21#define pDCPLB_FAULT_ADDR ((volatile void **)DCPLB_FAULT_ADDR)
Aubrey.Li9da597f2007-03-09 13:38:44 +080022/*
23#define MMR_TIMEOUT 0xFFE00010 // Memory-Mapped Register Timeout Register
24*/
Wolfgang Denk97caf672006-03-12 02:12:27 +010025#define pDCPLB_ADDR0 ((volatile void **)DCPLB_ADDR0)
26#define pDCPLB_ADDR1 ((volatile void **)DCPLB_ADDR1)
27#define pDCPLB_ADDR2 ((volatile void **)DCPLB_ADDR2)
28#define pDCPLB_ADDR3 ((volatile void **)DCPLB_ADDR3)
29#define pDCPLB_ADDR4 ((volatile void **)DCPLB_ADDR4)
30#define pDCPLB_ADDR5 ((volatile void **)DCPLB_ADDR5)
31#define pDCPLB_ADDR6 ((volatile void **)DCPLB_ADDR6)
32#define pDCPLB_ADDR7 ((volatile void **)DCPLB_ADDR7)
33#define pDCPLB_ADDR8 ((volatile void **)DCPLB_ADDR8)
34#define pDCPLB_ADDR9 ((volatile void **)DCPLB_ADDR9)
35#define pDCPLB_ADDR10 ((volatile void **)DCPLB_ADDR10)
36#define pDCPLB_ADDR11 ((volatile void **)DCPLB_ADDR11)
37#define pDCPLB_ADDR12 ((volatile void **)DCPLB_ADDR12)
38#define pDCPLB_ADDR13 ((volatile void **)DCPLB_ADDR13)
39#define pDCPLB_ADDR14 ((volatile void **)DCPLB_ADDR14)
40#define pDCPLB_ADDR15 ((volatile void **)DCPLB_ADDR15)
41#define pDCPLB_DATA0 ((volatile unsigned long *)DCPLB_DATA0)
42#define pDCPLB_DATA1 ((volatile unsigned long *)DCPLB_DATA1)
43#define pDCPLB_DATA2 ((volatile unsigned long *)DCPLB_DATA2)
44#define pDCPLB_DATA3 ((volatile unsigned long *)DCPLB_DATA3)
45#define pDCPLB_DATA4 ((volatile unsigned long *)DCPLB_DATA4)
46#define pDCPLB_DATA5 ((volatile unsigned long *)DCPLB_DATA5)
47#define pDCPLB_DATA6 ((volatile unsigned long *)DCPLB_DATA6)
48#define pDCPLB_DATA7 ((volatile unsigned long *)DCPLB_DATA7)
49#define pDCPLB_DATA8 ((volatile unsigned long *)DCPLB_DATA8)
50#define pDCPLB_DATA9 ((volatile unsigned long *)DCPLB_DATA9)
51#define pDCPLB_DATA10 ((volatile unsigned long *)DCPLB_DATA10)
52#define pDCPLB_DATA11 ((volatile unsigned long *)DCPLB_DATA11)
53#define pDCPLB_DATA12 ((volatile unsigned long *)DCPLB_DATA12)
54#define pDCPLB_DATA13 ((volatile unsigned long *)DCPLB_DATA13)
55#define pDCPLB_DATA14 ((volatile unsigned long *)DCPLB_DATA14)
56#define pDCPLB_DATA15 ((volatile unsigned long *)DCPLB_DATA15)
57#define pDTEST_COMMAND ((volatile unsigned long *)DTEST_COMMAND)
Aubrey.Li9da597f2007-03-09 13:38:44 +080058/*
59#define DTEST_INDEX 0xFFE00304 // Data Test Index Register
60*/
Wolfgang Denk97caf672006-03-12 02:12:27 +010061#define pDTEST_DATA0 ((volatile unsigned long *)DTEST_DATA0)
62#define pDTEST_DATA1 ((volatile unsigned long *)DTEST_DATA1)
Wolfgang Denk97caf672006-03-12 02:12:27 +010063/*
Aubrey.Li9da597f2007-03-09 13:38:44 +080064#define DTEST_DATA2 0xFFE00408 // Data Test Data Register
65#define DTEST_DATA3 0xFFE0040C // Data Test Data Register
66*/
Wolfgang Denk97caf672006-03-12 02:12:27 +010067#define pIMEM_CONTROL ((volatile unsigned long *)IMEM_CONTROL)
68#define pICPLB_STATUS ((volatile unsigned long *)ICPLB_STATUS)
69#define pICPLB_FAULT_ADDR ((volatile void **)ICPLB_FAULT_ADDR)
70#define pICPLB_ADDR0 ((volatile void **)ICPLB_ADDR0)
71#define pICPLB_ADDR1 ((volatile void **)ICPLB_ADDR1)
72#define pICPLB_ADDR2 ((volatile void **)ICPLB_ADDR2)
73#define pICPLB_ADDR3 ((volatile void **)ICPLB_ADDR3)
74#define pICPLB_ADDR4 ((volatile void **)ICPLB_ADDR4)
75#define pICPLB_ADDR5 ((volatile void **)ICPLB_ADDR5)
76#define pICPLB_ADDR6 ((volatile void **)ICPLB_ADDR6)
77#define pICPLB_ADDR7 ((volatile void **)ICPLB_ADDR7)
78#define pICPLB_ADDR8 ((volatile void **)ICPLB_ADDR8)
79#define pICPLB_ADDR9 ((volatile void **)ICPLB_ADDR9)
80#define pICPLB_ADDR10 ((volatile void **)ICPLB_ADDR10)
81#define pICPLB_ADDR11 ((volatile void **)ICPLB_ADDR11)
82#define pICPLB_ADDR12 ((volatile void **)ICPLB_ADDR12)
83#define pICPLB_ADDR13 ((volatile void **)ICPLB_ADDR13)
84#define pICPLB_ADDR14 ((volatile void **)ICPLB_ADDR14)
85#define pICPLB_ADDR15 ((volatile void **)ICPLB_ADDR15)
86#define pICPLB_DATA0 ((volatile unsigned long *)ICPLB_DATA0)
87#define pICPLB_DATA1 ((volatile unsigned long *)ICPLB_DATA1)
88#define pICPLB_DATA2 ((volatile unsigned long *)ICPLB_DATA2)
89#define pICPLB_DATA3 ((volatile unsigned long *)ICPLB_DATA3)
90#define pICPLB_DATA4 ((volatile unsigned long *)ICPLB_DATA4)
91#define pICPLB_DATA5 ((volatile unsigned long *)ICPLB_DATA5)
92#define pICPLB_DATA6 ((volatile unsigned long *)ICPLB_DATA6)
93#define pICPLB_DATA7 ((volatile unsigned long *)ICPLB_DATA7)
94#define pICPLB_DATA8 ((volatile unsigned long *)ICPLB_DATA8)
95#define pICPLB_DATA9 ((volatile unsigned long *)ICPLB_DATA9)
96#define pICPLB_DATA10 ((volatile unsigned long *)ICPLB_DATA10)
97#define pICPLB_DATA11 ((volatile unsigned long *)ICPLB_DATA11)
98#define pICPLB_DATA12 ((volatile unsigned long *)ICPLB_DATA12)
99#define pICPLB_DATA13 ((volatile unsigned long *)ICPLB_DATA13)
100#define pICPLB_DATA14 ((volatile unsigned long *)ICPLB_DATA14)
101#define pICPLB_DATA15 ((volatile unsigned long *)ICPLB_DATA15)
102#define pITEST_COMMAND ((volatile unsigned long *)ITEST_COMMAND)
Aubrey.Li9da597f2007-03-09 13:38:44 +0800103/*
104#define ITEST_INDEX 0xFFE01304 // Instruction Test Index Register
105*/
Wolfgang Denk97caf672006-03-12 02:12:27 +0100106#define pITEST_DATA0 ((volatile unsigned long *)ITEST_DATA0)
107#define pITEST_DATA1 ((volatile unsigned long *)ITEST_DATA1)
108
Aubrey.Li9da597f2007-03-09 13:38:44 +0800109// Event/Interrupt Registers
Wolfgang Denk97caf672006-03-12 02:12:27 +0100110#define pEVT0 ((volatile void **)EVT0)
111#define pEVT1 ((volatile void **)EVT1)
112#define pEVT2 ((volatile void **)EVT2)
113#define pEVT3 ((volatile void **)EVT3)
114#define pEVT4 ((volatile void **)EVT4)
115#define pEVT5 ((volatile void **)EVT5)
116#define pEVT6 ((volatile void **)EVT6)
117#define pEVT7 ((volatile void **)EVT7)
118#define pEVT8 ((volatile void **)EVT8)
119#define pEVT9 ((volatile void **)EVT9)
120#define pEVT10 ((volatile void **)EVT10)
121#define pEVT11 ((volatile void **)EVT11)
122#define pEVT12 ((volatile void **)EVT12)
123#define pEVT13 ((volatile void **)EVT13)
124#define pEVT14 ((volatile void **)EVT14)
125#define pEVT15 ((volatile void **)EVT15)
126#define pIMASK ((volatile unsigned long *)IMASK)
127#define pIPEND ((volatile unsigned long *)IPEND)
128#define pILAT ((volatile unsigned long *)ILAT)
129
Aubrey.Li9da597f2007-03-09 13:38:44 +0800130// Core Timer Registers
Wolfgang Denk97caf672006-03-12 02:12:27 +0100131#define pTCNTL ((volatile unsigned long *)TCNTL)
132#define pTPERIOD ((volatile unsigned long *)TPERIOD)
133#define pTSCALE ((volatile unsigned long *)TSCALE)
134#define pTCOUNT ((volatile unsigned long *)TCOUNT)
135
Aubrey.Li9da597f2007-03-09 13:38:44 +0800136// Debug/MP/Emulation Registers
Wolfgang Denk97caf672006-03-12 02:12:27 +0100137#define pDSPID ((volatile unsigned long *)DSPID)
138#define pDBGCTL ((volatile unsigned long *)DBGCTL)
139#define pDBGSTAT ((volatile unsigned long *)DBGSTAT)
140#define pEMUDAT ((volatile unsigned long *)EMUDAT)
141
Aubrey.Li9da597f2007-03-09 13:38:44 +0800142// Trace Buffer Registers
Wolfgang Denk97caf672006-03-12 02:12:27 +0100143#define pTBUFCTL ((volatile unsigned long *)TBUFCTL)
144#define pTBUFSTAT ((volatile unsigned long *)TBUFSTAT)
145#define pTBUF ((volatile void **)TBUF)
146
Aubrey.Li9da597f2007-03-09 13:38:44 +0800147// Watch Point Control Registers
Wolfgang Denk97caf672006-03-12 02:12:27 +0100148#define pWPIACTL ((volatile unsigned long *)WPIACTL)
149#define pWPIA0 ((volatile void **)WPIA0)
150#define pWPIA1 ((volatile void **)WPIA1)
151#define pWPIA2 ((volatile void **)WPIA2)
152#define pWPIA3 ((volatile void **)WPIA3)
153#define pWPIA4 ((volatile void **)WPIA4)
154#define pWPIA5 ((volatile void **)WPIA5)
155#define pWPIACNT0 ((volatile unsigned long *)WPIACNT0)
156#define pWPIACNT1 ((volatile unsigned long *)WPIACNT1)
157#define pWPIACNT2 ((volatile unsigned long *)WPIACNT2)
158#define pWPIACNT3 ((volatile unsigned long *)WPIACNT3)
159#define pWPIACNT4 ((volatile unsigned long *)WPIACNT4)
160#define pWPIACNT5 ((volatile unsigned long *)WPIACNT5)
161#define pWPDACTL ((volatile unsigned long *)WPDACTL)
162#define pWPDA0 ((volatile void **)WPDA0)
163#define pWPDA1 ((volatile void **)WPDA1)
164#define pWPDACNT0 ((volatile unsigned long *)WPDACNT0)
165#define pWPDACNT1 ((volatile unsigned long *)WPDACNT1)
166#define pWPSTAT ((volatile unsigned long *)WPSTAT)
167
Aubrey.Li9da597f2007-03-09 13:38:44 +0800168// Performance Monitor Registers
Wolfgang Denk97caf672006-03-12 02:12:27 +0100169#define pPFCTL ((volatile unsigned long *)PFCTL)
170#define pPFCNTR0 ((volatile unsigned long *)PFCNTR0)
171#define pPFCNTR1 ((volatile unsigned long *)PFCNTR1)
172
Aubrey.Li9da597f2007-03-09 13:38:44 +0800173/*
174#define IPRIO 0xFFE02110 // Core Interrupt Priority Register
175*/
Wolfgang Denk97caf672006-03-12 02:12:27 +0100176
Aubrey.Li9da597f2007-03-09 13:38:44 +0800177#endif /* _CDEF_LPBLACKFIN_H */