3 < * linux/include/asm-arm/arch-lpc22xx/lpc22xx.h
\r
5 < * Copyright (C) 2004 Philips Semiconductors
\r
8 < #ifndef __ASM_ARCH_LPC22xx_H
\r
9 < #define __ASM_ARCH_LPC22xx_H
\r
11 < /* EXTERNAL MEMORY CONTROLLER (EMC) */
\r
12 < #define BCFG0 (*((volatile unsigned int *) 0xFFE00000)) /* lpc22xx only */
\r
13 < #define BCFG1 (*((volatile unsigned int *) 0xFFE00004)) /* lpc22xx only */
\r
14 < #define BCFG2 (*((volatile unsigned int *) 0xFFE00008)) /* lpc22xx only */
\r
15 < #define BCFG3 (*((volatile unsigned int *) 0xFFE0000C)) /* lpc22xx only */
\r
17 < /* External Interrupts */
\r
18 < #define EXTINT (*((volatile unsigned char *) 0xE01FC140))
\r
19 < #define EXTWAKE (*((volatile unsigned char *) 0xE01FC144))
\r
20 < #ifdef CONFIG_ARCH_LPC22xx
\r
21 < #define EXTMODE (*((volatile unsigned char *) 0xE01FC148)) /* no in lpc210x*/
\r
22 < #define EXTPOLAR (*((volatile unsigned char *) 0xE01FC14C)) /* no in lpc210x*/
\r
25 < /* SMemory mapping control. */
\r
26 < #define MEMMAP (*((volatile unsigned char *) 0xE01FC040))
\r
28 < /* Phase Locked Loop (PLL) */
\r
29 < #define PLLCON (*((volatile unsigned char *) 0xE01FC080))
\r
30 < #define PLLCFG (*((volatile unsigned char *) 0xE01FC084))
\r
31 < #define PLLSTAT (*((volatile unsigned short*) 0xE01FC088))
\r
32 < #define PLLFEED (*((volatile unsigned char *) 0xE01FC08C))
\r
34 < /* Power Control */
\r
35 < #define PCON (*((volatile unsigned char *) 0xE01FC0C0))
\r
36 < #define PCONP (*((volatile unsigned long *) 0xE01FC0C4))
\r
39 < #define VPBDIV (*((volatile unsigned char *) 0xE01FC100))
\r
41 < /* Memory Accelerator Module (MAM) */
\r
42 < #define MAMCR (*((volatile unsigned char *) 0xE01FC000))
\r
43 < #define MAMTIM (*((volatile unsigned char *) 0xE01FC004))
\r
45 < /* Vectored Interrupt Controller (VIC) */
\r
46 < #define VICIRQStatus (*((volatile unsigned long *) 0xFFFFF000))
\r
47 < #define VICFIQStatus (*((volatile unsigned long *) 0xFFFFF004))
\r
48 < #define VICRawIntr (*((volatile unsigned long *) 0xFFFFF008))
\r
49 < #define VICIntSelect (*((volatile unsigned long *) 0xFFFFF00C))
\r
50 < #define VICIntEnable (*((volatile unsigned long *) 0xFFFFF010))
\r
51 < #define VICIntEnClr (*((volatile unsigned long *) 0xFFFFF014))
\r
52 < #define VICSoftInt (*((volatile unsigned long *) 0xFFFFF018))
\r
53 < #define VICSoftIntClear (*((volatile unsigned long *) 0xFFFFF01C))
\r
54 < #define VICProtection (*((volatile unsigned long *) 0xFFFFF020))
\r
55 < #define VICVectAddr (*((volatile unsigned long *) 0xFFFFF030))
\r
56 < #define VICDefVectAddr (*((volatile unsigned long *) 0xFFFFF034))
\r
57 < #define VICVectAddr0 (*((volatile unsigned long *) 0xFFFFF100))
\r
58 < #define VICVectAddr1 (*((volatile unsigned long *) 0xFFFFF104))
\r
59 < #define VICVectAddr2 (*((volatile unsigned long *) 0xFFFFF108))
\r
60 < #define VICVectAddr3 (*((volatile unsigned long *) 0xFFFFF10C))
\r
61 < #define VICVectAddr4 (*((volatile unsigned long *) 0xFFFFF110))
\r
62 < #define VICVectAddr5 (*((volatile unsigned long *) 0xFFFFF114))
\r
63 < #define VICVectAddr6 (*((volatile unsigned long *) 0xFFFFF118))
\r
64 < #define VICVectAddr7 (*((volatile unsigned long *) 0xFFFFF11C))
\r
65 < #define VICVectAddr8 (*((volatile unsigned long *) 0xFFFFF120))
\r
66 < #define VICVectAddr9 (*((volatile unsigned long *) 0xFFFFF124))
\r
67 < #define VICVectAddr10 (*((volatile unsigned long *) 0xFFFFF128))
\r
68 < #define VICVectAddr11 (*((volatile unsigned long *) 0xFFFFF12C))
\r
69 < #define VICVectAddr12 (*((volatile unsigned long *) 0xFFFFF130))
\r
70 < #define VICVectAddr13 (*((volatile unsigned long *) 0xFFFFF134))
\r
71 < #define VICVectAddr14 (*((volatile unsigned long *) 0xFFFFF138))
\r
72 < #define VICVectAddr15 (*((volatile unsigned long *) 0xFFFFF13C))
\r
73 < #define VICVectCntl0 (*((volatile unsigned long *) 0xFFFFF200))
\r
74 < #define VICVectCntl1 (*((volatile unsigned long *) 0xFFFFF204))
\r
75 < #define VICVectCntl2 (*((volatile unsigned long *) 0xFFFFF208))
\r
76 < #define VICVectCntl3 (*((volatile unsigned long *) 0xFFFFF20C))
\r
77 < #define VICVectCntl4 (*((volatile unsigned long *) 0xFFFFF210))
\r
78 < #define VICVectCntl5 (*((volatile unsigned long *) 0xFFFFF214))
\r
79 < #define VICVectCntl6 (*((volatile unsigned long *) 0xFFFFF218))
\r
80 < #define VICVectCntl7 (*((volatile unsigned long *) 0xFFFFF21C))
\r
81 < #define VICVectCntl8 (*((volatile unsigned long *) 0xFFFFF220))
\r
82 < #define VICVectCntl9 (*((volatile unsigned long *) 0xFFFFF224))
\r
83 < #define VICVectCntl10 (*((volatile unsigned long *) 0xFFFFF228))
\r
84 < #define VICVectCntl11 (*((volatile unsigned long *) 0xFFFFF22C))
\r
85 < #define VICVectCntl12 (*((volatile unsigned long *) 0xFFFFF230))
\r
86 < #define VICVectCntl13 (*((volatile unsigned long *) 0xFFFFF234))
\r
87 < #define VICVectCntl14 (*((volatile unsigned long *) 0xFFFFF238))
\r
88 < #define VICVectCntl15 (*((volatile unsigned long *) 0xFFFFF23C))
\r
90 < /* Pin Connect Block */
\r
91 < #define PINSEL0 (*((volatile unsigned long *) 0xE002C000))
\r
92 < #define PINSEL1 (*((volatile unsigned long *) 0xE002C004))
\r
93 < #ifdef CONFIG_ARCH_LPC22xx
\r
94 < #define PINSEL2 (*((volatile unsigned long *) 0xE002C014)) /* no in lpc210x*/
\r
97 < /* General Purpose Input/Output (GPIO) */
\r
98 < #ifndef CONFIG_ARCH_LPC22xx
\r
100 < #define IOPIN (*((volatile unsigned long *) 0xE0028000)) /* lpc210x only */
\r
101 < #define IOSET (*((volatile unsigned long *) 0xE0028004)) /* lpc210x only */
\r
102 < #define IODIR (*((volatile unsigned long *) 0xE0028008)) /* lpc210x only */
\r
103 < #define IOCLR (*((volatile unsigned long *) 0xE002800C)) /* lpc210x only */
\r
107 < #ifdef CONFIG_ARCH_LPC22xx
\r
108 < #define IO0PIN (*((volatile unsigned long *) 0xE0028000)) /* no in lpc210x*/
\r
109 < #define IO0SET (*((volatile unsigned long *) 0xE0028004)) /* no in lpc210x*/
\r
110 < #define IO0DIR (*((volatile unsigned long *) 0xE0028008)) /* no in lpc210x*/
\r
111 < #define IO0CLR (*((volatile unsigned long *) 0xE002800C)) /* no in lpc210x*/
\r
113 < #define IO1PIN (*((volatile unsigned long *) 0xE0028010)) /* no in lpc210x*/
\r
114 < #define IO1SET (*((volatile unsigned long *) 0xE0028014)) /* no in lpc210x*/
\r
115 < #define IO1DIR (*((volatile unsigned long *) 0xE0028018)) /* no in lpc210x*/
\r
116 < #define IO1CLR (*((volatile unsigned long *) 0xE002801C)) /* no in lpc210x*/
\r
119 < #ifdef CONFIG_ARCH_LPC22xx
\r
121 < #define IO2PIN (*((volatile unsigned long *) 0xE0028020)) /* lpc22xx only */
\r
122 < #define IO2SET (*((volatile unsigned long *) 0xE0028024)) /* lpc22xx only */
\r
123 < #define IO2DIR (*((volatile unsigned long *) 0xE0028028)) /* lpc22xx only */
\r
124 < #define IO2CLR (*((volatile unsigned long *) 0xE002802C)) /* lpc22xx only */
\r
126 < #define IO3PIN (*((volatile unsigned long *) 0xE0028030)) /* lpc22xx only */
\r
127 < #define IO3SET (*((volatile unsigned long *) 0xE0028034)) /* lpc22xx only */
\r
128 < #define IO3DIR (*((volatile unsigned long *) 0xE0028038)) /* lpc22xx only */
\r
129 < #define IO3CLR (*((volatile unsigned long *) 0xE002803C)) /* lpc22xx only */
\r
133 < /* Universal Asynchronous Receiver Transmitter 0 (UART0) */
\r
134 < #define U0RBR (*((volatile unsigned char *) 0xE000C000))
\r
135 < #define U0THR (*((volatile unsigned char *) 0xE000C000))
\r
136 < #define U0IER (*((volatile unsigned char *) 0xE000C004))
\r
137 < #define U0IIR (*((volatile unsigned char *) 0xE000C008))
\r
138 < #define U0FCR (*((volatile unsigned char *) 0xE000C008))
\r
139 < #define U0LCR (*((volatile unsigned char *) 0xE000C00C))
\r
140 < #define U0LSR (*((volatile unsigned char *) 0xE000C014))
\r
141 < #define U0SCR (*((volatile unsigned char *) 0xE000C01C))
\r
142 < #define U0DLL (*((volatile unsigned char *) 0xE000C000))
\r
143 < #define U0DLM (*((volatile unsigned char *) 0xE000C004))
\r
145 < /* Universal Asynchronous Receiver Transmitter 1 (UART1) */
\r
146 < #define U1RBR (*((volatile unsigned char *) 0xE0010000))
\r
147 < #define U1THR (*((volatile unsigned char *) 0xE0010000))
\r
148 < #define U1IER (*((volatile unsigned char *) 0xE0010004))
\r
149 < #define U1IIR (*((volatile unsigned char *) 0xE0010008))
\r
150 < #define U1FCR (*((volatile unsigned char *) 0xE0010008))
\r
151 < #define U1LCR (*((volatile unsigned char *) 0xE001000C))
\r
152 < #define U1MCR (*((volatile unsigned char *) 0xE0010010))
\r
153 < #define U1LSR (*((volatile unsigned char *) 0xE0010014))
\r
154 < #define U1MSR (*((volatile unsigned char *) 0xE0010018))
\r
155 < #define U1SCR (*((volatile unsigned char *) 0xE001001C))
\r
156 < #define U1DLL (*((volatile unsigned char *) 0xE0010000))
\r
157 < #define U1DLM (*((volatile unsigned char *) 0xE0010004))
\r
159 < /* I2C (8/16 bit data bus) */
\r
160 < #define I2CONSET (*((volatile unsigned char *) 0xE001C000))
\r
161 < #define I2STAT (*((volatile unsigned char *) 0xE001C004))
\r
162 < #define I2DAT (*((volatile unsigned char *) 0xE001C008))
\r
163 < #define I2ADR (*((volatile unsigned char *) 0xE001C00C))
\r
164 < #define I2SCLH (*((volatile unsigned short *) 0xE001C010))
\r
165 < #define I2SCLL (*((volatile unsigned short *) 0xE001C014))
\r
166 < #define I2CONCLR (*((volatile unsigned char *) 0xE001C018))
\r
168 < /* SPI (Serial Peripheral Interface) */
\r
169 < /* only for lpc210x*/
\r
170 < #define SPI_SPCR (*((volatile unsigned char *) 0xE0020000))
\r
171 < #define SPI_SPSR (*((volatile unsigned char *) 0xE0020004))
\r
172 < #define SPI_SPDR (*((volatile unsigned char *) 0xE0020008))
\r
173 < #define SPI_SPCCR (*((volatile unsigned char *) 0xE002000C))
\r
174 < #define SPI_SPINT (*((volatile unsigned char *) 0xE002001C))
\r
176 < #ifdef CONFIG_ARCH_LPC22xx
\r
177 < #define S0PCR (*((volatile unsigned char *) 0xE0020000)) /* no in lpc210x*/
\r
178 < #define S0PSR (*((volatile unsigned char *) 0xE0020004)) /* no in lpc210x*/
\r
179 < #define S0PDR (*((volatile unsigned char *) 0xE0020008)) /* no in lpc210x*/
\r
180 < #define S0PCCR (*((volatile unsigned char *) 0xE002000C)) /* no in lpc210x*/
\r
181 < #define S0PINT (*((volatile unsigned char *) 0xE002001C)) /* no in lpc210x*/
\r
183 < #define S1PCR (*((volatile unsigned char *) 0xE0030000)) /* no in lpc210x*/
\r
184 < #define S1PSR (*((volatile unsigned char *) 0xE0030004)) /* no in lpc210x*/
\r
185 < #define S1PDR (*((volatile unsigned char *) 0xE0030008)) /* no in lpc210x*/
\r
186 < #define S1PCCR (*((volatile unsigned char *) 0xE003000C)) /* no in lpc210x*/
\r
187 < #define S1PINT (*((volatile unsigned char *) 0xE003001C)) /* no in lpc210x*/
\r
189 < /* CAN CONTROLLERS AND ACCEPTANCE FILTER */
\r
190 < #define CAN1MOD (*((volatile unsigned long *) 0xE0044000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
191 < #define CAN1CMR (*((volatile unsigned long *) 0xE0044004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
192 < #define CAN1GSR (*((volatile unsigned long *) 0xE0044008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
193 < #define CAN1ICR (*((volatile unsigned long *) 0xE004400C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
194 < #define CAN1IER (*((volatile unsigned long *) 0xE0044010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
195 < #define CAN1BTR (*((volatile unsigned long *) 0xE0044014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
196 < #define CAN1EWL (*((volatile unsigned long *) 0xE004401C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
197 < #define CAN1SR (*((volatile unsigned long *) 0xE0044020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
198 < #define CAN1RFS (*((volatile unsigned long *) 0xE0044024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
199 < #define CAN1RDA (*((volatile unsigned long *) 0xE0044028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
200 < #define CAN1RDB (*((volatile unsigned long *) 0xE004402C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
201 < #define CAN1TFI1 (*((volatile unsigned long *) 0xE0044030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
202 < #define CAN1TID1 (*((volatile unsigned long *) 0xE0044034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
203 < #define CAN1TDA1 (*((volatile unsigned long *) 0xE0044038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
204 < #define CAN1TDB1 (*((volatile unsigned long *) 0xE004403C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
205 < #define CAN1TFI2 (*((volatile unsigned long *) 0xE0044040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
206 < #define CAN1TID2 (*((volatile unsigned long *) 0xE0044044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
207 < #define CAN1TDA2 (*((volatile unsigned long *) 0xE0044048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
208 < #define CAN1TDB2 (*((volatile unsigned long *) 0xE004404C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
209 < #define CAN1TFI3 (*((volatile unsigned long *) 0xE0044050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
210 < #define CAN1TID3 (*((volatile unsigned long *) 0xE0044054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
211 < #define CAN1TDA3 (*((volatile unsigned long *) 0xE0044058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
212 < #define CAN1TDB3 (*((volatile unsigned long *) 0xE004405C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
214 < #define CAN2MOD (*((volatile unsigned long *) 0xE0048000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
215 < #define CAN2CMR (*((volatile unsigned long *) 0xE0048004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
216 < #define CAN2GSR (*((volatile unsigned long *) 0xE0048008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
217 < #define CAN2ICR (*((volatile unsigned long *) 0xE004800C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
218 < #define CAN2IER (*((volatile unsigned long *) 0xE0048010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
219 < #define CAN2BTR (*((volatile unsigned long *) 0xE0048014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
220 < #define CAN2EWL (*((volatile unsigned long *) 0xE004801C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
221 < #define CAN2SR (*((volatile unsigned long *) 0xE0048020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
222 < #define CAN2RFS (*((volatile unsigned long *) 0xE0048024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
223 < #define CAN2RDA (*((volatile unsigned long *) 0xE0048028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
224 < #define CAN2RDB (*((volatile unsigned long *) 0xE004802C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
225 < #define CAN2TFI1 (*((volatile unsigned long *) 0xE0048030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
226 < #define CAN2TID1 (*((volatile unsigned long *) 0xE0048034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
227 < #define CAN2TDA1 (*((volatile unsigned long *) 0xE0048038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
228 < #define CAN2TDB1 (*((volatile unsigned long *) 0xE004803C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
229 < #define CAN2TFI2 (*((volatile unsigned long *) 0xE0048040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
230 < #define CAN2TID2 (*((volatile unsigned long *) 0xE0048044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
231 < #define CAN2TDA2 (*((volatile unsigned long *) 0xE0048048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
232 < #define CAN2TDB2 (*((volatile unsigned long *) 0xE004804C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
233 < #define CAN2TFI3 (*((volatile unsigned long *) 0xE0048050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
234 < #define CAN2TID3 (*((volatile unsigned long *) 0xE0048054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
235 < #define CAN2TDA3 (*((volatile unsigned long *) 0xE0048058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
236 < #define CAN2TDB3 (*((volatile unsigned long *) 0xE004805C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
238 < #define CAN3MOD (*((volatile unsigned long *) 0xE004C000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
239 < #define CAN3CMR (*((volatile unsigned long *) 0xE004C004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
240 < #define CAN3GSR (*((volatile unsigned long *) 0xE004C008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
241 < #define CAN3ICR (*((volatile unsigned long *) 0xE004C00C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
242 < #define CAN3IER (*((volatile unsigned long *) 0xE004C010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
243 < #define CAN3BTR (*((volatile unsigned long *) 0xE004C014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
244 < #define CAN3EWL (*((volatile unsigned long *) 0xE004C01C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
245 < #define CAN3SR (*((volatile unsigned long *) 0xE004C020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
246 < #define CAN3RFS (*((volatile unsigned long *) 0xE004C024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
247 < #define CAN3RDA (*((volatile unsigned long *) 0xE004C028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
248 < #define CAN3RDB (*((volatile unsigned long *) 0xE004C02C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
249 < #define CAN3TFI1 (*((volatile unsigned long *) 0xE004C030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
250 < #define CAN3TID1 (*((volatile unsigned long *) 0xE004C034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
251 < #define CAN3TDA1 (*((volatile unsigned long *) 0xE004C038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
252 < #define CAN3TDB1 (*((volatile unsigned long *) 0xE004C03C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
253 < #define CAN3TFI2 (*((volatile unsigned long *) 0xE004C040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
254 < #define CAN3TID2 (*((volatile unsigned long *) 0xE004C044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
255 < #define CAN3TDA2 (*((volatile unsigned long *) 0xE004C048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
256 < #define CAN3TDB2 (*((volatile unsigned long *) 0xE004C04C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
257 < #define CAN3TFI3 (*((volatile unsigned long *) 0xE004C050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
258 < #define CAN3TID3 (*((volatile unsigned long *) 0xE004C054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
259 < #define CAN3TDA3 (*((volatile unsigned long *) 0xE004C058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
260 < #define CAN3TDB3 (*((volatile unsigned long *) 0xE004C05C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
262 < #define CAN4MOD (*((volatile unsigned long *) 0xE0050000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
263 < #define CAN4CMR (*((volatile unsigned long *) 0xE0050004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
264 < #define CAN4GSR (*((volatile unsigned long *) 0xE0050008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
265 < #define CAN4ICR (*((volatile unsigned long *) 0xE005000C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
266 < #define CAN4IER (*((volatile unsigned long *) 0xE0050010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
267 < #define CAN4BTR (*((volatile unsigned long *) 0xE0050014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
268 < #define CAN4EWL (*((volatile unsigned long *) 0xE005001C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
269 < #define CAN4SR (*((volatile unsigned long *) 0xE0050020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
270 < #define CAN4RFS (*((volatile unsigned long *) 0xE0050024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
271 < #define CAN4RDA (*((volatile unsigned long *) 0xE0050028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
272 < #define CAN4RDB (*((volatile unsigned long *) 0xE005002C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
273 < #define CAN4TFI1 (*((volatile unsigned long *) 0xE0050030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
274 < #define CAN4TID1 (*((volatile unsigned long *) 0xE0050034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
275 < #define CAN4TDA1 (*((volatile unsigned long *) 0xE0050038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
276 < #define CAN4TDB1 (*((volatile unsigned long *) 0xE005003C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
277 < #define CAN4TFI2 (*((volatile unsigned long *) 0xE0050040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
278 < #define CAN4TID2 (*((volatile unsigned long *) 0xE0050044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
279 < #define CAN4TDA2 (*((volatile unsigned long *) 0xE0050048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
280 < #define CAN4TDB2 (*((volatile unsigned long *) 0xE005004C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
281 < #define CAN4TFI3 (*((volatile unsigned long *) 0xE0050050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
282 < #define CAN4TID3 (*((volatile unsigned long *) 0xE0050054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
283 < #define CAN4TDA3 (*((volatile unsigned long *) 0xE0050058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
284 < #define CAN4TDB3 (*((volatile unsigned long *) 0xE005005C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
286 < #define CAN5MOD (*((volatile unsigned long *) 0xE0054000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
287 < #define CAN5CMR (*((volatile unsigned long *) 0xE0054004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
288 < #define CAN5GSR (*((volatile unsigned long *) 0xE0054008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
289 < #define CAN5ICR (*((volatile unsigned long *) 0xE005400C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
290 < #define CAN5IER (*((volatile unsigned long *) 0xE0054010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
291 < #define CAN5BTR (*((volatile unsigned long *) 0xE0054014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
292 < #define CAN5EWL (*((volatile unsigned long *) 0xE005401C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
293 < #define CAN5SR (*((volatile unsigned long *) 0xE0054020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
294 < #define CAN5RFS (*((volatile unsigned long *) 0xE0054024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
295 < #define CAN5RDA (*((volatile unsigned long *) 0xE0054028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
296 < #define CAN5RDB (*((volatile unsigned long *) 0xE005402C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
297 < #define CAN5TFI1 (*((volatile unsigned long *) 0xE0054030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
298 < #define CAN5TID1 (*((volatile unsigned long *) 0xE0054034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
299 < #define CAN5TDA1 (*((volatile unsigned long *) 0xE0054038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
300 < #define CAN5TDB1 (*((volatile unsigned long *) 0xE005403C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
301 < #define CAN5TFI2 (*((volatile unsigned long *) 0xE0054040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
302 < #define CAN5TID2 (*((volatile unsigned long *) 0xE0054044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
303 < #define CAN5TDA2 (*((volatile unsigned long *) 0xE0054048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
304 < #define CAN5TDB2 (*((volatile unsigned long *) 0xE005404C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
305 < #define CAN5TFI3 (*((volatile unsigned long *) 0xE0054050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
306 < #define CAN5TID3 (*((volatile unsigned long *) 0xE0054054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
307 < #define CAN5TDA3 (*((volatile unsigned long *) 0xE0054058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
308 < #define CAN5TDB3 (*((volatile unsigned long *) 0xE005405C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
310 < #ifdef CONFIG_ARCH_LPC22xx
\r
311 < #define CAN6MOD (*((volatile unsigned long *) 0xE0058000)) /* lpc2292\lpc2294 only */
\r
312 < #define CAN6CMR (*((volatile unsigned long *) 0xE0058004)) /* lpc2292\lpc2294 only */
\r
313 < #define CAN6GSR (*((volatile unsigned long *) 0xE0058008)) /* lpc2292\lpc2294 only */
\r
314 < #define CAN6ICR (*((volatile unsigned long *) 0xE005800C)) /* lpc2292\lpc2294 only */
\r
315 < #define CAN6IER (*((volatile unsigned long *) 0xE0058010)) /* lpc2292\lpc2294 only */
\r
316 < #define CAN6BTR (*((volatile unsigned long *) 0xE0058014)) /* lpc2292\lpc2294 only */
\r
317 < #define CAN6EWL (*((volatile unsigned long *) 0xE005801C)) /* lpc2292\lpc2294 only */
\r
318 < #define CAN6SR (*((volatile unsigned long *) 0xE0058020)) /* lpc2292\lpc2294 only */
\r
319 < #define CAN6RFS (*((volatile unsigned long *) 0xE0058024)) /* lpc2292\lpc2294 only */
\r
320 < #define CAN6RDA (*((volatile unsigned long *) 0xE0058028)) /* lpc2292\lpc2294 only */
\r
321 < #define CAN6RDB (*((volatile unsigned long *) 0xE005802C)) /* lpc2292\lpc2294 only */
\r
322 < #define CAN6TFI1 (*((volatile unsigned long *) 0xE0058030)) /* lpc2292\lpc2294 only */
\r
323 < #define CAN6TID1 (*((volatile unsigned long *) 0xE0058034)) /* lpc2292\lpc2294 only */
\r
324 < #define CAN6TDA1 (*((volatile unsigned long *) 0xE0058038)) /* lpc2292\lpc2294 only */
\r
325 < #define CAN6TDB1 (*((volatile unsigned long *) 0xE005803C)) /* lpc2292\lpc2294 only */
\r
326 < #define CAN6TFI2 (*((volatile unsigned long *) 0xE0058040)) /* lpc2292\lpc2294 only */
\r
327 < #define CAN6TID2 (*((volatile unsigned long *) 0xE0058044)) /* lpc2292\lpc2294 only */
\r
328 < #define CAN6TDA2 (*((volatile unsigned long *) 0xE0058048)) /* lpc2292\lpc2294 only */
\r
329 < #define CAN6TDB2 (*((volatile unsigned long *) 0xE005804C)) /* lpc2292\lpc2294 only */
\r
330 < #define CAN6TFI3 (*((volatile unsigned long *) 0xE0058050)) /* lpc2292\lpc2294 only */
\r
331 < #define CAN6TID3 (*((volatile unsigned long *) 0xE0058054)) /* lpc2292\lpc2294 only */
\r
332 < #define CAN6TDA3 (*((volatile unsigned long *) 0xE0058058)) /* lpc2292\lpc2294 only */
\r
333 < #define CAN6TDB3 (*((volatile unsigned long *) 0xE005805C)) /* lpc2292\lpc2294 only */
\r
336 < #define CANTxSR (*((volatile unsigned long *) 0xE0040000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
337 < #define CANRxSR (*((volatile unsigned long *) 0xE0040004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
338 < #define CANMSR (*((volatile unsigned long *) 0xE0040008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
340 < #define CANAFMR (*((volatile unsigned long *) 0xE003C000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
341 < #define CANSFF_sa (*((volatile unsigned long *) 0xE003C004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
342 < #define CANSFF_GRP_sa (*((volatile unsigned long *) 0xE003C008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
343 < #define CANEFF_sa (*((volatile unsigned long *) 0xE003C00C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
344 < #define CANEFF_GRP_sa (*((volatile unsigned long *) 0xE003C010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
345 < #define CANENDofTable (*((volatile unsigned long *) 0xE003C014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
346 < #define CANLUTerrAd (*((volatile unsigned long *) 0xE003C018)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
347 < #define CANLUTerr (*((volatile unsigned long *) 0xE003C01C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
\r
348 < /* CAN Acceptance Filter RAM */
\r
349 < #define CANAFRAM (*((volatile unsigned long *) 0xE0038000))
\r
353 < #define T0IR (*((volatile unsigned long *) 0xE0004000))
\r
354 < #define T0TCR (*((volatile unsigned long *) 0xE0004004))
\r
355 < #define T0TC (*((volatile unsigned long *) 0xE0004008))
\r
356 < #define T0PR (*((volatile unsigned long *) 0xE000400C))
\r
357 < #define T0PC (*((volatile unsigned long *) 0xE0004010))
\r
358 < #define T0MCR (*((volatile unsigned long *) 0xE0004014))
\r
359 < #define T0MR0 (*((volatile unsigned long *) 0xE0004018))
\r
360 < #define T0MR1 (*((volatile unsigned long *) 0xE000401C))
\r
361 < #define T0MR2 (*((volatile unsigned long *) 0xE0004020))
\r
362 < #define T0MR3 (*((volatile unsigned long *) 0xE0004024))
\r
363 < #define T0CCR (*((volatile unsigned long *) 0xE0004028))
\r
364 < #define T0CR0 (*((volatile unsigned long *) 0xE000402C))
\r
365 < #define T0CR1 (*((volatile unsigned long *) 0xE0004030))
\r
366 < #define T0CR2 (*((volatile unsigned long *) 0xE0004034))
\r
367 < #define T0CR3 (*((volatile unsigned long *) 0xE0004038))
\r
368 < #define T0EMR (*((volatile unsigned long *) 0xE000403C))
\r
371 < #define T1IR (*((volatile unsigned long *) 0xE0008000))
\r
372 < #define T1TCR (*((volatile unsigned long *) 0xE0008004))
\r
373 < #define T1TC (*((volatile unsigned long *) 0xE0008008))
\r
374 < #define T1PR (*((volatile unsigned long *) 0xE000800C))
\r
375 < #define T1PC (*((volatile unsigned long *) 0xE0008010))
\r
376 < #define T1MCR (*((volatile unsigned long *) 0xE0008014))
\r
377 < #define T1MR0 (*((volatile unsigned long *) 0xE0008018))
\r
378 < #define T1MR1 (*((volatile unsigned long *) 0xE000801C))
\r
379 < #define T1MR2 (*((volatile unsigned long *) 0xE0008020))
\r
380 < #define T1MR3 (*((volatile unsigned long *) 0xE0008024))
\r
381 < #define T1CCR (*((volatile unsigned long *) 0xE0008028))
\r
382 < #define T1CR0 (*((volatile unsigned long *) 0xE000802C))
\r
383 < #define T1CR1 (*((volatile unsigned long *) 0xE0008030))
\r
384 < #define T1CR2 (*((volatile unsigned long *) 0xE0008034))
\r
385 < #define T1CR3 (*((volatile unsigned long *) 0xE0008038))
\r
386 < #define T1EMR (*((volatile unsigned long *) 0xE000803C))
\r
388 < /* Pulse Width Modulator (PWM) */
\r
389 < #define PWMIR (*((volatile unsigned long *) 0xE0014000))
\r
390 < #define PWMTCR (*((volatile unsigned long *) 0xE0014004))
\r
391 < #define PWMTC (*((volatile unsigned long *) 0xE0014008))
\r
392 < #define PWMPR (*((volatile unsigned long *) 0xE001400C))
\r
393 < #define PWMPC (*((volatile unsigned long *) 0xE0014010))
\r
394 < #define PWMMCR (*((volatile unsigned long *) 0xE0014014))
\r
395 < #define PWMMR0 (*((volatile unsigned long *) 0xE0014018))
\r
396 < #define PWMMR1 (*((volatile unsigned long *) 0xE001401C))
\r
397 < #define PWMMR2 (*((volatile unsigned long *) 0xE0014020))
\r
398 < #define PWMMR3 (*((volatile unsigned long *) 0xE0014024))
\r
399 < #define PWMMR4 (*((volatile unsigned long *) 0xE0014040))
\r
400 < #define PWMMR5 (*((volatile unsigned long *) 0xE0014044))
\r
401 < #define PWMMR6 (*((volatile unsigned long *) 0xE0014048))
\r
402 < #define PWMPCR (*((volatile unsigned long *) 0xE001404C))
\r
403 < #define PWMLER (*((volatile unsigned long *) 0xE0014050))
\r
405 < /* A/D CONVERTER */
\r
406 < #ifndef CONFIG_ARCH_LPC2104
\r
407 < #define ADCR (*((volatile unsigned long *) 0xE0034000)) /* no in lpc210x*/
\r
408 < #define ADDR (*((volatile unsigned long *) 0xE0034004)) /* no in lpc210x*/
\r
411 < /* Real Time Clock */
\r
412 < #define ILR (*((volatile unsigned char *) 0xE0024000))
\r
413 < #define CTC (*((volatile unsigned short*) 0xE0024004))
\r
414 < #define CCR (*((volatile unsigned char *) 0xE0024008))
\r
415 < #define CIIR (*((volatile unsigned char *) 0xE002400C))
\r
416 < #define AMR (*((volatile unsigned char *) 0xE0024010))
\r
417 < #define CTIME0 (*((volatile unsigned long *) 0xE0024014))
\r
418 < #define CTIME1 (*((volatile unsigned long *) 0xE0024018))
\r
419 < #define CTIME2 (*((volatile unsigned long *) 0xE002401C))
\r
420 < #define SEC (*((volatile unsigned char *) 0xE0024020))
\r
421 < #define MIN (*((volatile unsigned char *) 0xE0024024))
\r
422 < #define HOUR (*((volatile unsigned char *) 0xE0024028))
\r
423 < #define DOM (*((volatile unsigned char *) 0xE002402C))
\r
424 < #define DOW (*((volatile unsigned char *) 0xE0024030))
\r
425 < #define DOY (*((volatile unsigned short*) 0xE0024034))
\r
426 < #define MONTH (*((volatile unsigned char *) 0xE0024038))
\r
427 < #define YEAR (*((volatile unsigned short*) 0xE002403C))
\r
428 < #define ALSEC (*((volatile unsigned char *) 0xE0024060))
\r
429 < #define ALMIN (*((volatile unsigned char *) 0xE0024064))
\r
430 < #define ALHOUR (*((volatile unsigned char *) 0xE0024068))
\r
431 < #define ALDOM (*((volatile unsigned char *) 0xE002406C))
\r
432 < #define ALDOW (*((volatile unsigned char *) 0xE0024070))
\r
433 < #define ALDOY (*((volatile unsigned short*) 0xE0024074))
\r
434 < #define ALMON (*((volatile unsigned char *) 0xE0024078))
\r
435 < #define ALYEAR (*((volatile unsigned short*) 0xE002407C))
\r
436 < #define PREINT (*((volatile unsigned short*) 0xE0024080))
\r
437 < #define PREFRAC (*((volatile unsigned short*) 0xE0024084))
\r
440 < #define WDMOD (*((volatile unsigned char *) 0xE0000000))
\r
441 < #define WDTC (*((volatile unsigned long *) 0xE0000004))
\r
442 < #define WDFEED (*((volatile unsigned char *) 0xE0000008))
\r
443 < #define WDTV (*((volatile unsigned long *) 0xE000000C))
\r
446 < Register define for constant
\r
448 < #define REG_U0RBR 0xE000C000
\r
449 < #define REG_U1RBR 0xE0010000
\r
452 < #define REG_PLLCON 0xE01FC080
\r
453 < #define REG_PLLCFG 0xE01FC084
\r
454 < #define REG_PLLSTAT 0xE01FC088
\r
455 < #define REG_PLLFEED 0xE01FC08C
\r
457 < /* Power Control */
\r
459 < #define REG_PCON 0xE01FC0C0
\r
460 < #define REG_PCOMP 0xE01FC0C4
\r
461 < #define REG_PINSEL0 0xE002C000
\r
462 < #define REG_MEMMAP 0xE01FC040
\r
463 < #define REG_PLLSTAT 0xE01FC088
\r
464 < #define REG_VPBDIV 0xE01FC100
\r
468 < #define LPC22xx_Fcclk CONFIG_ARM_CLK /* system clk frequecy,<=60Mhz, defined in system configuration */
\r
469 < #define LPC22xx_Fcco LPC22xx_Fcclk * 4
\r
470 < #define LPC22xx_Fpclk (LPC22xx_Fcclk /4) *1 /*VPB clk frequency,1,1/2,1/4 times of Fcclk */
\r
473 < /*********************************************************************************************************
\r
475 < ********************************************************************************************************/
\r
478 > #define __ASM_ARCH_LPC22xx_H
480 > /* EXTERNAL MEMORY CONTROLLER (EMC) */
481 > #define BCFG0 (*((volatile unsigned int *) 0xFFE00000)) /* lpc22xx only */
482 > #define BCFG1 (*((volatile unsigned int *) 0xFFE00004)) /* lpc22xx only */
483 > #define BCFG2 (*((volatile unsigned int *) 0xFFE00008)) /* lpc22xx only */
484 > #define BCFG3 (*((volatile unsigned int *) 0xFFE0000C)) /* lpc22xx only */
486 > /* External Interrupts */
487 > #define EXTINT (*((volatile unsigned char *) 0xE01FC140))
488 > #define EXTWAKE (*((volatile unsigned char *) 0xE01FC144))
489 > #ifdef CONFIG_ARCH_LPC22xx
490 > #define EXTMODE (*((volatile unsigned char *) 0xE01FC148)) /* no in lpc210x*/
491 > #define EXTPOLAR (*((volatile unsigned char *) 0xE01FC14C)) /* no in lpc210x*/
494 > /* SMemory mapping control. */
495 > #define MEMMAP (*((volatile unsigned char *) 0xE01FC040))
497 > /* Phase Locked Loop (PLL) */
498 > #define PLLCON (*((volatile unsigned char *) 0xE01FC080))
499 > #define PLLCFG (*((volatile unsigned char *) 0xE01FC084))
500 > #define PLLSTAT (*((volatile unsigned short*) 0xE01FC088))
501 > #define PLLFEED (*((volatile unsigned char *) 0xE01FC08C))
503 > /* Power Control */
504 > #define PCON (*((volatile unsigned char *) 0xE01FC0C0))
505 > #define PCONP (*((volatile unsigned long *) 0xE01FC0C4))
508 > #define VPBDIV (*((volatile unsigned char *) 0xE01FC100))
510 > /* Memory Accelerator Module (MAM) */
511 > #define MAMCR (*((volatile unsigned char *) 0xE01FC000))
512 > #define MAMTIM (*((volatile unsigned char *) 0xE01FC004))
514 > /* Vectored Interrupt Controller (VIC) */
515 > #define VICIRQStatus (*((volatile unsigned long *) 0xFFFFF000))
516 > #define VICFIQStatus (*((volatile unsigned long *) 0xFFFFF004))
517 > #define VICRawIntr (*((volatile unsigned long *) 0xFFFFF008))
518 > #define VICIntSelect (*((volatile unsigned long *) 0xFFFFF00C))
519 > #define VICIntEnable (*((volatile unsigned long *) 0xFFFFF010))
520 > #define VICIntEnClr (*((volatile unsigned long *) 0xFFFFF014))
521 > #define VICSoftInt (*((volatile unsigned long *) 0xFFFFF018))
522 > #define VICSoftIntClear (*((volatile unsigned long *) 0xFFFFF01C))
523 > #define VICProtection (*((volatile unsigned long *) 0xFFFFF020))
524 > #define VICVectAddr (*((volatile unsigned long *) 0xFFFFF030))
525 > #define VICDefVectAddr (*((volatile unsigned long *) 0xFFFFF034))
526 > #define VICVectAddr0 (*((volatile unsigned long *) 0xFFFFF100))
527 > #define VICVectAddr1 (*((volatile unsigned long *) 0xFFFFF104))
528 > #define VICVectAddr2 (*((volatile unsigned long *) 0xFFFFF108))
529 > #define VICVectAddr3 (*((volatile unsigned long *) 0xFFFFF10C))
530 > #define VICVectAddr4 (*((volatile unsigned long *) 0xFFFFF110))
531 > #define VICVectAddr5 (*((volatile unsigned long *) 0xFFFFF114))
532 > #define VICVectAddr6 (*((volatile unsigned long *) 0xFFFFF118))
533 > #define VICVectAddr7 (*((volatile unsigned long *) 0xFFFFF11C))
534 > #define VICVectAddr8 (*((volatile unsigned long *) 0xFFFFF120))
535 > #define VICVectAddr9 (*((volatile unsigned long *) 0xFFFFF124))
536 > #define VICVectAddr10 (*((volatile unsigned long *) 0xFFFFF128))
537 > #define VICVectAddr11 (*((volatile unsigned long *) 0xFFFFF12C))
538 > #define VICVectAddr12 (*((volatile unsigned long *) 0xFFFFF130))
539 > #define VICVectAddr13 (*((volatile unsigned long *) 0xFFFFF134))
540 > #define VICVectAddr14 (*((volatile unsigned long *) 0xFFFFF138))
541 > #define VICVectAddr15 (*((volatile unsigned long *) 0xFFFFF13C))
542 > #define VICVectCntl0 (*((volatile unsigned long *) 0xFFFFF200))
543 > #define VICVectCntl1 (*((volatile unsigned long *) 0xFFFFF204))
544 > #define VICVectCntl2 (*((volatile unsigned long *) 0xFFFFF208))
545 > #define VICVectCntl3 (*((volatile unsigned long *) 0xFFFFF20C))
546 > #define VICVectCntl4 (*((volatile unsigned long *) 0xFFFFF210))
547 > #define VICVectCntl5 (*((volatile unsigned long *) 0xFFFFF214))
548 > #define VICVectCntl6 (*((volatile unsigned long *) 0xFFFFF218))
549 > #define VICVectCntl7 (*((volatile unsigned long *) 0xFFFFF21C))
550 > #define VICVectCntl8 (*((volatile unsigned long *) 0xFFFFF220))
551 > #define VICVectCntl9 (*((volatile unsigned long *) 0xFFFFF224))
552 > #define VICVectCntl10 (*((volatile unsigned long *) 0xFFFFF228))
553 > #define VICVectCntl11 (*((volatile unsigned long *) 0xFFFFF22C))
554 > #define VICVectCntl12 (*((volatile unsigned long *) 0xFFFFF230))
555 > #define VICVectCntl13 (*((volatile unsigned long *) 0xFFFFF234))
556 > #define VICVectCntl14 (*((volatile unsigned long *) 0xFFFFF238))
557 > #define VICVectCntl15 (*((volatile unsigned long *) 0xFFFFF23C))
559 > /* Pin Connect Block */
560 > #define PINSEL0 (*((volatile unsigned long *) 0xE002C000))
561 > #define PINSEL1 (*((volatile unsigned long *) 0xE002C004))
562 > #ifdef CONFIG_ARCH_LPC22xx
563 > #define PINSEL2 (*((volatile unsigned long *) 0xE002C014)) /* no in lpc210x*/
566 > /* General Purpose Input/Output (GPIO) */
567 > #ifndef CONFIG_ARCH_LPC22xx
569 > #define IOPIN (*((volatile unsigned long *) 0xE0028000)) /* lpc210x only */
570 > #define IOSET (*((volatile unsigned long *) 0xE0028004)) /* lpc210x only */
571 > #define IODIR (*((volatile unsigned long *) 0xE0028008)) /* lpc210x only */
572 > #define IOCLR (*((volatile unsigned long *) 0xE002800C)) /* lpc210x only */
576 > #ifdef CONFIG_ARCH_LPC22xx
577 > #define IO0PIN (*((volatile unsigned long *) 0xE0028000)) /* no in lpc210x*/
578 > #define IO0SET (*((volatile unsigned long *) 0xE0028004)) /* no in lpc210x*/
579 > #define IO0DIR (*((volatile unsigned long *) 0xE0028008)) /* no in lpc210x*/
580 > #define IO0CLR (*((volatile unsigned long *) 0xE002800C)) /* no in lpc210x*/
582 > #define IO1PIN (*((volatile unsigned long *) 0xE0028010)) /* no in lpc210x*/
583 > #define IO1SET (*((volatile unsigned long *) 0xE0028014)) /* no in lpc210x*/
584 > #define IO1DIR (*((volatile unsigned long *) 0xE0028018)) /* no in lpc210x*/
585 > #define IO1CLR (*((volatile unsigned long *) 0xE002801C)) /* no in lpc210x*/
588 > #ifdef CONFIG_ARCH_LPC22xx
590 > #define IO2PIN (*((volatile unsigned long *) 0xE0028020)) /* lpc22xx only */
591 > #define IO2SET (*((volatile unsigned long *) 0xE0028024)) /* lpc22xx only */
592 > #define IO2DIR (*((volatile unsigned long *) 0xE0028028)) /* lpc22xx only */
593 > #define IO2CLR (*((volatile unsigned long *) 0xE002802C)) /* lpc22xx only */
595 > #define IO3PIN (*((volatile unsigned long *) 0xE0028030)) /* lpc22xx only */
596 > #define IO3SET (*((volatile unsigned long *) 0xE0028034)) /* lpc22xx only */
597 > #define IO3DIR (*((volatile unsigned long *) 0xE0028038)) /* lpc22xx only */
598 > #define IO3CLR (*((volatile unsigned long *) 0xE002803C)) /* lpc22xx only */
602 > /* Universal Asynchronous Receiver Transmitter 0 (UART0) */
603 > #define U0RBR (*((volatile unsigned char *) 0xE000C000))
604 > #define U0THR (*((volatile unsigned char *) 0xE000C000))
605 > #define U0IER (*((volatile unsigned char *) 0xE000C004))
606 > #define U0IIR (*((volatile unsigned char *) 0xE000C008))
607 > #define U0FCR (*((volatile unsigned char *) 0xE000C008))
608 > #define U0LCR (*((volatile unsigned char *) 0xE000C00C))
609 > #define U0LSR (*((volatile unsigned char *) 0xE000C014))
610 > #define U0SCR (*((volatile unsigned char *) 0xE000C01C))
611 > #define U0DLL (*((volatile unsigned char *) 0xE000C000))
612 > #define U0DLM (*((volatile unsigned char *) 0xE000C004))
614 > /* Universal Asynchronous Receiver Transmitter 1 (UART1) */
615 > #define U1RBR (*((volatile unsigned char *) 0xE0010000))
616 > #define U1THR (*((volatile unsigned char *) 0xE0010000))
617 > #define U1IER (*((volatile unsigned char *) 0xE0010004))
618 > #define U1IIR (*((volatile unsigned char *) 0xE0010008))
619 > #define U1FCR (*((volatile unsigned char *) 0xE0010008))
620 > #define U1LCR (*((volatile unsigned char *) 0xE001000C))
621 > #define U1MCR (*((volatile unsigned char *) 0xE0010010))
622 > #define U1LSR (*((volatile unsigned char *) 0xE0010014))
623 > #define U1MSR (*((volatile unsigned char *) 0xE0010018))
624 > #define U1SCR (*((volatile unsigned char *) 0xE001001C))
625 > #define U1DLL (*((volatile unsigned char *) 0xE0010000))
626 > #define U1DLM (*((volatile unsigned char *) 0xE0010004))
628 > /* I2C (8/16 bit data bus) */
629 > #define I2CONSET (*((volatile unsigned char *) 0xE001C000))
630 > #define I2STAT (*((volatile unsigned char *) 0xE001C004))
631 > #define I2DAT (*((volatile unsigned char *) 0xE001C008))
632 > #define I2ADR (*((volatile unsigned char *) 0xE001C00C))
633 > #define I2SCLH (*((volatile unsigned short *) 0xE001C010))
634 > #define I2SCLL (*((volatile unsigned short *) 0xE001C014))
635 > #define I2CONCLR (*((volatile unsigned char *) 0xE001C018))
637 > /* SPI (Serial Peripheral Interface) */
638 > /* only for lpc210x*/
639 > #define SPI_SPCR (*((volatile unsigned char *) 0xE0020000))
640 > #define SPI_SPSR (*((volatile unsigned char *) 0xE0020004))
641 > #define SPI_SPDR (*((volatile unsigned char *) 0xE0020008))
642 > #define SPI_SPCCR (*((volatile unsigned char *) 0xE002000C))
643 > #define SPI_SPINT (*((volatile unsigned char *) 0xE002001C))
645 > #ifdef CONFIG_ARCH_LPC22xx
646 > #define S0PCR (*((volatile unsigned char *) 0xE0020000)) /* no in lpc210x*/
647 > #define S0PSR (*((volatile unsigned char *) 0xE0020004)) /* no in lpc210x*/
648 > #define S0PDR (*((volatile unsigned char *) 0xE0020008)) /* no in lpc210x*/
649 > #define S0PCCR (*((volatile unsigned char *) 0xE002000C)) /* no in lpc210x*/
650 > #define S0PINT (*((volatile unsigned char *) 0xE002001C)) /* no in lpc210x*/
652 > #define S1PCR (*((volatile unsigned char *) 0xE0030000)) /* no in lpc210x*/
653 > #define S1PSR (*((volatile unsigned char *) 0xE0030004)) /* no in lpc210x*/
654 > #define S1PDR (*((volatile unsigned char *) 0xE0030008)) /* no in lpc210x*/
655 > #define S1PCCR (*((volatile unsigned char *) 0xE003000C)) /* no in lpc210x*/
656 > #define S1PINT (*((volatile unsigned char *) 0xE003001C)) /* no in lpc210x*/
658 > /* CAN CONTROLLERS AND ACCEPTANCE FILTER */
659 > #define CAN1MOD (*((volatile unsigned long *) 0xE0044000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
660 > #define CAN1CMR (*((volatile unsigned long *) 0xE0044004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
661 > #define CAN1GSR (*((volatile unsigned long *) 0xE0044008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
662 > #define CAN1ICR (*((volatile unsigned long *) 0xE004400C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
663 > #define CAN1IER (*((volatile unsigned long *) 0xE0044010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
664 > #define CAN1BTR (*((volatile unsigned long *) 0xE0044014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
665 > #define CAN1EWL (*((volatile unsigned long *) 0xE004401C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
666 > #define CAN1SR (*((volatile unsigned long *) 0xE0044020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
667 > #define CAN1RFS (*((volatile unsigned long *) 0xE0044024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
668 > #define CAN1RDA (*((volatile unsigned long *) 0xE0044028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
669 > #define CAN1RDB (*((volatile unsigned long *) 0xE004402C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
670 > #define CAN1TFI1 (*((volatile unsigned long *) 0xE0044030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
671 > #define CAN1TID1 (*((volatile unsigned long *) 0xE0044034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
672 > #define CAN1TDA1 (*((volatile unsigned long *) 0xE0044038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
673 > #define CAN1TDB1 (*((volatile unsigned long *) 0xE004403C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
674 > #define CAN1TFI2 (*((volatile unsigned long *) 0xE0044040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
675 > #define CAN1TID2 (*((volatile unsigned long *) 0xE0044044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
676 > #define CAN1TDA2 (*((volatile unsigned long *) 0xE0044048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
677 > #define CAN1TDB2 (*((volatile unsigned long *) 0xE004404C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
678 > #define CAN1TFI3 (*((volatile unsigned long *) 0xE0044050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
679 > #define CAN1TID3 (*((volatile unsigned long *) 0xE0044054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
680 > #define CAN1TDA3 (*((volatile unsigned long *) 0xE0044058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
681 > #define CAN1TDB3 (*((volatile unsigned long *) 0xE004405C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
683 > #define CAN2MOD (*((volatile unsigned long *) 0xE0048000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
684 > #define CAN2CMR (*((volatile unsigned long *) 0xE0048004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
685 > #define CAN2GSR (*((volatile unsigned long *) 0xE0048008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
686 > #define CAN2ICR (*((volatile unsigned long *) 0xE004800C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
687 > #define CAN2IER (*((volatile unsigned long *) 0xE0048010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
688 > #define CAN2BTR (*((volatile unsigned long *) 0xE0048014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
689 > #define CAN2EWL (*((volatile unsigned long *) 0xE004801C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
690 > #define CAN2SR (*((volatile unsigned long *) 0xE0048020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
691 > #define CAN2RFS (*((volatile unsigned long *) 0xE0048024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
692 > #define CAN2RDA (*((volatile unsigned long *) 0xE0048028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
693 > #define CAN2RDB (*((volatile unsigned long *) 0xE004802C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
694 > #define CAN2TFI1 (*((volatile unsigned long *) 0xE0048030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
695 > #define CAN2TID1 (*((volatile unsigned long *) 0xE0048034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
696 > #define CAN2TDA1 (*((volatile unsigned long *) 0xE0048038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
697 > #define CAN2TDB1 (*((volatile unsigned long *) 0xE004803C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
698 > #define CAN2TFI2 (*((volatile unsigned long *) 0xE0048040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
699 > #define CAN2TID2 (*((volatile unsigned long *) 0xE0048044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
700 > #define CAN2TDA2 (*((volatile unsigned long *) 0xE0048048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
701 > #define CAN2TDB2 (*((volatile unsigned long *) 0xE004804C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
702 > #define CAN2TFI3 (*((volatile unsigned long *) 0xE0048050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
703 > #define CAN2TID3 (*((volatile unsigned long *) 0xE0048054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
704 > #define CAN2TDA3 (*((volatile unsigned long *) 0xE0048058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
705 > #define CAN2TDB3 (*((volatile unsigned long *) 0xE004805C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
707 > #define CAN3MOD (*((volatile unsigned long *) 0xE004C000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
708 > #define CAN3CMR (*((volatile unsigned long *) 0xE004C004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
709 > #define CAN3GSR (*((volatile unsigned long *) 0xE004C008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
710 > #define CAN3ICR (*((volatile unsigned long *) 0xE004C00C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
711 > #define CAN3IER (*((volatile unsigned long *) 0xE004C010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
712 > #define CAN3BTR (*((volatile unsigned long *) 0xE004C014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
713 > #define CAN3EWL (*((volatile unsigned long *) 0xE004C01C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
714 > #define CAN3SR (*((volatile unsigned long *) 0xE004C020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
715 > #define CAN3RFS (*((volatile unsigned long *) 0xE004C024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
716 > #define CAN3RDA (*((volatile unsigned long *) 0xE004C028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
717 > #define CAN3RDB (*((volatile unsigned long *) 0xE004C02C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
718 > #define CAN3TFI1 (*((volatile unsigned long *) 0xE004C030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
719 > #define CAN3TID1 (*((volatile unsigned long *) 0xE004C034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
720 > #define CAN3TDA1 (*((volatile unsigned long *) 0xE004C038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
721 > #define CAN3TDB1 (*((volatile unsigned long *) 0xE004C03C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
722 > #define CAN3TFI2 (*((volatile unsigned long *) 0xE004C040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
723 > #define CAN3TID2 (*((volatile unsigned long *) 0xE004C044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
724 > #define CAN3TDA2 (*((volatile unsigned long *) 0xE004C048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
725 > #define CAN3TDB2 (*((volatile unsigned long *) 0xE004C04C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
726 > #define CAN3TFI3 (*((volatile unsigned long *) 0xE004C050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
727 > #define CAN3TID3 (*((volatile unsigned long *) 0xE004C054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
728 > #define CAN3TDA3 (*((volatile unsigned long *) 0xE004C058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
729 > #define CAN3TDB3 (*((volatile unsigned long *) 0xE004C05C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
731 > #define CAN4MOD (*((volatile unsigned long *) 0xE0050000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
732 > #define CAN4CMR (*((volatile unsigned long *) 0xE0050004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
733 > #define CAN4GSR (*((volatile unsigned long *) 0xE0050008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
734 > #define CAN4ICR (*((volatile unsigned long *) 0xE005000C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
735 > #define CAN4IER (*((volatile unsigned long *) 0xE0050010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
736 > #define CAN4BTR (*((volatile unsigned long *) 0xE0050014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
737 > #define CAN4EWL (*((volatile unsigned long *) 0xE005001C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
738 > #define CAN4SR (*((volatile unsigned long *) 0xE0050020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
739 > #define CAN4RFS (*((volatile unsigned long *) 0xE0050024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
740 > #define CAN4RDA (*((volatile unsigned long *) 0xE0050028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
741 > #define CAN4RDB (*((volatile unsigned long *) 0xE005002C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
742 > #define CAN4TFI1 (*((volatile unsigned long *) 0xE0050030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
743 > #define CAN4TID1 (*((volatile unsigned long *) 0xE0050034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
744 > #define CAN4TDA1 (*((volatile unsigned long *) 0xE0050038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
745 > #define CAN4TDB1 (*((volatile unsigned long *) 0xE005003C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
746 > #define CAN4TFI2 (*((volatile unsigned long *) 0xE0050040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
747 > #define CAN4TID2 (*((volatile unsigned long *) 0xE0050044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
748 > #define CAN4TDA2 (*((volatile unsigned long *) 0xE0050048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
749 > #define CAN4TDB2 (*((volatile unsigned long *) 0xE005004C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
750 > #define CAN4TFI3 (*((volatile unsigned long *) 0xE0050050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
751 > #define CAN4TID3 (*((volatile unsigned long *) 0xE0050054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
752 > #define CAN4TDA3 (*((volatile unsigned long *) 0xE0050058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
753 > #define CAN4TDB3 (*((volatile unsigned long *) 0xE005005C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
755 > #define CAN5MOD (*((volatile unsigned long *) 0xE0054000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
756 > #define CAN5CMR (*((volatile unsigned long *) 0xE0054004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
757 > #define CAN5GSR (*((volatile unsigned long *) 0xE0054008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
758 > #define CAN5ICR (*((volatile unsigned long *) 0xE005400C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
759 > #define CAN5IER (*((volatile unsigned long *) 0xE0054010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
760 > #define CAN5BTR (*((volatile unsigned long *) 0xE0054014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
761 > #define CAN5EWL (*((volatile unsigned long *) 0xE005401C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
762 > #define CAN5SR (*((volatile unsigned long *) 0xE0054020)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
763 > #define CAN5RFS (*((volatile unsigned long *) 0xE0054024)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
764 > #define CAN5RDA (*((volatile unsigned long *) 0xE0054028)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
765 > #define CAN5RDB (*((volatile unsigned long *) 0xE005402C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
766 > #define CAN5TFI1 (*((volatile unsigned long *) 0xE0054030)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
767 > #define CAN5TID1 (*((volatile unsigned long *) 0xE0054034)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
768 > #define CAN5TDA1 (*((volatile unsigned long *) 0xE0054038)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
769 > #define CAN5TDB1 (*((volatile unsigned long *) 0xE005403C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
770 > #define CAN5TFI2 (*((volatile unsigned long *) 0xE0054040)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
771 > #define CAN5TID2 (*((volatile unsigned long *) 0xE0054044)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
772 > #define CAN5TDA2 (*((volatile unsigned long *) 0xE0054048)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
773 > #define CAN5TDB2 (*((volatile unsigned long *) 0xE005404C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
774 > #define CAN5TFI3 (*((volatile unsigned long *) 0xE0054050)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
775 > #define CAN5TID3 (*((volatile unsigned long *) 0xE0054054)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
776 > #define CAN5TDA3 (*((volatile unsigned long *) 0xE0054058)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
777 > #define CAN5TDB3 (*((volatile unsigned long *) 0xE005405C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
779 > #ifdef CONFIG_ARCH_LPC22xx
780 > #define CAN6MOD (*((volatile unsigned long *) 0xE0058000)) /* lpc2292\lpc2294 only */
781 > #define CAN6CMR (*((volatile unsigned long *) 0xE0058004)) /* lpc2292\lpc2294 only */
782 > #define CAN6GSR (*((volatile unsigned long *) 0xE0058008)) /* lpc2292\lpc2294 only */
783 > #define CAN6ICR (*((volatile unsigned long *) 0xE005800C)) /* lpc2292\lpc2294 only */
784 > #define CAN6IER (*((volatile unsigned long *) 0xE0058010)) /* lpc2292\lpc2294 only */
785 > #define CAN6BTR (*((volatile unsigned long *) 0xE0058014)) /* lpc2292\lpc2294 only */
786 > #define CAN6EWL (*((volatile unsigned long *) 0xE005801C)) /* lpc2292\lpc2294 only */
787 > #define CAN6SR (*((volatile unsigned long *) 0xE0058020)) /* lpc2292\lpc2294 only */
788 > #define CAN6RFS (*((volatile unsigned long *) 0xE0058024)) /* lpc2292\lpc2294 only */
789 > #define CAN6RDA (*((volatile unsigned long *) 0xE0058028)) /* lpc2292\lpc2294 only */
790 > #define CAN6RDB (*((volatile unsigned long *) 0xE005802C)) /* lpc2292\lpc2294 only */
791 > #define CAN6TFI1 (*((volatile unsigned long *) 0xE0058030)) /* lpc2292\lpc2294 only */
792 > #define CAN6TID1 (*((volatile unsigned long *) 0xE0058034)) /* lpc2292\lpc2294 only */
793 > #define CAN6TDA1 (*((volatile unsigned long *) 0xE0058038)) /* lpc2292\lpc2294 only */
794 > #define CAN6TDB1 (*((volatile unsigned long *) 0xE005803C)) /* lpc2292\lpc2294 only */
795 > #define CAN6TFI2 (*((volatile unsigned long *) 0xE0058040)) /* lpc2292\lpc2294 only */
796 > #define CAN6TID2 (*((volatile unsigned long *) 0xE0058044)) /* lpc2292\lpc2294 only */
797 > #define CAN6TDA2 (*((volatile unsigned long *) 0xE0058048)) /* lpc2292\lpc2294 only */
798 > #define CAN6TDB2 (*((volatile unsigned long *) 0xE005804C)) /* lpc2292\lpc2294 only */
799 > #define CAN6TFI3 (*((volatile unsigned long *) 0xE0058050)) /* lpc2292\lpc2294 only */
800 > #define CAN6TID3 (*((volatile unsigned long *) 0xE0058054)) /* lpc2292\lpc2294 only */
801 > #define CAN6TDA3 (*((volatile unsigned long *) 0xE0058058)) /* lpc2292\lpc2294 only */
802 > #define CAN6TDB3 (*((volatile unsigned long *) 0xE005805C)) /* lpc2292\lpc2294 only */
805 > #define CANTxSR (*((volatile unsigned long *) 0xE0040000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
806 > #define CANRxSR (*((volatile unsigned long *) 0xE0040004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
807 > #define CANMSR (*((volatile unsigned long *) 0xE0040008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
809 > #define CANAFMR (*((volatile unsigned long *) 0xE003C000)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
810 > #define CANSFF_sa (*((volatile unsigned long *) 0xE003C004)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
811 > #define CANSFF_GRP_sa (*((volatile unsigned long *) 0xE003C008)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
812 > #define CANEFF_sa (*((volatile unsigned long *) 0xE003C00C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
813 > #define CANEFF_GRP_sa (*((volatile unsigned long *) 0xE003C010)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
814 > #define CANENDofTable (*((volatile unsigned long *) 0xE003C014)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
815 > #define CANLUTerrAd (*((volatile unsigned long *) 0xE003C018)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
816 > #define CANLUTerr (*((volatile unsigned long *) 0xE003C01C)) /* lpc2119\lpc2129\lpc2292\lpc2294 only */
817 > /* CAN Acceptance Filter RAM */
818 > #define CANAFRAM (*((volatile unsigned long *) 0xE0038000))
822 > #define T0IR (*((volatile unsigned long *) 0xE0004000))
823 > #define T0TCR (*((volatile unsigned long *) 0xE0004004))
824 > #define T0TC (*((volatile unsigned long *) 0xE0004008))
825 > #define T0PR (*((volatile unsigned long *) 0xE000400C))
826 > #define T0PC (*((volatile unsigned long *) 0xE0004010))
827 > #define T0MCR (*((volatile unsigned long *) 0xE0004014))
828 > #define T0MR0 (*((volatile unsigned long *) 0xE0004018))
829 > #define T0MR1 (*((volatile unsigned long *) 0xE000401C))
830 > #define T0MR2 (*((volatile unsigned long *) 0xE0004020))
831 > #define T0MR3 (*((volatile unsigned long *) 0xE0004024))
832 > #define T0CCR (*((volatile unsigned long *) 0xE0004028))
833 > #define T0CR0 (*((volatile unsigned long *) 0xE000402C))
834 > #define T0CR1 (*((volatile unsigned long *) 0xE0004030))
835 > #define T0CR2 (*((volatile unsigned long *) 0xE0004034))
836 > #define T0CR3 (*((volatile unsigned long *) 0xE0004038))
837 > #define T0EMR (*((volatile unsigned long *) 0xE000403C))
840 > #define T1IR (*((volatile unsigned long *) 0xE0008000))
841 > #define T1TCR (*((volatile unsigned long *) 0xE0008004))
842 > #define T1TC (*((volatile unsigned long *) 0xE0008008))
843 > #define T1PR (*((volatile unsigned long *) 0xE000800C))
844 > #define T1PC (*((volatile unsigned long *) 0xE0008010))
845 > #define T1MCR (*((volatile unsigned long *) 0xE0008014))
846 > #define T1MR0 (*((volatile unsigned long *) 0xE0008018))
847 > #define T1MR1 (*((volatile unsigned long *) 0xE000801C))
848 > #define T1MR2 (*((volatile unsigned long *) 0xE0008020))
849 > #define T1MR3 (*((volatile unsigned long *) 0xE0008024))
850 > #define T1CCR (*((volatile unsigned long *) 0xE0008028))
851 > #define T1CR0 (*((volatile unsigned long *) 0xE000802C))
852 > #define T1CR1 (*((volatile unsigned long *) 0xE0008030))
853 > #define T1CR2 (*((volatile unsigned long *) 0xE0008034))
854 > #define T1CR3 (*((volatile unsigned long *) 0xE0008038))
855 > #define T1EMR (*((volatile unsigned long *) 0xE000803C))
857 > /* Pulse Width Modulator (PWM) */
858 > #define PWMIR (*((volatile unsigned long *) 0xE0014000))
859 > #define PWMTCR (*((volatile unsigned long *) 0xE0014004))
860 > #define PWMTC (*((volatile unsigned long *) 0xE0014008))
861 > #define PWMPR (*((volatile unsigned long *) 0xE001400C))
862 > #define PWMPC (*((volatile unsigned long *) 0xE0014010))
863 > #define PWMMCR (*((volatile unsigned long *) 0xE0014014))
864 > #define PWMMR0 (*((volatile unsigned long *) 0xE0014018))
865 > #define PWMMR1 (*((volatile unsigned long *) 0xE001401C))
866 > #define PWMMR2 (*((volatile unsigned long *) 0xE0014020))
867 > #define PWMMR3 (*((volatile unsigned long *) 0xE0014024))
868 > #define PWMMR4 (*((volatile unsigned long *) 0xE0014040))
869 > #define PWMMR5 (*((volatile unsigned long *) 0xE0014044))
870 > #define PWMMR6 (*((volatile unsigned long *) 0xE0014048))
871 > #define PWMPCR (*((volatile unsigned long *) 0xE001404C))
872 > #define PWMLER (*((volatile unsigned long *) 0xE0014050))
874 > /* A/D CONVERTER */
875 > #ifndef CONFIG_ARCH_LPC2104
876 > #define ADCR (*((volatile unsigned long *) 0xE0034000)) /* no in lpc210x*/
877 > #define ADDR (*((volatile unsigned long *) 0xE0034004)) /* no in lpc210x*/
880 > /* Real Time Clock */
881 > #define ILR (*((volatile unsigned char *) 0xE0024000))
882 > #define CTC (*((volatile unsigned short*) 0xE0024004))
883 > #define CCR (*((volatile unsigned char *) 0xE0024008))
884 > #define CIIR (*((volatile unsigned char *) 0xE002400C))
885 > #define AMR (*((volatile unsigned char *) 0xE0024010))
886 > #define CTIME0 (*((volatile unsigned long *) 0xE0024014))
887 > #define CTIME1 (*((volatile unsigned long *) 0xE0024018))
888 > #define CTIME2 (*((volatile unsigned long *) 0xE002401C))
889 > #define SEC (*((volatile unsigned char *) 0xE0024020))
890 > #define MIN (*((volatile unsigned char *) 0xE0024024))
891 > #define HOUR (*((volatile unsigned char *) 0xE0024028))
892 > #define DOM (*((volatile unsigned char *) 0xE002402C))
893 > #define DOW (*((volatile unsigned char *) 0xE0024030))
894 > #define DOY (*((volatile unsigned short*) 0xE0024034))
895 > #define MONTH (*((volatile unsigned char *) 0xE0024038))
896 > #define YEAR (*((volatile unsigned short*) 0xE002403C))
897 > #define ALSEC (*((volatile unsigned char *) 0xE0024060))
898 > #define ALMIN (*((volatile unsigned char *) 0xE0024064))
899 > #define ALHOUR (*((volatile unsigned char *) 0xE0024068))
900 > #define ALDOM (*((volatile unsigned char *) 0xE002406C))
901 > #define ALDOW (*((volatile unsigned char *) 0xE0024070))
902 > #define ALDOY (*((volatile unsigned short*) 0xE0024074))
903 > #define ALMON (*((volatile unsigned char *) 0xE0024078))
904 > #define ALYEAR (*((volatile unsigned short*) 0xE002407C))
905 > #define PREINT (*((volatile unsigned short*) 0xE0024080))
906 > #define PREFRAC (*((volatile unsigned short*) 0xE0024084))
909 > #define WDMOD (*((volatile unsigned char *) 0xE0000000))
910 > #define WDTC (*((volatile unsigned long *) 0xE0000004))
911 > #define WDFEED (*((volatile unsigned char *) 0xE0000008))
912 > #define WDTV (*((volatile unsigned long *) 0xE000000C))
915 > Register define for constant
917 > #define REG_U0RBR 0xE000C000
918 > #define REG_U1RBR 0xE0010000
921 > #define REG_PLLCON 0xE01FC080
922 > #define REG_PLLCFG 0xE01FC084
923 > #define REG_PLLSTAT 0xE01FC088
924 > #define REG_PLLFEED 0xE01FC08C
926 > /* Power Control */
928 > #define REG_PCON 0xE01FC0C0
929 > #define REG_PCOMP 0xE01FC0C4
930 > #define REG_PINSEL0 0xE002C000
931 > #define REG_MEMMAP 0xE01FC040
932 > #define REG_PLLSTAT 0xE01FC088
933 > #define REG_VPBDIV 0xE01FC100
937 > #define LPC22xx_Fcclk CONFIG_ARM_CLK /* system clk frequecy,<=60Mhz, defined in system configuration */
938 > #define LPC22xx_Fcco LPC22xx_Fcclk * 4
939 > #define LPC22xx_Fpclk (LPC22xx_Fcclk /4) *1 /*VPB clk frequency,1,1/2,1/4 times of Fcclk */
942 > /*********************************************************************************************************
944 > ********************************************************************************************************/