|
8 | 8 |
|
9 | 9 | // } |
10 | 10 |
|
11 | | -use crate::pac::PLIC; |
| 11 | +use crate::pac::{PLIC, Interrupt}; |
12 | 12 |
|
13 | 13 | /// Extension trait for PLIC interrupt controller peripheral |
14 | 14 | pub trait PlicExt { |
@@ -107,143 +107,6 @@ impl PlicExt for PLIC { |
107 | 107 | } |
108 | 108 | } |
109 | 109 |
|
110 | | -/// Enum for all interrupts |
111 | | -#[allow(non_camel_case_types)] |
112 | | -#[repr(u8)] |
113 | | -#[derive(Clone, Copy, Debug, Eq, PartialEq)] |
114 | | -pub enum Interrupt { |
115 | | - #[doc = "SPI0 interrupt"] |
116 | | - SPI0 = 1, |
117 | | - #[doc = "SPI1 interrupt"] |
118 | | - SPI1 = 2, |
119 | | - #[doc = "SPI_SLAVE interrupt"] |
120 | | - SPI_SLAVE = 3, |
121 | | - #[doc = "SPI3 interrupt"] |
122 | | - SPI3 = 4, |
123 | | - #[doc = "I2S0 interrupt"] |
124 | | - I2S0 = 5, |
125 | | - #[doc = "I2S1 interrupt"] |
126 | | - I2S1 = 6, |
127 | | - #[doc = "I2S2 interrupt"] |
128 | | - I2S2 = 7, |
129 | | - #[doc = "I2C0 interrupt"] |
130 | | - I2C0 = 8, |
131 | | - #[doc = "I2C1 interrupt"] |
132 | | - I2C1 = 9, |
133 | | - #[doc = "I2C2 interrupt"] |
134 | | - I2C2 = 10, |
135 | | - #[doc = "UART1 interrupt"] |
136 | | - UART1 = 11, |
137 | | - #[doc = "UART2 interrupt"] |
138 | | - UART2 = 12, |
139 | | - #[doc = "UART3 interrupt"] |
140 | | - UART3 = 13, |
141 | | - #[doc = "TIMER0 channel 0 or 1 interrupt"] |
142 | | - TIMER0A = 14, |
143 | | - #[doc = "TIMER0 channel 2 or 3 interrupt"] |
144 | | - TIMER0B = 15, |
145 | | - #[doc = "TIMER1 channel 0 or 1 interrupt"] |
146 | | - TIMER1A = 16, |
147 | | - #[doc = "TIMER1 channel 2 or 3 interrupt"] |
148 | | - TIMER1B = 17, |
149 | | - #[doc = "TIMER2 channel 0 or 1 interrupt"] |
150 | | - TIMER2A = 18, |
151 | | - #[doc = "TIMER2 channel 2 or 3 interrupt"] |
152 | | - TIMER2B = 19, |
153 | | - #[doc = "RTC tick and alarm interrupt"] |
154 | | - RTC = 20, |
155 | | - #[doc = "Watching dog timer0 interrupt"] |
156 | | - WDT0 = 21, |
157 | | - #[doc = "Watching dog timer1 interrupt"] |
158 | | - WDT1 = 22, |
159 | | - #[doc = "APB GPIO interrupt"] |
160 | | - APB_GPIO = 23, |
161 | | - #[doc = "Digital video port interrupt"] |
162 | | - DVP = 24, |
163 | | - #[doc = "AI accelerator interrupt"] |
164 | | - AI = 25, |
165 | | - #[doc = "FFT accelerator interrupt"] |
166 | | - FFT = 26, |
167 | | - #[doc = "DMA channel0 interrupt"] |
168 | | - DMA0 = 27, |
169 | | - #[doc = "DMA channel1 interrupt"] |
170 | | - DMA1 = 28, |
171 | | - #[doc = "DMA channel2 interrupt"] |
172 | | - DMA2 = 29, |
173 | | - #[doc = "DMA channel3 interrupt"] |
174 | | - DMA3 = 30, |
175 | | - #[doc = "DMA channel4 interrupt"] |
176 | | - DMA4 = 31, |
177 | | - #[doc = "DMA channel5 interrupt"] |
178 | | - DMA5 = 32, |
179 | | - #[doc = "Hi-speed UART0 interrupt"] |
180 | | - UARTHS = 33, |
181 | | - #[doc = "Hi-speed GPIO0 interrupt"] |
182 | | - GPIOHS0 = 34, |
183 | | - #[doc = "Hi-speed GPIO1 interrupt"] |
184 | | - GPIOHS1 = 35, |
185 | | - #[doc = "Hi-speed GPIO2 interrupt"] |
186 | | - GPIOHS2 = 36, |
187 | | - #[doc = "Hi-speed GPIO3 interrupt"] |
188 | | - GPIOHS3 = 37, |
189 | | - #[doc = "Hi-speed GPIO4 interrupt"] |
190 | | - GPIOHS4 = 38, |
191 | | - #[doc = "Hi-speed GPIO5 interrupt"] |
192 | | - GPIOHS5 = 39, |
193 | | - #[doc = "Hi-speed GPIO6 interrupt"] |
194 | | - GPIOHS6 = 40, |
195 | | - #[doc = "Hi-speed GPIO7 interrupt"] |
196 | | - GPIOHS7 = 41, |
197 | | - #[doc = "Hi-speed GPIO8 interrupt"] |
198 | | - GPIOHS8 = 42, |
199 | | - #[doc = "Hi-speed GPIO9 interrupt"] |
200 | | - GPIOHS9 = 43, |
201 | | - #[doc = "Hi-speed GPIO10 interrupt"] |
202 | | - GPIOHS10 = 44, |
203 | | - #[doc = "Hi-speed GPIO11 interrupt"] |
204 | | - GPIOHS11 = 45, |
205 | | - #[doc = "Hi-speed GPIO12 interrupt"] |
206 | | - GPIOHS12 = 46, |
207 | | - #[doc = "Hi-speed GPIO13 interrupt"] |
208 | | - GPIOHS13 = 47, |
209 | | - #[doc = "Hi-speed GPIO14 interrupt"] |
210 | | - GPIOHS14 = 48, |
211 | | - #[doc = "Hi-speed GPIO15 interrupt"] |
212 | | - GPIOHS15 = 49, |
213 | | - #[doc = "Hi-speed GPIO16 interrupt"] |
214 | | - GPIOHS16 = 50, |
215 | | - #[doc = "Hi-speed GPIO17 interrupt"] |
216 | | - GPIOHS17 = 51, |
217 | | - #[doc = "Hi-speed GPIO18 interrupt"] |
218 | | - GPIOHS18 = 52, |
219 | | - #[doc = "Hi-speed GPIO19 interrupt"] |
220 | | - GPIOHS19 = 53, |
221 | | - #[doc = "Hi-speed GPIO20 interrupt"] |
222 | | - GPIOHS20 = 54, |
223 | | - #[doc = "Hi-speed GPIO21 interrupt"] |
224 | | - GPIOHS21 = 55, |
225 | | - #[doc = "Hi-speed GPIO22 interrupt"] |
226 | | - GPIOHS22 = 56, |
227 | | - #[doc = "Hi-speed GPIO23 interrupt"] |
228 | | - GPIOHS23 = 57, |
229 | | - #[doc = "Hi-speed GPIO24 interrupt"] |
230 | | - GPIOHS24 = 58, |
231 | | - #[doc = "Hi-speed GPIO25 interrupt"] |
232 | | - GPIOHS25 = 59, |
233 | | - #[doc = "Hi-speed GPIO26 interrupt"] |
234 | | - GPIOHS26 = 60, |
235 | | - #[doc = "Hi-speed GPIO27 interrupt"] |
236 | | - GPIOHS27 = 61, |
237 | | - #[doc = "Hi-speed GPIO28 interrupt"] |
238 | | - GPIOHS28 = 62, |
239 | | - #[doc = "Hi-speed GPIO29 interrupt"] |
240 | | - GPIOHS29 = 63, |
241 | | - #[doc = "Hi-speed GPIO30 interrupt"] |
242 | | - GPIOHS30 = 64, |
243 | | - #[doc = "Hi-speed GPIO31 interrupt"] |
244 | | - GPIOHS31 = 65, |
245 | | -} |
246 | | - |
247 | 110 | impl Nr for Interrupt { |
248 | 111 | fn into_bits(&self) -> u32 { |
249 | 112 | *self as u8 as u32 |
@@ -276,7 +139,7 @@ impl Nr for Interrupt { |
276 | 139 | 22 => Some(WDT1), |
277 | 140 | 23 => Some(APB_GPIO), |
278 | 141 | 24 => Some(DVP), |
279 | | - 25 => Some(AI), |
| 142 | + 25 => Some(KPU), |
280 | 143 | 26 => Some(FFT), |
281 | 144 | 27 => Some(DMA0), |
282 | 145 | 28 => Some(DMA1), |
|
0 commit comments