from binaryninja_cortex.platforms import MCU

class Chip(MCU):
    NAME="STM32L4"
    ROM_OFF=0x08000000 
    RAM_OFF=0x20000000 

    IRQ=MCU.IRQ+ [
        "NVIC_WWDG_IRQ",
        "NVIC_PVD_PVM_IRQ",
        "NVIC_TAMP_STAMP_IRQ",
        "NVIC_RTC_WKUP_IRQ",
        "NVIC_FLASH_IRQ",
        "NVIC_RCC_IRQ",
        "NVIC_EXTI0_IRQ",
        "NVIC_EXTI1_IRQ",
        "NVIC_EXTI2_IRQ",
        "NVIC_EXTI3_IRQ",
        "NVIC_EXTI4_IRQ",
        "NVIC_DMA1_CHANNEL1_IRQ",
        "NVIC_DMA1_CHANNEL2_IRQ",
        "NVIC_DMA1_CHANNEL3_IRQ",
        "NVIC_DMA1_CHANNEL4_IRQ",
        "NVIC_DMA1_CHANNEL5_IRQ",
        "NVIC_DMA1_CHANNEL6_IRQ",
        "NVIC_DMA1_CHANNEL7_IRQ",
        "NVIC_ADC1_2_IRQ",
        "NVIC_CAN1_TX_IRQ",
        "NVIC_CAN1_RX0_IRQ",
        "NVIC_CAN1_RX1_IRQ",
        "NVIC_CAN1_SCE_IRQ",
        "NVIC_EXTI9_5_IRQ",
        "NVIC_TIM1_BRK_TIM15_IRQ",
        "NVIC_TIM1_UP_TIM16_IRQ",
        "NVIC_TIM1_TRG_COM_TIM17_IRQ",
        "NVIC_TIM1_CC_IRQ",
        "NVIC_TIM2_IRQ",
        "NVIC_TIM3_IRQ",
        "NVIC_TIM4_IRQ",
        "NVIC_I2C1_EV_IRQ",
        "NVIC_I2C1_ER_IRQ",
        "NVIC_I2C2_EV_IRQ",
        "NVIC_I2C2_ER_IRQ",
        "NVIC_SPI1_IRQ",
        "NVIC_SPI2_IRQ",
        "NVIC_USART1_IRQ",
        "NVIC_USART2_IRQ",
        "NVIC_USART3_IRQ",
        "NVIC_EXTI15_10_IRQ",
        "NVIC_RTC_ALARM_IRQ",
        "NVIC_DFSDM3_IRQ",
        "NVIC_TIM8_BRK_IRQ",
        "NVIC_TIM8_UP_IRQ",
        "NVIC_TIM8_TRG_COM_IRQ",
        "NVIC_TIM8_CC_IRQ",
        "NVIC_ADC3_IRQ",
        "NVIC_FMC_IRQ",
        "NVIC_SDMMC1_IRQ",
        "NVIC_TIM5_IRQ",
        "NVIC_SPI3_IRQ",
        "NVIC_UART4_IRQ",
        "NVIC_UART5_IRQ",
        "NVIC_TIM6_DACUNDER_IRQ",
        "NVIC_TIM7_IRQ",
        "NVIC_DMA2_CHANNEL1_IRQ",
        "NVIC_DMA2_CHANNEL2_IRQ",
        "NVIC_DMA2_CHANNEL3_IRQ",
        "NVIC_DMA2_CHANNEL4_IRQ",
        "NVIC_DMA2_CHANNEL5_IRQ",
        "NVIC_DFSDM0_IRQ",
        "NVIC_DFSDM1_IRQ",
        "NVIC_DFSDM2_IRQ",
        "NVIC_COMP_IRQ",
        "NVIC_LPTIM1_IRQ",
        "NVIC_LPTIM2_IRQ",
        "NVIC_OTG_FS_IRQ",
        "NVIC_DMA2_CHANNEL6_IRQ",
        "NVIC_DMA2_CHANNEL7_IRQ",
        "NVIC_LPUART1_IRQ",
        "NVIC_QUADSPI_IRQ",
        "NVIC_I2C3_EV_IRQ",
        "NVIC_I2C3_ER_IRQ",
        "NVIC_SAI1_IRQ",
        "NVIC_SAI2_IRQ",
        "NVIC_SWPMI1_IRQ",
        "NVIC_TSC_IRQ",
        "NVIC_LCD_IRQ",
        "NVIC_AES_IRQ",
        "NVIC_RNG_IRQ",
        "NVIC_FPU_IRQ",
        ]
