aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h')
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h299
1 files changed, 299 insertions, 0 deletions
diff --git a/lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h b/lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h
new file mode 100644
index 000000000..62a7f1162
--- /dev/null
+++ b/lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h
@@ -0,0 +1,299 @@
1/*
2 ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15*/
16
17/**
18 * @file STM32L5xx/stm32_isr.h
19 * @brief STM32L5xx ISR handler header.
20 *
21 * @addtogroup STM32L5xx_ISR
22 * @{
23 */
24
25#ifndef STM32_ISR_H
26#define STM32_ISR_H
27
28/*===========================================================================*/
29/* Driver constants. */
30/*===========================================================================*/
31
32/**
33 * @name ISRs suppressed in standard drivers
34 * @{
35 */
36#define STM32_TIM1_SUPPRESS_ISR
37#define STM32_TIM2_SUPPRESS_ISR
38#define STM32_TIM3_SUPPRESS_ISR
39#define STM32_TIM4_SUPPRESS_ISR
40#define STM32_TIM5_SUPPRESS_ISR
41#define STM32_TIM6_SUPPRESS_ISR
42#define STM32_TIM7_SUPPRESS_ISR
43#define STM32_TIM8_SUPPRESS_ISR
44#define STM32_TIM15_SUPPRESS_ISR
45#define STM32_TIM16_SUPPRESS_ISR
46#define STM32_TIM17_SUPPRESS_ISR
47
48#define STM32_USART1_SUPPRESS_ISR
49#define STM32_USART2_SUPPRESS_ISR
50#define STM32_USART3_SUPPRESS_ISR
51#define STM32_UART4_SUPPRESS_ISR
52#define STM32_UART5_SUPPRESS_ISR
53#define STM32_LPUART1_SUPPRESS_ISR
54/** @} */
55
56/**
57 * @name ISR names and numbers
58 * @{
59 */
60/*
61 * ADC unit.
62 */
63#define STM32_ADC12_HANDLER VectorD4
64
65#define STM32_ADC12_NUMBER 37
66
67/*
68 * FDCAN unit.
69 */
70#define STM32_FDCAN1_IT0_HANDLER VectorDC
71#define STM32_FDCAN1_IT1_HANDLER VectorE0
72
73#define STM32_FDCAN1_IT0_NUMBER 39
74#define STM32_FDCAN1_IT1_NUMBER 40
75
76/*
77 * DMA unit.
78 */
79#define STM32_DMA1_CH1_HANDLER VectorB4
80#define STM32_DMA1_CH2_HANDLER VectorB8
81#define STM32_DMA1_CH3_HANDLER VectorBC
82#define STM32_DMA1_CH4_HANDLER VectorC0
83#define STM32_DMA1_CH5_HANDLER VectorC4
84#define STM32_DMA1_CH6_HANDLER VectorC8
85#define STM32_DMA1_CH7_HANDLER VectorCC
86#define STM32_DMA1_CH8_HANDLER VectorD0
87#define STM32_DMA2_CH1_HANDLER Vector180
88#define STM32_DMA2_CH2_HANDLER Vector184
89#define STM32_DMA2_CH3_HANDLER Vector188
90#define STM32_DMA2_CH4_HANDLER Vector18C
91#define STM32_DMA2_CH5_HANDLER Vector190
92#define STM32_DMA2_CH6_HANDLER Vector194
93#define STM32_DMA2_CH7_HANDLER Vector198
94#define STM32_DMA2_CH8_HANDLER Vector19C
95
96#define STM32_DMA1_CH1_NUMBER 29
97#define STM32_DMA1_CH2_NUMBER 30
98#define STM32_DMA1_CH3_NUMBER 31
99#define STM32_DMA1_CH4_NUMBER 32
100#define STM32_DMA1_CH5_NUMBER 33
101#define STM32_DMA1_CH6_NUMBER 34
102#define STM32_DMA1_CH7_NUMBER 35
103#define STM32_DMA1_CH8_NUMBER 36
104#define STM32_DMA2_CH1_NUMBER 80
105#define STM32_DMA2_CH2_NUMBER 81
106#define STM32_DMA2_CH3_NUMBER 82
107#define STM32_DMA2_CH4_NUMBER 83
108#define STM32_DMA2_CH5_NUMBER 84
109#define STM32_DMA2_CH6_NUMBER 85
110#define STM32_DMA2_CH7_NUMBER 86
111#define STM32_DMA2_CH8_NUMBER 87
112
113/*
114 * EXTI unit.
115 */
116#define STM32_EXTI0_HANDLER Vector58
117#define STM32_EXTI1_HANDLER Vector5C
118#define STM32_EXTI2_HANDLER Vector60
119#define STM32_EXTI3_HANDLER Vector64
120#define STM32_EXTI4_HANDLER Vector68
121#define STM32_EXTI5_HANDLER Vector9C
122#define STM32_EXTI6_HANDLER Vector9C
123#define STM32_EXTI7_HANDLER Vector9C
124#define STM32_EXTI8_HANDLER Vector9C
125#define STM32_EXTI9_HANDLER Vector9C
126#define STM32_EXTI10_HANDLER VectorE0
127#define STM32_EXTI11_HANDLER VectorE0
128#define STM32_EXTI12_HANDLER VectorE0
129#define STM32_EXTI13_HANDLER VectorE0
130#define STM32_EXTI14_HANDLER VectorE0
131#define STM32_EXTI15_HANDLER VectorE0
132#define STM32_EXTI1635_38_HANDLER Vector44 /* PVD PVM1..PVM4 */
133#define STM32_EXTI17_HANDLER Vector48 /* RTC */
134#define STM32_EXTI18_HANDLER Vector4C /* RTC (secure) */
135#define STM32_EXTI19_HANDLER Vector50 /* TAMP */
136#define STM32_EXTI20_HANDLER Vector54 /* TAMP (secure) */
137#define STM32_EXTI21_22_HANDLER Vector160 /* COMP1..2 */
138
139#define STM32_EXTI0_NUMBER 11
140#define STM32_EXTI1_NUMBER 12
141#define STM32_EXTI2_NUMBER 13
142#define STM32_EXTI3_NUMBER 14
143#define STM32_EXTI4_NUMBER 15
144#define STM32_EXTI5_NUMBER 16
145#define STM32_EXTI6_NUMBER 17
146#define STM32_EXTI7_NUMBER 18
147#define STM32_EXTI8_NUMBER 19
148#define STM32_EXTI9_NUMBER 20
149#define STM32_EXTI10_NUMBER 21
150#define STM32_EXTI11_NUMBER 22
151#define STM32_EXTI12_NUMBER 23
152#define STM32_EXTI13_NUMBER 24
153#define STM32_EXTI14_NUMBER 25
154#define STM32_EXTI15_NUMBER 26
155#define STM32_EXTI1635_38_NUMBER 1
156#define STM32_EXTI17_NUMBER 2
157#define STM32_EXTI18_NUMBER 3
158#define STM32_EXTI19_NUMBER 4
159#define STM32_EXTI20_NUMBER 5
160#define STM32_EXTI21_22_NUMBER 72
161
162/*
163 * I2C units.
164 */
165#define STM32_I2C1_EVENT_HANDLER Vector11C
166#define STM32_I2C1_ERROR_HANDLER Vector120
167#define STM32_I2C2_EVENT_HANDLER Vector124
168#define STM32_I2C2_ERROR_HANDLER Vector138
169#define STM32_I2C3_EVENT_HANDLER Vector188
170#define STM32_I2C3_ERROR_HANDLER Vector18C
171#define STM32_I2C4_EVENT_HANDLER Vector1B8
172#define STM32_I2C4_ERROR_HANDLER Vector1BC
173
174#define STM32_I2C1_EVENT_NUMBER 55
175#define STM32_I2C1_ERROR_NUMBER 56
176#define STM32_I2C2_EVENT_NUMBER 57
177#define STM32_I2C2_ERROR_NUMBER 58
178#define STM32_I2C3_EVENT_NUMBER 88
179#define STM32_I2C3_ERROR_NUMBER 89
180#define STM32_I2C4_EVENT_NUMBER 100
181#define STM32_I2C4_ERROR_NUMBER 101
182
183/*
184 * OCTOSPI unit.
185 */
186#define STM32_OCTOSPI1_HANDLER Vector170
187
188#define STM32_OCTOSPI1_NUMBER 76
189
190/*
191 * SDMMC unit.
192 */
193#define STM32_SDMMC1_HANDLER Vector178
194
195#define STM32_SDMMC1_NUMBER 78
196
197/*
198 * TIM units.
199 */
200#define STM32_TIM1_BRK_HANDLER VectorE4
201#define STM32_TIM1_UP_HANDLER VectorE8
202#define STM32_TIM1_TRGCO_HANDLER VectorEC
203#define STM32_TIM1_CC_HANDLER VectorF0
204#define STM32_TIM2_HANDLER VectorF4
205#define STM32_TIM3_HANDLER VectorF8
206#define STM32_TIM4_HANDLER VectorFC
207#define STM32_TIM5_HANDLER Vector100
208#define STM32_TIM6_HANDLER Vector104
209#define STM32_TIM7_HANDLER Vector108
210#define STM32_TIM8_BRK_HANDLER Vector10C
211#define STM32_TIM8_UP_HANDLER Vector110
212#define STM32_TIM8_TRGCO_HANDLER Vector114
213#define STM32_TIM8_CC_HANDLER Vector118
214#define STM32_TIM15_HANDLER Vector154
215#define STM32_TIM16_HANDLER Vector158
216#define STM32_TIM17_HANDLER Vector15C
217
218#define STM32_TIM1_BRK_NUMBER 41
219#define STM32_TIM1_UP_NUMBER 42
220#define STM32_TIM1_TRGCO_NUMBER 43
221#define STM32_TIM1_CC_NUMBER 44
222#define STM32_TIM2_NUMBER 45
223#define STM32_TIM3_NUMBER 46
224#define STM32_TIM4_NUMBER 47
225#define STM32_TIM5_NUMBER 48
226#define STM32_TIM6_NUMBER 49
227#define STM32_TIM7_NUMBER 50
228#define STM32_TIM8_BRK_NUMBER 51
229#define STM32_TIM8_UP_NUMBER 52
230#define STM32_TIM8_TRGCO_NUMBER 53
231#define STM32_TIM8_CC_NUMBER 54
232#define STM32_TIM15_NUMBER 69
233#define STM32_TIM16_NUMBER 70
234#define STM32_TIM17_NUMBER 71
235
236/*
237 * USART/UART units.
238 */
239#define STM32_USART1_HANDLER Vector134
240#define STM32_USART2_HANDLER Vector138
241#define STM32_USART3_HANDLER Vector13C
242#define STM32_UART4_HANDLER Vector140
243#define STM32_UART5_HANDLER Vector144
244#define STM32_LPUART1_HANDLER Vector148
245
246#define STM32_USART1_NUMBER 61
247#define STM32_USART2_NUMBER 62
248#define STM32_USART3_NUMBER 63
249#define STM32_UART4_NUMBER 64
250#define STM32_UART5_NUMBER 65
251#define STM32_LPUART1_NUMBER 66
252
253/*
254 * USB/OTG units.
255 */
256#define STM32_USB_FS_HANDLER Vector164
257
258#define STM32_USB_FS_NUMBER 73
259
260/*
261 * FSMC unit.
262 */
263#define STM32_FSMC_HANDLER Vector16C
264
265#define STM32_FSMC_NUMBER 75
266/** @} */
267
268/*===========================================================================*/
269/* Driver pre-compile time settings. */
270/*===========================================================================*/
271
272/*===========================================================================*/
273/* Derived constants and error checks. */
274/*===========================================================================*/
275
276/*===========================================================================*/
277/* Driver data structures and types. */
278/*===========================================================================*/
279
280/*===========================================================================*/
281/* Driver macros. */
282/*===========================================================================*/
283
284/*===========================================================================*/
285/* External declarations. */
286/*===========================================================================*/
287
288#ifdef __cplusplus
289extern "C" {
290#endif
291 void irqInit(void);
292 void irqDeinit(void);
293#ifdef __cplusplus
294}
295#endif
296
297#endif /* STM32_ISR_H */
298
299/** @} */