RTEMS
6.3
Toggle main menu visibility
Loading...
Searching...
No Matches
bsps
arm
lpc24xx
include
bsp
irq.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: BSD-2-Clause */
2
10
11
/*
12
* Copyright (C) 2008, 2012 embedded brains GmbH & Co. KG
13
*
14
* Redistribution and use in source and binary forms, with or without
15
* modification, are permitted provided that the following conditions
16
* are met:
17
* 1. Redistributions of source code must retain the above copyright
18
* notice, this list of conditions and the following disclaimer.
19
* 2. Redistributions in binary form must reproduce the above copyright
20
* notice, this list of conditions and the following disclaimer in the
21
* documentation and/or other materials provided with the distribution.
22
*
23
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
24
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
27
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33
* POSSIBILITY OF SUCH DAMAGE.
34
*/
35
36
#ifndef LIBBSP_ARM_LPC24XX_IRQ_H
37
#define LIBBSP_ARM_LPC24XX_IRQ_H
38
39
#ifndef ASM
40
#include <
rtems.h
>
41
#include <
rtems/irq.h
>
42
#include <
rtems/irq-extension.h
>
43
#endif
44
50
51
#ifdef ARM_MULTILIB_ARCH_V4
52
#define LPC24XX_IRQ_WDT 0
53
#define LPC24XX_IRQ_SOFTWARE 1
54
#define LPC24XX_IRQ_ARM_CORE_0 2
55
#define LPC24XX_IRQ_ARM_CORE_1 3
56
#define LPC24XX_IRQ_TIMER_0 4
57
#define LPC24XX_IRQ_TIMER_1 5
58
#define LPC24XX_IRQ_UART_0 6
59
#define LPC24XX_IRQ_UART_1 7
60
#define LPC24XX_IRQ_PWM 8
61
#define LPC24XX_IRQ_I2C_0 9
62
#define LPC24XX_IRQ_SPI_SSP_0 10
63
#define LPC24XX_IRQ_SSP_1 11
64
#define LPC24XX_IRQ_PLL 12
65
#define LPC24XX_IRQ_RTC 13
66
#define LPC24XX_IRQ_EINT_0 14
67
#define LPC24XX_IRQ_EINT_1 15
68
#define LPC24XX_IRQ_EINT_2 16
69
#define LPC24XX_IRQ_EINT_3 17
70
#define LPC24XX_IRQ_ADC_0 18
71
#define LPC24XX_IRQ_I2C_1 19
72
#define LPC24XX_IRQ_BOD 20
73
#define LPC24XX_IRQ_ETHERNET 21
74
#define LPC24XX_IRQ_USB 22
75
#define LPC24XX_IRQ_CAN 23
76
#define LPC24XX_IRQ_SD_MMC 24
77
#define LPC24XX_IRQ_DMA 25
78
#define LPC24XX_IRQ_TIMER_2 26
79
#define LPC24XX_IRQ_TIMER_3 27
80
#define LPC24XX_IRQ_UART_2 28
81
#define LPC24XX_IRQ_UART_3 29
82
#define LPC24XX_IRQ_I2C_2 30
83
#define LPC24XX_IRQ_I2S 31
84
85
#define BSP_INTERRUPT_VECTOR_COUNT 32
86
#else
87
#define LPC24XX_IRQ_WDT 0
88
#define LPC24XX_IRQ_TIMER_0 1
89
#define LPC24XX_IRQ_TIMER_1 2
90
#define LPC24XX_IRQ_TIMER_2 3
91
#define LPC24XX_IRQ_TIMER_3 4
92
#define LPC24XX_IRQ_UART_0 5
93
#define LPC24XX_IRQ_UART_1 6
94
#define LPC24XX_IRQ_UART_2 7
95
#define LPC24XX_IRQ_UART_3 8
96
#define LPC24XX_IRQ_PWM_1 9
97
#define LPC24XX_IRQ_I2C_0 10
98
#define LPC24XX_IRQ_I2C_1 11
99
#define LPC24XX_IRQ_I2C_2 12
100
#define LPC24XX_IRQ_SPI_SSP_0 14
101
#define LPC24XX_IRQ_SSP_1 15
102
#define LPC24XX_IRQ_PLL 16
103
#define LPC24XX_IRQ_RTC 17
104
#define LPC24XX_IRQ_EINT_0 18
105
#define LPC24XX_IRQ_EINT_1 19
106
#define LPC24XX_IRQ_EINT_2 20
107
#define LPC24XX_IRQ_EINT_3 21
108
#define LPC24XX_IRQ_ADC_0 22
109
#define LPC24XX_IRQ_BOD 23
110
#define LPC24XX_IRQ_USB 24
111
#define LPC24XX_IRQ_CAN 25
112
#define LPC24XX_IRQ_DMA 26
113
#define LPC24XX_IRQ_I2S 27
114
#define LPC24XX_IRQ_ETHERNET 28
115
#define LPC24XX_IRQ_SD_MMC 29
116
#define LPC24XX_IRQ_MCPWM 30
117
#define LPC24XX_IRQ_QEI 31
118
#define LPC24XX_IRQ_PLL_ALT 32
119
#define LPC24XX_IRQ_USB_ACTIVITY 33
120
#define LPC24XX_IRQ_CAN_ACTIVITY 34
121
#define LPC24XX_IRQ_UART_4 35
122
#define LPC24XX_IRQ_SSP_2 36
123
#define LPC24XX_IRQ_LCD 37
124
#define LPC24XX_IRQ_GPIO 38
125
#define LPC24XX_IRQ_PWM 39
126
#define LPC24XX_IRQ_EEPROM 40
127
128
#define BSP_INTERRUPT_VECTOR_COUNT 41
129
#endif
130
131
#define LPC24XX_IRQ_PRIORITY_VALUE_MIN 0
132
#ifdef ARM_MULTILIB_ARCH_V4
133
#define LPC24XX_IRQ_PRIORITY_VALUE_MAX 15
134
#else
135
#define LPC24XX_IRQ_PRIORITY_VALUE_MAX 255
136
#endif
137
#define LPC24XX_IRQ_PRIORITY_COUNT (LPC24XX_IRQ_PRIORITY_VALUE_MAX + 1)
138
#define LPC24XX_IRQ_PRIORITY_HIGHEST LPC24XX_IRQ_PRIORITY_VALUE_MIN
139
#define LPC24XX_IRQ_PRIORITY_LOWEST LPC24XX_IRQ_PRIORITY_VALUE_MAX
140
142
143
#endif
/* LIBBSP_ARM_LPC24XX_IRQ_H */
irq.h
irq-extension.h
This header file is provided for backward compatiblility.
rtems.h
This header file defines the RTEMS Classic API.
Generated by
1.18.0