1042 lines
23 KiB
Rust
1042 lines
23 KiB
Rust
//! Interrupt management
|
|
//!
|
|
//! This module implements an API for managing interrupts compatible with
|
|
//! nrf_softdevice::interrupt. Intended for switching between the two at compile-time.
|
|
|
|
// Re-exports
|
|
pub use embassy::interrupt::{declare, take, Interrupt};
|
|
pub use embassy_extras::interrupt::Priority4 as Priority;
|
|
|
|
#[cfg(feature = "stm32f401")]
|
|
mod irqs {
|
|
use super::*;
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(FPU);
|
|
declare!(SPI4);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f405")]
|
|
mod irqs {
|
|
use super::*;
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
// declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
// declare!(FMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(UART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(ETH);
|
|
declare!(ETH_WKUP);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(OTG_HS_EP1_OUT);
|
|
declare!(OTG_HS_EP1_IN);
|
|
declare!(OTG_HS_WKUP);
|
|
declare!(OTG_HS);
|
|
declare!(DCMI);
|
|
declare!(CRYP);
|
|
declare!(HASH_RNG);
|
|
declare!(FPU);
|
|
// declare!(UART7);
|
|
// declare!(UART8);
|
|
// declare!(SPI4);
|
|
// declare!(SPI5);
|
|
// declare!(SPI6);
|
|
// declare!(SAI1);
|
|
// declare!(LCD_TFT);
|
|
// declare!(LCD_TFT_1);
|
|
// declare!(DMA2D);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f407")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FSMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(UART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(ETH);
|
|
declare!(ETH_WKUP);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(OTG_HS_EP1_OUT);
|
|
declare!(OTG_HS_EP1_IN);
|
|
declare!(OTG_HS_WKUP);
|
|
declare!(OTG_HS);
|
|
declare!(DCMI);
|
|
declare!(CRYP);
|
|
declare!(HASH_RNG);
|
|
declare!(FPU);
|
|
declare!(LCD_TFT);
|
|
declare!(LCD_TFT_1);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f410")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(PWM1_UP);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(TIM5);
|
|
declare!(TIM6_DAC1);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(EXTI19);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(EXTI20);
|
|
declare!(RNG);
|
|
declare!(FPU);
|
|
declare!(SPI5);
|
|
declare!(I2C4_EV);
|
|
declare!(I2C4_ER);
|
|
declare!(LPTIM1);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f411")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(FPU);
|
|
declare!(SPI4);
|
|
declare!(SPI5);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f412")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM12);
|
|
declare!(TIM13);
|
|
declare!(TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FSMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(TIM6_DACUNDER);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(DFSDM1_FLT0);
|
|
declare!(DFSDM1_FLT1);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(HASH_RNG);
|
|
declare!(FPU);
|
|
declare!(SPI4);
|
|
declare!(SPI5);
|
|
declare!(QUAD_SPI);
|
|
declare!(I2CFMP1_EVENT);
|
|
declare!(I2CFMP1_ERROR);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f413")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EVT);
|
|
declare!(I2C1_ERR);
|
|
declare!(I2C2_EVT);
|
|
declare!(I2C2_ERR);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(EXTI17_RTC_ALARM);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FSMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(USART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_GLB_IT_DAC1_DAC2);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(DFSDM1_FLT0);
|
|
declare!(DFSDM1_FLT1);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(CAN3_TX);
|
|
declare!(CAN3_RX0);
|
|
declare!(CAN3_RX1);
|
|
declare!(CAN3_SCE);
|
|
declare!(CRYPTO);
|
|
declare!(RNG);
|
|
declare!(FPU);
|
|
declare!(USART7);
|
|
declare!(USART8);
|
|
declare!(SPI4);
|
|
declare!(SPI5);
|
|
declare!(SAI1);
|
|
declare!(UART9);
|
|
declare!(UART10);
|
|
declare!(QUADSPI);
|
|
declare!(I2CFMP1EVENT);
|
|
declare!(I2CFMP1ERROR);
|
|
declare!(LPTIM1_OR_IT_EIT_23);
|
|
declare!(DFSDM2_FILTER1);
|
|
declare!(DFSDM2_FILTER2);
|
|
declare!(DFSDM2_FILTER3);
|
|
declare!(DFSDM2_FILTER4);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f427")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(UART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(ETH);
|
|
declare!(ETH_WKUP);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(OTG_HS_EP1_OUT);
|
|
declare!(OTG_HS_EP1_IN);
|
|
declare!(OTG_HS_WKUP);
|
|
declare!(OTG_HS);
|
|
declare!(DCMI);
|
|
declare!(CRYP);
|
|
declare!(HASH_RNG);
|
|
declare!(FPU);
|
|
declare!(UART7);
|
|
declare!(UART8);
|
|
declare!(SPI4);
|
|
declare!(SPI5);
|
|
declare!(SPI6);
|
|
declare!(LCD_TFT);
|
|
declare!(LCD_TFT_1);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f429")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(UART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(ETH);
|
|
declare!(ETH_WKUP);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(OTG_HS_EP1_OUT);
|
|
declare!(OTG_HS_EP1_IN);
|
|
declare!(OTG_HS_WKUP);
|
|
declare!(OTG_HS);
|
|
declare!(DCMI);
|
|
declare!(CRYP);
|
|
declare!(HASH_RNG);
|
|
declare!(FPU);
|
|
declare!(UART7);
|
|
declare!(UART8);
|
|
declare!(SPI4);
|
|
declare!(SPI5);
|
|
declare!(SPI6);
|
|
declare!(SAI1);
|
|
declare!(LCD_TFT);
|
|
declare!(LCD_TFT_1);
|
|
declare!(DMA2D);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f446")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FMC);
|
|
// declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(UART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(ETH);
|
|
declare!(ETH_WKUP);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(DCMI);
|
|
declare!(FPU);
|
|
declare!(UART7);
|
|
declare!(UART8);
|
|
declare!(SPI4);
|
|
declare!(LCD_TFT);
|
|
declare!(LCD_TFT_1);
|
|
}
|
|
|
|
#[cfg(feature = "stm32f469")]
|
|
mod irqs {
|
|
use super::*;
|
|
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(TAMP_STAMP);
|
|
declare!(RTC_WKUP);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0);
|
|
declare!(EXTI1);
|
|
declare!(EXTI2);
|
|
declare!(EXTI3);
|
|
declare!(EXTI4);
|
|
declare!(DMA1_STREAM0);
|
|
declare!(DMA1_STREAM1);
|
|
declare!(DMA1_STREAM2);
|
|
declare!(DMA1_STREAM3);
|
|
declare!(DMA1_STREAM4);
|
|
declare!(DMA1_STREAM5);
|
|
declare!(DMA1_STREAM6);
|
|
declare!(ADC);
|
|
declare!(CAN1_TX);
|
|
declare!(CAN1_RX0);
|
|
declare!(CAN1_RX1);
|
|
declare!(CAN1_SCE);
|
|
declare!(EXTI9_5);
|
|
declare!(TIM1_BRK_TIM9);
|
|
declare!(TIM1_UP_TIM10);
|
|
declare!(TIM1_TRG_COM_TIM11);
|
|
declare!(TIM1_CC);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM4);
|
|
declare!(I2C1_EV);
|
|
declare!(I2C1_ER);
|
|
declare!(I2C2_EV);
|
|
declare!(I2C2_ER);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(USART3);
|
|
declare!(EXTI15_10);
|
|
declare!(RTC_ALARM);
|
|
declare!(OTG_FS_WKUP);
|
|
declare!(TIM8_BRK_TIM12);
|
|
declare!(TIM8_UP_TIM13);
|
|
declare!(TIM8_TRG_COM_TIM14);
|
|
declare!(TIM8_CC);
|
|
declare!(DMA1_STREAM7);
|
|
declare!(FMC);
|
|
declare!(SDIO);
|
|
declare!(TIM5);
|
|
declare!(SPI3);
|
|
declare!(UART4);
|
|
declare!(UART5);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(DMA2_STREAM0);
|
|
declare!(DMA2_STREAM1);
|
|
declare!(DMA2_STREAM2);
|
|
declare!(DMA2_STREAM3);
|
|
declare!(DMA2_STREAM4);
|
|
declare!(ETH);
|
|
declare!(ETH_WKUP);
|
|
declare!(CAN2_TX);
|
|
declare!(CAN2_RX0);
|
|
declare!(CAN2_RX1);
|
|
declare!(CAN2_SCE);
|
|
declare!(OTG_FS);
|
|
declare!(DMA2_STREAM5);
|
|
declare!(DMA2_STREAM6);
|
|
declare!(DMA2_STREAM7);
|
|
declare!(USART6);
|
|
declare!(I2C3_EV);
|
|
declare!(I2C3_ER);
|
|
declare!(OTG_HS_EP1_OUT);
|
|
declare!(OTG_HS_EP1_IN);
|
|
declare!(OTG_HS_WKUP);
|
|
declare!(OTG_HS);
|
|
declare!(DCMI);
|
|
declare!(CRYP);
|
|
declare!(HASH_RNG);
|
|
declare!(FPU);
|
|
declare!(UART7);
|
|
declare!(UART8);
|
|
declare!(SPI4);
|
|
declare!(SPI5);
|
|
declare!(SPI6);
|
|
declare!(SAI1);
|
|
declare!(LCD_TFT);
|
|
declare!(LCD_TFT_1);
|
|
declare!(DMA2D);
|
|
declare!(QUADSPI);
|
|
declare!(DSIHOST);
|
|
}
|
|
|
|
#[cfg(feature = "stm32l0x1")]
|
|
mod irqs {
|
|
use super::*;
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(RTC);
|
|
declare!(FLASH);
|
|
declare!(RCC);
|
|
declare!(EXTI0_1);
|
|
declare!(EXTI2_3);
|
|
declare!(EXTI4_15);
|
|
declare!(DMA1_CHANNEL1);
|
|
declare!(DMA1_CHANNEL2_3);
|
|
declare!(DMA1_CHANNEL4_7);
|
|
declare!(ADC_COMP);
|
|
declare!(LPTIM1);
|
|
declare!(USART4_USART5);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM6);
|
|
declare!(TIM7);
|
|
declare!(TIM21);
|
|
declare!(I2C3);
|
|
declare!(TIM22);
|
|
declare!(I2C1);
|
|
declare!(I2C2);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(AES_RNG_LPUART1);
|
|
}
|
|
|
|
#[cfg(feature = "stm32l0x2")]
|
|
mod irqs {
|
|
use super::*;
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(RTC);
|
|
declare!(RCC);
|
|
declare!(EXTI0_1);
|
|
declare!(EXTI2_3);
|
|
declare!(EXTI4_15);
|
|
declare!(TSC);
|
|
declare!(DMA1_CHANNEL1);
|
|
declare!(DMA1_CHANNEL2_3);
|
|
declare!(DMA1_CHANNEL4_7);
|
|
declare!(ADC_COMP);
|
|
declare!(LPTIM1);
|
|
declare!(USART4_USART5);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(TIM21);
|
|
declare!(I2C3);
|
|
declare!(TIM22);
|
|
declare!(I2C1);
|
|
declare!(I2C2);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(AES_RNG_LPUART1);
|
|
declare!(USB);
|
|
}
|
|
|
|
#[cfg(feature = "stm32l0x3")]
|
|
mod irqs {
|
|
use super::*;
|
|
declare!(WWDG);
|
|
declare!(PVD);
|
|
declare!(RTC);
|
|
declare!(RCC);
|
|
declare!(EXTI0_1);
|
|
declare!(EXTI2_3);
|
|
declare!(EXTI4_15);
|
|
declare!(TSC);
|
|
declare!(DMA1_CHANNEL1);
|
|
declare!(DMA1_CHANNEL2_3);
|
|
declare!(DMA1_CHANNEL4_7);
|
|
declare!(ADC_COMP);
|
|
declare!(LPTIM1);
|
|
declare!(USART4_USART5);
|
|
declare!(TIM2);
|
|
declare!(TIM3);
|
|
declare!(TIM6_DAC);
|
|
declare!(TIM7);
|
|
declare!(TIM21);
|
|
declare!(I2C3);
|
|
declare!(TIM22);
|
|
declare!(I2C1);
|
|
declare!(I2C2);
|
|
declare!(SPI1);
|
|
declare!(SPI2);
|
|
declare!(USART1);
|
|
declare!(USART2);
|
|
declare!(AES_RNG_LPUART1);
|
|
declare!(LCD);
|
|
declare!(USB);
|
|
}
|
|
|
|
pub use irqs::*;
|