source: rtems/c/src/lib/libcpu/arm/lpc22xx/irq/irq.h @ 9b4422a2

4.115
Last change on this file since 9b4422a2 was 9b4422a2, checked in by Joel Sherrill <joel.sherrill@…>, on 05/03/12 at 15:09:24

Remove All CVS Id Strings Possible Using a Script

Script does what is expected and tries to do it as
smartly as possible.

+ remove occurrences of two blank comment lines

next to each other after Id string line removed.

+ remove entire comment blocks which only exited to

contain CVS Ids

+ If the processing left a blank line at the top of

a file, it was removed.

  • Property mode set to 100644
File size: 2.8 KB
Line 
1/*
2 * Interrupt handler Header file
3 *
4 * Copyright (c) 2010 embedded brains GmbH.
5 *
6 * Copyright (c) 2006 by Ray <rayx.cn@gmail.com> to support LPC ARM
7 *
8 *  The license and distribution terms for this file may be
9 *  found in the file LICENSE in this distribution or at
10 *  http://www.rtems.com/license/LICENSE.
11 */
12
13#ifndef __IRQ_H__
14#define __IRQ_H__
15
16#ifndef __asm__
17
18#include <rtems.h>
19#include <rtems/irq.h>
20#include <rtems/irq-extension.h>
21
22#endif /* __asm__ */
23
24/* possible interrupt sources on the LPC22xx */
25#define LPC22xx_INTERRUPT_WDINT  0      /* Watchdog int. 0 */
26#define LPC22xx_INTERRUPT_RSV0   1      /* Reserved int. 1 */
27#define LPC22xx_INTERRUPT_DBGRX  2      /* Embedded ICE DbgCommRx receive */
28#define LPC22xx_INTERRUPT_DBGTX  3      /* Embedded ICE DbgCommRx Transmit*/
29#define LPC22xx_INTERRUPT_TIMER0 4      /* Timer 0 */
30#define LPC22xx_INTERRUPT_TIMER1 5      /* Timer 1 */
31#define LPC22xx_INTERRUPT_UART0  6      /* UART 0 */
32#define LPC22xx_INTERRUPT_UART1  7      /* UART 1 */
33#define LPC22xx_INTERRUPT_PWM0   8      /* PWM */
34#define LPC22xx_INTERRUPT_I2C    9      /* I2C  */
35#define LPC22xx_INTERRUPT_SPI0  10      /* SPI0 */
36#define LPC22xx_INTERRUPT_SPI1  11      /* SPI1 */
37#define LPC22xx_INTERRUPT_PLL   12      /* PLL */
38#define LPC22xx_INTERRUPT_RTC   13      /* RTC */
39#define LPC22xx_INTERRUPT_EINT0 14      /* Externel Interrupt 0 */
40#define LPC22xx_INTERRUPT_EINT1 15      /* Externel Interrupt 1 */
41#define LPC22xx_INTERRUPT_EINT2 16      /* Externel Interrupt 2 */
42#define LPC22xx_INTERRUPT_EINT3 17      /* Externel Interrupt 3 */
43#define LPC22xx_INTERRUPT_ADC   18      /* AD Converter */
44/* Following interrupt used by lpc229x */
45#define LPC22xx_INTERRUPT_CANERR 19     /* CAN LUTerr interrupt */
46#define LPC22xx_INTERRUPT_CAN1TX 20     /* CAN1 Tx interrupt */
47#define LPC22xx_INTERRUPT_CAN1RX 21     /* CAN1 Rx interrupt */
48#define LPC22xx_INTERRUPT_CAN2TX 22     /* CAN2 Tx interrupt */
49#define LPC22xx_INTERRUPT_CAN2RX 23     /* CAN2 Rx interrupt */
50#define LPC22xx_INTERRUPT_CAN3TX 24     /* CAN1 Tx interrupt */
51#define LPC22xx_INTERRUPT_CAN3RX 25     /* CAN1 Rx interrupt */
52#define LPC22xx_INTERRUPT_CAN4TX 26     /* CAN2 Tx interrupt */
53#define LPC22xx_INTERRUPT_CAN4RX 27     /* CAN2 Rx interrupt */
54#define BSP_MAX_INT              28
55
56#define BSP_INTERRUPT_VECTOR_MIN 0
57
58#define BSP_INTERRUPT_VECTOR_MAX (BSP_MAX_INT - 1)
59
60#define UNDEFINED_INSTRUCTION_VECTOR_ADDR   (*(u_long *)0x00000004L)
61#define SOFTWARE_INTERRUPT_VECTOR_ADDR      (*(u_long *)0x00000008L)
62#define PREFETCH_ABORT_VECTOR_ADDR          (*(u_long *)0x0000000CL)
63#define DATA_ABORT_VECTOR_ADDR              (*(u_long *)0x00000010L)
64#define IRQ_VECTOR_ADDR                     (*(u_long *)0x00000018L)
65#define FIQ_VECTOR_ADDR                     (*(u_long *)0x0000001CL)
66
67#define DATA_ABORT_ISR_ADDR                 (*(u_long *)0x00000030L)
68#define IRQ_ISR_ADDR                        (*(u_long *)0x00000038L)
69#define FIQ_ISR_ADDR                        (*(u_long *)0x0000003CL)
70
71#endif /* __IRQ_H__ */
Note: See TracBrowser for help on using the repository browser.