xref: /nrf52832-nimble/rt-thread/libcpu/arm/lpc214x/lpc214x.h (revision 104654410c56c573564690304ae786df310c91fc)
1 /***********************************************************************/
2 /*  This file is part of the uVision/ARM development tools             */
3 /*  Copyright KEIL ELEKTRONIK GmbH 2002-2005                           */
4 /***********************************************************************/
5 /*                                                                     */
6 /*  LPC214X.H:  Header file for Philips LPC2141/42/44/46/48            */
7 /*                                                                     */
8 /***********************************************************************/
9 
10 #ifndef __LPC214x_H
11 #define __LPC214x_H
12 
13 /* Vectored Interrupt Controller (VIC) */
14 #define VICIRQStatus    (*((volatile unsigned long *) 0xFFFFF000))
15 #define VICFIQStatus    (*((volatile unsigned long *) 0xFFFFF004))
16 #define VICRawIntr      (*((volatile unsigned long *) 0xFFFFF008))
17 #define VICIntSelect    (*((volatile unsigned long *) 0xFFFFF00C))
18 #define VICIntEnable    (*((volatile unsigned long *) 0xFFFFF010))
19 #define VICIntEnClr     (*((volatile unsigned long *) 0xFFFFF014))
20 #define VICSoftInt      (*((volatile unsigned long *) 0xFFFFF018))
21 #define VICSoftIntClr   (*((volatile unsigned long *) 0xFFFFF01C))
22 #define VICProtection   (*((volatile unsigned long *) 0xFFFFF020))
23 #define VICVectAddr     (*((volatile unsigned long *) 0xFFFFF030))
24 #define VICDefVectAddr  (*((volatile unsigned long *) 0xFFFFF034))
25 #define VICVectAddr0    (*((volatile unsigned long *) 0xFFFFF100))
26 #define VICVectAddr1    (*((volatile unsigned long *) 0xFFFFF104))
27 #define VICVectAddr2    (*((volatile unsigned long *) 0xFFFFF108))
28 #define VICVectAddr3    (*((volatile unsigned long *) 0xFFFFF10C))
29 #define VICVectAddr4    (*((volatile unsigned long *) 0xFFFFF110))
30 #define VICVectAddr5    (*((volatile unsigned long *) 0xFFFFF114))
31 #define VICVectAddr6    (*((volatile unsigned long *) 0xFFFFF118))
32 #define VICVectAddr7    (*((volatile unsigned long *) 0xFFFFF11C))
33 #define VICVectAddr8    (*((volatile unsigned long *) 0xFFFFF120))
34 #define VICVectAddr9    (*((volatile unsigned long *) 0xFFFFF124))
35 #define VICVectAddr10   (*((volatile unsigned long *) 0xFFFFF128))
36 #define VICVectAddr11   (*((volatile unsigned long *) 0xFFFFF12C))
37 #define VICVectAddr12   (*((volatile unsigned long *) 0xFFFFF130))
38 #define VICVectAddr13   (*((volatile unsigned long *) 0xFFFFF134))
39 #define VICVectAddr14   (*((volatile unsigned long *) 0xFFFFF138))
40 #define VICVectAddr15   (*((volatile unsigned long *) 0xFFFFF13C))
41 #define VICVectCntl0    (*((volatile unsigned long *) 0xFFFFF200))
42 #define VICVectCntl1    (*((volatile unsigned long *) 0xFFFFF204))
43 #define VICVectCntl2    (*((volatile unsigned long *) 0xFFFFF208))
44 #define VICVectCntl3    (*((volatile unsigned long *) 0xFFFFF20C))
45 #define VICVectCntl4    (*((volatile unsigned long *) 0xFFFFF210))
46 #define VICVectCntl5    (*((volatile unsigned long *) 0xFFFFF214))
47 #define VICVectCntl6    (*((volatile unsigned long *) 0xFFFFF218))
48 #define VICVectCntl7    (*((volatile unsigned long *) 0xFFFFF21C))
49 #define VICVectCntl8    (*((volatile unsigned long *) 0xFFFFF220))
50 #define VICVectCntl9    (*((volatile unsigned long *) 0xFFFFF224))
51 #define VICVectCntl10   (*((volatile unsigned long *) 0xFFFFF228))
52 #define VICVectCntl11   (*((volatile unsigned long *) 0xFFFFF22C))
53 #define VICVectCntl12   (*((volatile unsigned long *) 0xFFFFF230))
54 #define VICVectCntl13   (*((volatile unsigned long *) 0xFFFFF234))
55 #define VICVectCntl14   (*((volatile unsigned long *) 0xFFFFF238))
56 #define VICVectCntl15   (*((volatile unsigned long *) 0xFFFFF23C))
57 
58 /* Pin Connect Block */
59 #define PINSEL0         (*((volatile unsigned long *) 0xE002C000))
60 #define PINSEL1         (*((volatile unsigned long *) 0xE002C004))
61 #define PINSEL2         (*((volatile unsigned long *) 0xE002C014))
62 
63 /* General Purpose Input/Output (GPIO) */
64 #define IOPIN0          (*((volatile unsigned long *) 0xE0028000))
65 #define IOSET0          (*((volatile unsigned long *) 0xE0028004))
66 #define IODIR0          (*((volatile unsigned long *) 0xE0028008))
67 #define IOCLR0          (*((volatile unsigned long *) 0xE002800C))
68 #define IOPIN1          (*((volatile unsigned long *) 0xE0028010))
69 #define IOSET1          (*((volatile unsigned long *) 0xE0028014))
70 #define IODIR1          (*((volatile unsigned long *) 0xE0028018))
71 #define IOCLR1          (*((volatile unsigned long *) 0xE002801C))
72 #define IO0PIN          (*((volatile unsigned long *) 0xE0028000))
73 #define IO0SET          (*((volatile unsigned long *) 0xE0028004))
74 #define IO0DIR          (*((volatile unsigned long *) 0xE0028008))
75 #define IO0CLR          (*((volatile unsigned long *) 0xE002800C))
76 #define IO1PIN          (*((volatile unsigned long *) 0xE0028010))
77 #define IO1SET          (*((volatile unsigned long *) 0xE0028014))
78 #define IO1DIR          (*((volatile unsigned long *) 0xE0028018))
79 #define IO1CLR          (*((volatile unsigned long *) 0xE002801C))
80 #define FIO0DIR         (*((volatile unsigned long *) 0x3FFFC000))
81 #define FIO0MASK        (*((volatile unsigned long *) 0x3FFFC010))
82 #define FIO0PIN         (*((volatile unsigned long *) 0x3FFFC014))
83 #define FIO0SET         (*((volatile unsigned long *) 0x3FFFC018))
84 #define FIO0CLR         (*((volatile unsigned long *) 0x3FFFC01C))
85 #define FIO1DIR         (*((volatile unsigned long *) 0x3FFFC020))
86 #define FIO1MASK        (*((volatile unsigned long *) 0x3FFFC030))
87 #define FIO1PIN         (*((volatile unsigned long *) 0x3FFFC034))
88 #define FIO1SET         (*((volatile unsigned long *) 0x3FFFC038))
89 #define FIO1CLR         (*((volatile unsigned long *) 0x3FFFC03C))
90 
91 /* Memory Accelerator Module (MAM) */
92 #define MAMCR           (*((volatile unsigned char *) 0xE01FC000))
93 #define MAMTIM          (*((volatile unsigned char *) 0xE01FC004))
94 #define MEMMAP          (*((volatile unsigned char *) 0xE01FC040))
95 
96 /* Phase Locked Loop 0 (PLL0) */
97 #define PLL0CON         (*((volatile unsigned char *) 0xE01FC080))
98 #define PLL0CFG         (*((volatile unsigned char *) 0xE01FC084))
99 #define PLL0STAT        (*((volatile unsigned short*) 0xE01FC088))
100 #define PLL0FEED        (*((volatile unsigned char *) 0xE01FC08C))
101 
102 /* Phase Locked Loop 1 (PLL1) */
103 #define PLL1CON         (*((volatile unsigned char *) 0xE01FC0A0))
104 #define PLL1CFG         (*((volatile unsigned char *) 0xE01FC0A4))
105 #define PLL1STAT        (*((volatile unsigned short*) 0xE01FC0A8))
106 #define PLL1FEED        (*((volatile unsigned char *) 0xE01FC0AC))
107 
108 /* VPB Divider */
109 #define VPBDIV          (*((volatile unsigned char *) 0xE01FC100))
110 
111 /* Power Control */
112 #define PCON            (*((volatile unsigned char *) 0xE01FC0C0))
113 #define PCONP           (*((volatile unsigned long *) 0xE01FC0C4))
114 
115 /* External Interrupts */
116 #define EXTINT          (*((volatile unsigned char *) 0xE01FC140))
117 #define INTWAKE         (*((volatile unsigned short*) 0xE01FC144))
118 #define EXTMODE         (*((volatile unsigned char *) 0xE01FC148))
119 #define EXTPOLAR        (*((volatile unsigned char *) 0xE01FC14C))
120 
121 /* Reset */
122 #define RSID            (*((volatile unsigned char *) 0xE01FC180))
123 
124 /* Code Security / Debugging */
125 #define CSPR            (*((volatile unsigned char *) 0xE01FC184))
126 
127 /* System Control Miscellaneous */
128 #define SCS             (*((volatile unsigned long *) 0xE01FC1A0))
129 
130 /* Timer 0 */
131 #define T0IR            (*((volatile unsigned long *) 0xE0004000))
132 #define T0TCR           (*((volatile unsigned long *) 0xE0004004))
133 #define T0TC            (*((volatile unsigned long *) 0xE0004008))
134 #define T0PR            (*((volatile unsigned long *) 0xE000400C))
135 #define T0PC            (*((volatile unsigned long *) 0xE0004010))
136 #define T0MCR           (*((volatile unsigned long *) 0xE0004014))
137 #define T0MR0           (*((volatile unsigned long *) 0xE0004018))
138 #define T0MR1           (*((volatile unsigned long *) 0xE000401C))
139 #define T0MR2           (*((volatile unsigned long *) 0xE0004020))
140 #define T0MR3           (*((volatile unsigned long *) 0xE0004024))
141 #define T0CCR           (*((volatile unsigned long *) 0xE0004028))
142 #define T0CR0           (*((volatile unsigned long *) 0xE000402C))
143 #define T0CR1           (*((volatile unsigned long *) 0xE0004030))
144 #define T0CR2           (*((volatile unsigned long *) 0xE0004034))
145 #define T0CR3           (*((volatile unsigned long *) 0xE0004038))
146 #define T0EMR           (*((volatile unsigned long *) 0xE000403C))
147 #define T0CTCR          (*((volatile unsigned long *) 0xE0004070))
148 
149 /* Timer 1 */
150 #define T1IR            (*((volatile unsigned long *) 0xE0008000))
151 #define T1TCR           (*((volatile unsigned long *) 0xE0008004))
152 #define T1TC            (*((volatile unsigned long *) 0xE0008008))
153 #define T1PR            (*((volatile unsigned long *) 0xE000800C))
154 #define T1PC            (*((volatile unsigned long *) 0xE0008010))
155 #define T1MCR           (*((volatile unsigned long *) 0xE0008014))
156 #define T1MR0           (*((volatile unsigned long *) 0xE0008018))
157 #define T1MR1           (*((volatile unsigned long *) 0xE000801C))
158 #define T1MR2           (*((volatile unsigned long *) 0xE0008020))
159 #define T1MR3           (*((volatile unsigned long *) 0xE0008024))
160 #define T1CCR           (*((volatile unsigned long *) 0xE0008028))
161 #define T1CR0           (*((volatile unsigned long *) 0xE000802C))
162 #define T1CR1           (*((volatile unsigned long *) 0xE0008030))
163 #define T1CR2           (*((volatile unsigned long *) 0xE0008034))
164 #define T1CR3           (*((volatile unsigned long *) 0xE0008038))
165 #define T1EMR           (*((volatile unsigned long *) 0xE000803C))
166 #define T1CTCR          (*((volatile unsigned long *) 0xE0008070))
167 
168 /* Pulse Width Modulator (PWM) */
169 #define PWMIR           (*((volatile unsigned long *) 0xE0014000))
170 #define PWMTCR          (*((volatile unsigned long *) 0xE0014004))
171 #define PWMTC           (*((volatile unsigned long *) 0xE0014008))
172 #define PWMPR           (*((volatile unsigned long *) 0xE001400C))
173 #define PWMPC           (*((volatile unsigned long *) 0xE0014010))
174 #define PWMMCR          (*((volatile unsigned long *) 0xE0014014))
175 #define PWMMR0          (*((volatile unsigned long *) 0xE0014018))
176 #define PWMMR1          (*((volatile unsigned long *) 0xE001401C))
177 #define PWMMR2          (*((volatile unsigned long *) 0xE0014020))
178 #define PWMMR3          (*((volatile unsigned long *) 0xE0014024))
179 #define PWMMR4          (*((volatile unsigned long *) 0xE0014040))
180 #define PWMMR5          (*((volatile unsigned long *) 0xE0014044))
181 #define PWMMR6          (*((volatile unsigned long *) 0xE0014048))
182 #define PWMPCR          (*((volatile unsigned long *) 0xE001404C))
183 #define PWMLER          (*((volatile unsigned long *) 0xE0014050))
184 
185 /* Universal Asynchronous Receiver Transmitter 0 (UART0) */
186 #define U0RBR           (*((volatile unsigned char *) 0xE000C000))
187 #define U0THR           (*((volatile unsigned char *) 0xE000C000))
188 #define U0IER           (*((volatile unsigned long *) 0xE000C004))
189 #define U0IIR           (*((volatile unsigned long *) 0xE000C008))
190 #define U0FCR           (*((volatile unsigned char *) 0xE000C008))
191 #define U0LCR           (*((volatile unsigned char *) 0xE000C00C))
192 #define U0MCR           (*((volatile unsigned char *) 0xE000C010))
193 #define U0LSR           (*((volatile unsigned char *) 0xE000C014))
194 #define U0MSR           (*((volatile unsigned char *) 0xE000C018))
195 #define U0SCR           (*((volatile unsigned char *) 0xE000C01C))
196 #define U0DLL           (*((volatile unsigned char *) 0xE000C000))
197 #define U0DLM           (*((volatile unsigned char *) 0xE000C004))
198 #define U0ACR           (*((volatile unsigned long *) 0xE000C020))
199 #define U0FDR           (*((volatile unsigned long *) 0xE000C028))
200 #define U0TER           (*((volatile unsigned char *) 0xE000C030))
201 
202 /* Universal Asynchronous Receiver Transmitter 1 (UART1) */
203 #define U1RBR           (*((volatile unsigned char *) 0xE0010000))
204 #define U1THR           (*((volatile unsigned char *) 0xE0010000))
205 #define U1IER           (*((volatile unsigned long *) 0xE0010004))
206 #define U1IIR           (*((volatile unsigned long *) 0xE0010008))
207 #define U1FCR           (*((volatile unsigned char *) 0xE0010008))
208 #define U1LCR           (*((volatile unsigned char *) 0xE001000C))
209 #define U1MCR           (*((volatile unsigned char *) 0xE0010010))
210 #define U1LSR           (*((volatile unsigned char *) 0xE0010014))
211 #define U1MSR           (*((volatile unsigned char *) 0xE0010018))
212 #define U1SCR           (*((volatile unsigned char *) 0xE001001C))
213 #define U1DLL           (*((volatile unsigned char *) 0xE0010000))
214 #define U1DLM           (*((volatile unsigned char *) 0xE0010004))
215 #define U1ACR           (*((volatile unsigned long *) 0xE0010020))
216 #define U1FDR           (*((volatile unsigned long *) 0xE0010028))
217 #define U1TER           (*((volatile unsigned char *) 0xE0010030))
218 
219 /* I2C Interface 0 */
220 #define I2C0CONSET      (*((volatile unsigned char *) 0xE001C000))
221 #define I2C0STAT        (*((volatile unsigned char *) 0xE001C004))
222 #define I2C0DAT         (*((volatile unsigned char *) 0xE001C008))
223 #define I2C0ADR         (*((volatile unsigned char *) 0xE001C00C))
224 #define I2C0SCLH        (*((volatile unsigned short*) 0xE001C010))
225 #define I2C0SCLL        (*((volatile unsigned short*) 0xE001C014))
226 #define I2C0CONCLR      (*((volatile unsigned char *) 0xE001C018))
227 
228 /* I2C Interface 1 */
229 #define I2C1CONSET      (*((volatile unsigned char *) 0xE005C000))
230 #define I2C1STAT        (*((volatile unsigned char *) 0xE005C004))
231 #define I2C1DAT         (*((volatile unsigned char *) 0xE005C008))
232 #define I2C1ADR         (*((volatile unsigned char *) 0xE005C00C))
233 #define I2C1SCLH        (*((volatile unsigned short*) 0xE005C010))
234 #define I2C1SCLL        (*((volatile unsigned short*) 0xE005C014))
235 #define I2C1CONCLR      (*((volatile unsigned char *) 0xE005C018))
236 
237 /* SPI0 (Serial Peripheral Interface 0) */
238 #define S0SPCR          (*((volatile unsigned short*) 0xE0020000))
239 #define S0SPSR          (*((volatile unsigned char *) 0xE0020004))
240 #define S0SPDR          (*((volatile unsigned short*) 0xE0020008))
241 #define S0SPCCR         (*((volatile unsigned char *) 0xE002000C))
242 #define S0SPINT         (*((volatile unsigned char *) 0xE002001C))
243 
244 /* SSP Controller (SPI1) */
245 #define SSPCR0          (*((volatile unsigned short*) 0xE0068000))
246 #define SSPCR1          (*((volatile unsigned char *) 0xE0068004))
247 #define SSPDR           (*((volatile unsigned short*) 0xE0068008))
248 #define SSPSR           (*((volatile unsigned char *) 0xE006800C))
249 #define SSPCPSR         (*((volatile unsigned char *) 0xE0068010))
250 #define SSPIMSC         (*((volatile unsigned char *) 0xE0068014))
251 #define SSPRIS          (*((volatile unsigned char *) 0xE0068018))
252 #define SSPMIS          (*((volatile unsigned char *) 0xE006801C))
253 #define SSPICR          (*((volatile unsigned char *) 0xE0068020))
254 
255 /* Real Time Clock */
256 #define ILR             (*((volatile unsigned char *) 0xE0024000))
257 #define CTC             (*((volatile unsigned short*) 0xE0024004))
258 #define CCR             (*((volatile unsigned char *) 0xE0024008))
259 #define CIIR            (*((volatile unsigned char *) 0xE002400C))
260 #define AMR             (*((volatile unsigned char *) 0xE0024010))
261 #define CTIME0          (*((volatile unsigned long *) 0xE0024014))
262 #define CTIME1          (*((volatile unsigned long *) 0xE0024018))
263 #define CTIME2          (*((volatile unsigned long *) 0xE002401C))
264 #define SEC             (*((volatile unsigned char *) 0xE0024020))
265 #define MIN             (*((volatile unsigned char *) 0xE0024024))
266 #define HOUR            (*((volatile unsigned char *) 0xE0024028))
267 #define DOM             (*((volatile unsigned char *) 0xE002402C))
268 #define DOW             (*((volatile unsigned char *) 0xE0024030))
269 #define DOY             (*((volatile unsigned short*) 0xE0024034))
270 #define MONTH           (*((volatile unsigned char *) 0xE0024038))
271 #define YEAR            (*((volatile unsigned short*) 0xE002403C))
272 #define ALSEC           (*((volatile unsigned char *) 0xE0024060))
273 #define ALMIN           (*((volatile unsigned char *) 0xE0024064))
274 #define ALHOUR          (*((volatile unsigned char *) 0xE0024068))
275 #define ALDOM           (*((volatile unsigned char *) 0xE002406C))
276 #define ALDOW           (*((volatile unsigned char *) 0xE0024070))
277 #define ALDOY           (*((volatile unsigned short*) 0xE0024074))
278 #define ALMON           (*((volatile unsigned char *) 0xE0024078))
279 #define ALYEAR          (*((volatile unsigned short*) 0xE002407C))
280 #define PREINT          (*((volatile unsigned short*) 0xE0024080))
281 #define PREFRAC         (*((volatile unsigned short*) 0xE0024084))
282 
283 /* A/D Converter 0 (AD0) */
284 #define AD0CR           (*((volatile unsigned long *) 0xE0034000))
285 #define AD0GDR          (*((volatile unsigned long *) 0xE0034004))
286 #define AD0STAT         (*((volatile unsigned long *) 0xE0034030))
287 #define AD0INTEN        (*((volatile unsigned long *) 0xE003400C))
288 #define AD0DR0          (*((volatile unsigned long *) 0xE0034010))
289 #define AD0DR1          (*((volatile unsigned long *) 0xE0034014))
290 #define AD0DR2          (*((volatile unsigned long *) 0xE0034018))
291 #define AD0DR3          (*((volatile unsigned long *) 0xE003401C))
292 #define AD0DR4          (*((volatile unsigned long *) 0xE0034020))
293 #define AD0DR5          (*((volatile unsigned long *) 0xE0034024))
294 #define AD0DR6          (*((volatile unsigned long *) 0xE0034028))
295 #define AD0DR7          (*((volatile unsigned long *) 0xE003402C))
296 
297 /* A/D Converter 1 (AD1) */
298 #define AD1CR           (*((volatile unsigned long *) 0xE0060000))
299 #define AD1GDR          (*((volatile unsigned long *) 0xE0060004))
300 #define AD1STAT         (*((volatile unsigned long *) 0xE0060030))
301 #define AD1INTEN        (*((volatile unsigned long *) 0xE006000C))
302 #define AD1DR0          (*((volatile unsigned long *) 0xE0060010))
303 #define AD1DR1          (*((volatile unsigned long *) 0xE0060014))
304 #define AD1DR2          (*((volatile unsigned long *) 0xE0060018))
305 #define AD1DR3          (*((volatile unsigned long *) 0xE006001C))
306 #define AD1DR4          (*((volatile unsigned long *) 0xE0060020))
307 #define AD1DR5          (*((volatile unsigned long *) 0xE0060024))
308 #define AD1DR6          (*((volatile unsigned long *) 0xE0060028))
309 #define AD1DR7          (*((volatile unsigned long *) 0xE006002C))
310 
311 /* A/D Converter Global */
312 #define ADGSR           (*((volatile unsigned long *) 0xE0034008))
313 
314 /* D/A Converter */
315 #define DACR            (*((volatile unsigned long *) 0xE006C000))
316 
317 /* Watchdog */
318 #define WDMOD           (*((volatile unsigned char *) 0xE0000000))
319 #define WDTC            (*((volatile unsigned long *) 0xE0000004))
320 #define WDFEED          (*((volatile unsigned char *) 0xE0000008))
321 #define WDTV            (*((volatile unsigned long *) 0xE000000C))
322 
323 /* USB Controller */
324 #define USBIntSt        (*((volatile unsigned long *) 0xE01FC1C0))
325 #define USBDevIntSt     (*((volatile unsigned long *) 0xE0090000))
326 #define USBDevIntEn     (*((volatile unsigned long *) 0xE0090004))
327 #define USBDevIntClr    (*((volatile unsigned long *) 0xE0090008))
328 #define USBDevIntSet    (*((volatile unsigned long *) 0xE009000C))
329 #define USBDevIntPri    (*((volatile unsigned char *) 0xE009002C))
330 #define USBEpIntSt      (*((volatile unsigned long *) 0xE0090030))
331 #define USBEpIntEn      (*((volatile unsigned long *) 0xE0090034))
332 #define USBEpIntClr     (*((volatile unsigned long *) 0xE0090038))
333 #define USBEpIntSet     (*((volatile unsigned long *) 0xE009003C))
334 #define USBEpIntPri     (*((volatile unsigned long *) 0xE0090040))
335 #define USBReEp         (*((volatile unsigned long *) 0xE0090044))
336 #define USBEpInd        (*((volatile unsigned long *) 0xE0090048))
337 #define USBMaxPSize     (*((volatile unsigned long *) 0xE009004C))
338 #define USBRxData       (*((volatile unsigned long *) 0xE0090018))
339 #define USBRxPLen       (*((volatile unsigned long *) 0xE0090020))
340 #define USBTxData       (*((volatile unsigned long *) 0xE009001C))
341 #define USBTxPLen       (*((volatile unsigned long *) 0xE0090024))
342 #define USBCtrl         (*((volatile unsigned long *) 0xE0090028))
343 #define USBCmdCode      (*((volatile unsigned long *) 0xE0090010))
344 #define USBCmdData      (*((volatile unsigned long *) 0xE0090014))
345 #define USBDMARSt       (*((volatile unsigned long *) 0xE0090050))
346 #define USBDMARClr      (*((volatile unsigned long *) 0xE0090054))
347 #define USBDMARSet      (*((volatile unsigned long *) 0xE0090058))
348 #define USBUDCAH        (*((volatile unsigned long *) 0xE0090080))
349 #define USBEpDMASt      (*((volatile unsigned long *) 0xE0090084))
350 #define USBEpDMAEn      (*((volatile unsigned long *) 0xE0090088))
351 #define USBEpDMADis     (*((volatile unsigned long *) 0xE009008C))
352 #define USBDMAIntSt     (*((volatile unsigned long *) 0xE0090090))
353 #define USBDMAIntEn     (*((volatile unsigned long *) 0xE0090094))
354 #define USBEoTIntSt     (*((volatile unsigned long *) 0xE00900A0))
355 #define USBEoTIntClr    (*((volatile unsigned long *) 0xE00900A4))
356 #define USBEoTIntSet    (*((volatile unsigned long *) 0xE00900A8))
357 #define USBNDDRIntSt    (*((volatile unsigned long *) 0xE00900AC))
358 #define USBNDDRIntClr   (*((volatile unsigned long *) 0xE00900B0))
359 #define USBNDDRIntSet   (*((volatile unsigned long *) 0xE00900B4))
360 #define USBSysErrIntSt  (*((volatile unsigned long *) 0xE00900B8))
361 #define USBSysErrIntClr (*((volatile unsigned long *) 0xE00900BC))
362 #define USBSysErrIntSet (*((volatile unsigned long *) 0xE00900C0))
363 
364 #define VIC_BASE_ADDR	0xFFFFF000
365 
366 enum LPC214x_INT
367 {
368 	WDT_INT	= 0,
369 	SW_INT_reserved,
370 	DbgCommRx_INT,
371 	DbgCommTx_INT,
372 	TIMER0_INT,
373 	TIMER1_INT,
374 	UART0_INT,
375 	UART1_INT,
376 	PWM0_INT,
377 	I2C0_INT,
378 	SP0_INT,
379 	SP1_INT,
380 	PLL_INT,
381 	RTC_INT,
382 	EINT0_INT,
383 	EINT1_INT,
384 	EINT2_INT,
385 	EINT3_INT,
386 	ADC0_INT,
387 	I2C1_INT,
388 	BOD_INT,
389 	ADC1_INT,
390 	USB_INT
391 };
392 
393 #endif  // __LPC214x_H
394