This is an automated email from the ASF dual-hosted git repository. jerzy pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/mynewt-core.git
commit 8229251629ef9e0aab5266f3fe3f4243fde954c9 Author: Jerzy Kasenberg <[email protected]> AuthorDate: Fri Apr 12 14:50:55 2024 +0200 hw/mcu/stm32l4xx: Use common startup code Code now uses common cortex startup scripts and auto generated linker script Signed-off-by: Jerzy Kasenberg <[email protected]> --- hw/mcu/stm/stm32l4xx/include/mcu/cmsis_nvic.h | 6 +- hw/mcu/stm/stm32l4xx/include/mcu/mcu_vectors.h | 72 +++++++ .../include/mcu/vectors/stm32l412xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l422xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l431xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l432xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l433xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l442xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l443xx_vectors.h | 118 ++++++++++++ .../include/mcu/vectors/stm32l451xx_vectors.h | 120 ++++++++++++ .../include/mcu/vectors/stm32l452xx_vectors.h | 120 ++++++++++++ .../include/mcu/vectors/stm32l462xx_vectors.h | 120 ++++++++++++ .../include/mcu/vectors/stm32l471xx_vectors.h | 117 ++++++++++++ .../include/mcu/vectors/stm32l475xx_vectors.h | 117 ++++++++++++ .../include/mcu/vectors/stm32l476xx_vectors.h | 117 ++++++++++++ .../include/mcu/vectors/stm32l485xx_vectors.h | 117 ++++++++++++ .../include/mcu/vectors/stm32l486xx_vectors.h | 117 ++++++++++++ .../include/mcu/vectors/stm32l496xx_vectors.h | 126 +++++++++++++ .../include/mcu/vectors/stm32l4a6xx_vectors.h | 126 +++++++++++++ .../include/mcu/vectors/stm32l4p5xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4q5xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4r5xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4r7xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4r9xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4s5xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4s7xx_vectors.h | 130 +++++++++++++ .../include/mcu/vectors/stm32l4s9xx_vectors.h | 130 +++++++++++++ hw/mcu/stm/stm32l4xx/link/include/mcu_config.ld.h | 20 ++ .../stm/stm32l4xx/link/include/memory_regions.ld.h | 20 ++ hw/mcu/stm/stm32l4xx/pkg.yml | 1 + hw/mcu/stm/stm32l4xx/src/hal_system_init.c | 43 +++++ hw/mcu/stm/stm32l4xx/src/system_stm32l4xx.c | 9 - hw/mcu/stm/stm32l4xx/stm32l476.ld | 210 --------------------- 33 files changed, 3224 insertions(+), 220 deletions(-) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/cmsis_nvic.h b/hw/mcu/stm/stm32l4xx/include/mcu/cmsis_nvic.h index 74e179074..dbf2cc2e7 100644 --- a/hw/mcu/stm/stm32l4xx/include/mcu/cmsis_nvic.h +++ b/hw/mcu/stm/stm32l4xx/include/mcu/cmsis_nvic.h @@ -9,7 +9,11 @@ #include <stdint.h> -#define NVIC_NUM_VECTORS (16 + 82) // CORE + MCU Peripherals +extern uint32_t __isr_vector_start[]; +extern uint32_t __isr_vector_end[]; + +/* Extract number of vectors from .interrupt section size */ +#define NVIC_NUM_VECTORS (__isr_vector_end - __isr_vector_start) #define NVIC_USER_IRQ_OFFSET 16 #include "stm32l4xx.h" diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/mcu_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/mcu_vectors.h new file mode 100644 index 000000000..887896d10 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/mcu_vectors.h @@ -0,0 +1,72 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#if defined(STM32L412xx) +#include "vectors/stm32l412xx_vectors.h" +#elif defined(STM32L422xx) +#include "vectors/stm32l422xx_vectors.h" +#elif defined(STM32L431xx) +#include "vectors/stm32l431xx_vectors.h" +#elif defined(STM32L432xx) +#include "vectors/stm32l432xx_vectors.h" +#elif defined(STM32L433xx) +#include "vectors/stm32l433xx_vectors.h" +#elif defined(STM32L442xx) +#include "vectors/stm32l442xx_vectors.h" +#elif defined(STM32L443xx) +#include "vectors/stm32l443xx_vectors.h" +#elif defined(STM32L451xx) +#include "vectors/stm32l451xx_vectors.h" +#elif defined(STM32L452xx) +#include "vectors/stm32l452xx_vectors.h" +#elif defined(STM32L462xx) +#include "vectors/stm32l462xx_vectors.h" +#elif defined(STM32L471xx) +#include "vectors/stm32l471xx_vectors.h" +#elif defined(STM32L475xx) +#include "vectors/stm32l475xx_vectors.h" +#elif defined(STM32L476xx) +#include "vectors/stm32l476xx_vectors.h" +#elif defined(STM32L485xx) +#include "vectors/stm32l485xx_vectors.h" +#elif defined(STM32L486xx) +#include "vectors/stm32l486xx_vectors.h" +#elif defined(STM32L496xx) +#include "vectors/stm32l496xx_vectors.h" +#elif defined(STM32L4A6xx) +#include "vectors/stm32l4a6xx_vectors.h" +#elif defined(STM32L4P5xx) +#include "vectors/stm32l4p5xx_vectors.h" +#elif defined(STM32L4Q5xx) +#include "vectors/stm32l4q5xx_vectors.h" +#elif defined(STM32L4R5xx) +#include "vectors/stm32l4r5xx_vectors.h" +#elif defined(STM32L4R7xx) +#include "vectors/stm32l4r7xx_vectors.h" +#elif defined(STM32L4R9xx) +#include "vectors/stm32l4r9xx_vectors.h" +#elif defined(STM32L4S5xx) +#include "vectors/stm32l4s5xx_vectors.h" +#elif defined(STM32L4S7xx) +#include "vectors/stm32l4s7xx_vectors.h" +#elif defined(STM32L4S9xx) +#include "vectors/stm32l4s9xx_vectors.h" +#else +#error "Please select first the target STM32L4xx device used in your application" +#endif diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l412xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l412xx_vectors.h new file mode 100644 index 000000000..883948f88 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l412xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l422xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l422xx_vectors.h new file mode 100644 index 000000000..62945bd2d --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l422xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l431xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l431xx_vectors.h new file mode 100644 index 000000000..777fe8838 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l431xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l432xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l432xx_vectors.h new file mode 100644 index 000000000..071ec9cd3 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l432xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l433xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l433xx_vectors.h new file mode 100644 index 000000000..af5dd676c --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l433xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(LCD_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l442xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l442xx_vectors.h new file mode 100644 index 000000000..2e47774b5 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l442xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l443xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l443xx_vectors.h new file mode 100644 index 000000000..9f52153cf --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l443xx_vectors.h @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(LCD_IRQHandler) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l451xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l451xx_vectors.h new file mode 100644 index 000000000..4c48b8c2c --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l451xx_vectors.h @@ -0,0 +1,120 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l452xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l452xx_vectors.h new file mode 100644 index 000000000..588a20c7e --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l452xx_vectors.h @@ -0,0 +1,120 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l462xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l462xx_vectors.h new file mode 100644 index 000000000..6ceb7c170 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l462xx_vectors.h @@ -0,0 +1,120 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(USB_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l471xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l471xx_vectors.h new file mode 100644 index 000000000..a32281ab3 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l471xx_vectors.h @@ -0,0 +1,117 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l475xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l475xx_vectors.h new file mode 100644 index 000000000..d0623aeed --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l475xx_vectors.h @@ -0,0 +1,117 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l476xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l476xx_vectors.h new file mode 100644 index 000000000..a6597c80b --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l476xx_vectors.h @@ -0,0 +1,117 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(LCD_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l485xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l485xx_vectors.h new file mode 100644 index 000000000..dbd3795e1 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l485xx_vectors.h @@ -0,0 +1,117 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l486xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l486xx_vectors.h new file mode 100644 index 000000000..6d9cf0253 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l486xx_vectors.h @@ -0,0 +1,117 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(LCD_IRQHandler) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l496xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l496xx_vectors.h new file mode 100644 index 000000000..6dfe3fd03 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l496xx_vectors.h @@ -0,0 +1,126 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(LCD_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR(CAN2_TX_IRQHandler) +INT_VECTOR(CAN2_RX0_IRQHandler) +INT_VECTOR(CAN2_RX1_IRQHandler) +INT_VECTOR(CAN2_SCE_IRQHandler) +INT_VECTOR(DMA2D_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4a6xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4a6xx_vectors.h new file mode 100644 index 000000000..cd39c65e4 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4a6xx_vectors.h @@ -0,0 +1,126 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(ADC3_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(QUADSPI_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(SWPMI1_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(LCD_IRQHandler) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(HASH_RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR(CAN2_TX_IRQHandler) +INT_VECTOR(CAN2_RX0_IRQHandler) +INT_VECTOR(CAN2_RX1_IRQHandler) +INT_VECTOR(CAN2_SCE_IRQHandler) +INT_VECTOR(DMA2D_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4p5xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4p5xx_vectors.h new file mode 100644 index 000000000..fbf9d866a --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4p5xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(SDMMC2_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(HASH_CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_PSSI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4q5xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4q5xx_vectors.h new file mode 100644 index 000000000..b4a1b790c --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4q5xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_2_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR(SDMMC2_IRQHandler) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(HASH_CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_PSSI_IRQHandler) +INT_VECTOR(PKA_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r5xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r5xx_vectors.h new file mode 100644 index 000000000..aefae02cc --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r5xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR(GFXMMU_IRQHandler) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r7xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r7xx_vectors.h new file mode 100644 index 000000000..aefae02cc --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r7xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR(GFXMMU_IRQHandler) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r9xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r9xx_vectors.h new file mode 100644 index 000000000..0b8616569 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4r9xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(DSI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR(GFXMMU_IRQHandler) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s5xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s5xx_vectors.h new file mode 100644 index 000000000..e75949cad --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s5xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(HASH_CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR(GFXMMU_IRQHandler) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s7xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s7xx_vectors.h new file mode 100644 index 000000000..e75949cad --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s7xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(HASH_CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR(GFXMMU_IRQHandler) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s9xx_vectors.h b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s9xx_vectors.h new file mode 100644 index 000000000..204a91904 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/include/mcu/vectors/stm32l4s9xx_vectors.h @@ -0,0 +1,130 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +INT_VECTOR_STACK_TOP(__StackTop) +INT_VECTOR_RESET_HANDLER(Reset_Handler) +INT_VECTOR_NMI_HANDLER(NMI_Handler) +INT_VECTOR_HARDFAULT_HANDLER(HardFault_Handler) +INT_VECTOR_MEMMANAGE_HANDLER(MemManage_Handler) +INT_VECTOR_BUSFAULT_HANDLER(BusFault_Handler) +INT_VECTOR_USAGEFAULT_HANDLER(UsageFault_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_SVC_HANDLER(SVC_Handler) +INT_VECTOR_DEBUGMON_HANDLER(DebugMon_Handler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_PENDSV_HANDLER(PendSV_Handler) +INT_VECTOR_SYSTICK_HANDLER(SysTick_Handler) +INT_VECTOR(WWDG_IRQHandler) +INT_VECTOR(PVD_PVM_IRQHandler) +INT_VECTOR(TAMP_STAMP_IRQHandler) +INT_VECTOR(RTC_WKUP_IRQHandler) +INT_VECTOR(FLASH_IRQHandler) +INT_VECTOR(RCC_IRQHandler) +INT_VECTOR(EXTI0_IRQHandler) +INT_VECTOR(EXTI1_IRQHandler) +INT_VECTOR(EXTI2_IRQHandler) +INT_VECTOR(EXTI3_IRQHandler) +INT_VECTOR(EXTI4_IRQHandler) +INT_VECTOR(DMA1_Channel1_IRQHandler) +INT_VECTOR(DMA1_Channel2_IRQHandler) +INT_VECTOR(DMA1_Channel3_IRQHandler) +INT_VECTOR(DMA1_Channel4_IRQHandler) +INT_VECTOR(DMA1_Channel5_IRQHandler) +INT_VECTOR(DMA1_Channel6_IRQHandler) +INT_VECTOR(DMA1_Channel7_IRQHandler) +INT_VECTOR(ADC1_IRQHandler) +INT_VECTOR(CAN1_TX_IRQHandler) +INT_VECTOR(CAN1_RX0_IRQHandler) +INT_VECTOR(CAN1_RX1_IRQHandler) +INT_VECTOR(CAN1_SCE_IRQHandler) +INT_VECTOR(EXTI9_5_IRQHandler) +INT_VECTOR(TIM1_BRK_TIM15_IRQHandler) +INT_VECTOR(TIM1_UP_TIM16_IRQHandler) +INT_VECTOR(TIM1_TRG_COM_TIM17_IRQHandler) +INT_VECTOR(TIM1_CC_IRQHandler) +INT_VECTOR(TIM2_IRQHandler) +INT_VECTOR(TIM3_IRQHandler) +INT_VECTOR(TIM4_IRQHandler) +INT_VECTOR(I2C1_EV_IRQHandler) +INT_VECTOR(I2C1_ER_IRQHandler) +INT_VECTOR(I2C2_EV_IRQHandler) +INT_VECTOR(I2C2_ER_IRQHandler) +INT_VECTOR(SPI1_IRQHandler) +INT_VECTOR(SPI2_IRQHandler) +INT_VECTOR(USART1_IRQHandler) +INT_VECTOR(USART2_IRQHandler) +INT_VECTOR(USART3_IRQHandler) +INT_VECTOR(EXTI15_10_IRQHandler) +INT_VECTOR(RTC_Alarm_IRQHandler) +INT_VECTOR(DFSDM1_FLT3_IRQHandler) +INT_VECTOR(TIM8_BRK_IRQHandler) +INT_VECTOR(TIM8_UP_IRQHandler) +INT_VECTOR(TIM8_TRG_COM_IRQHandler) +INT_VECTOR(TIM8_CC_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR(FMC_IRQHandler) +INT_VECTOR(SDMMC1_IRQHandler) +INT_VECTOR(TIM5_IRQHandler) +INT_VECTOR(SPI3_IRQHandler) +INT_VECTOR(UART4_IRQHandler) +INT_VECTOR(UART5_IRQHandler) +INT_VECTOR(TIM6_DAC_IRQHandler) +INT_VECTOR(TIM7_IRQHandler) +INT_VECTOR(DMA2_Channel1_IRQHandler) +INT_VECTOR(DMA2_Channel2_IRQHandler) +INT_VECTOR(DMA2_Channel3_IRQHandler) +INT_VECTOR(DMA2_Channel4_IRQHandler) +INT_VECTOR(DMA2_Channel5_IRQHandler) +INT_VECTOR(DFSDM1_FLT0_IRQHandler) +INT_VECTOR(DFSDM1_FLT1_IRQHandler) +INT_VECTOR(DFSDM1_FLT2_IRQHandler) +INT_VECTOR(COMP_IRQHandler) +INT_VECTOR(LPTIM1_IRQHandler) +INT_VECTOR(LPTIM2_IRQHandler) +INT_VECTOR(OTG_FS_IRQHandler) +INT_VECTOR(DMA2_Channel6_IRQHandler) +INT_VECTOR(DMA2_Channel7_IRQHandler) +INT_VECTOR(LPUART1_IRQHandler) +INT_VECTOR(OCTOSPI1_IRQHandler) +INT_VECTOR(I2C3_EV_IRQHandler) +INT_VECTOR(I2C3_ER_IRQHandler) +INT_VECTOR(SAI1_IRQHandler) +INT_VECTOR(SAI2_IRQHandler) +INT_VECTOR(OCTOSPI2_IRQHandler) +INT_VECTOR(TSC_IRQHandler) +INT_VECTOR(DSI_IRQHandler) +INT_VECTOR(AES_IRQHandler) +INT_VECTOR(RNG_IRQHandler) +INT_VECTOR(FPU_IRQHandler) +INT_VECTOR(HASH_CRS_IRQHandler) +INT_VECTOR(I2C4_ER_IRQHandler) +INT_VECTOR(I2C4_EV_IRQHandler) +INT_VECTOR(DCMI_IRQHandler) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR_UNUSED(0) +INT_VECTOR(DMA2D_IRQHandler) +INT_VECTOR(LTDC_IRQHandler) +INT_VECTOR(LTDC_ER_IRQHandler) +INT_VECTOR(GFXMMU_IRQHandler) +INT_VECTOR(DMAMUX1_OVR_IRQHandler) diff --git a/hw/mcu/stm/stm32l4xx/link/include/mcu_config.ld.h b/hw/mcu/stm/stm32l4xx/link/include/mcu_config.ld.h new file mode 100644 index 000000000..43504192a --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/link/include/mcu_config.ld.h @@ -0,0 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#define TEXT_RAM SRAM2 diff --git a/hw/mcu/stm/stm32l4xx/link/include/memory_regions.ld.h b/hw/mcu/stm/stm32l4xx/link/include/memory_regions.ld.h new file mode 100644 index 000000000..1e8c2f4c0 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/link/include/memory_regions.ld.h @@ -0,0 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +SRAM2 (rxw) : ORIGIN = 0x10000000, LENGTH = 32K diff --git a/hw/mcu/stm/stm32l4xx/pkg.yml b/hw/mcu/stm/stm32l4xx/pkg.yml index 9bcb0cd26..b514f4c55 100644 --- a/hw/mcu/stm/stm32l4xx/pkg.yml +++ b/hw/mcu/stm/stm32l4xx/pkg.yml @@ -45,6 +45,7 @@ pkg.deps: - "@apache-mynewt-core/hw/hal" - "@apache-mynewt-core/hw/mcu/stm/stm32_common" - "@apache-mynewt-core/hw/cmsis-core" + - "@apache-mynewt-core/boot/startup" pkg.deps.'(SPI_0_MASTER || SPI_1_MASTER || SPI_2_MASTER) && BUS_DRIVER_PRESENT': - "@apache-mynewt-core/hw/bus/drivers/spi_stm32" diff --git a/hw/mcu/stm/stm32l4xx/src/hal_system_init.c b/hw/mcu/stm/stm32l4xx/src/hal_system_init.c new file mode 100644 index 000000000..5a1935b18 --- /dev/null +++ b/hw/mcu/stm/stm32l4xx/src/hal_system_init.c @@ -0,0 +1,43 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#include "os/mynewt.h" +#include "mcu/stm32_hal.h" +#include <hal/hal_system.h> + +extern char __vector_tbl_reloc__[]; + +void SystemClock_Config(void); + +void +hal_system_init(void) +{ + SCB->VTOR = (uint32_t)&__vector_tbl_reloc__; + + /* Configure System Clock */ + SystemClock_Config(); + + /* Update SystemCoreClock global variable */ + SystemCoreClockUpdate(); + + if (PREFETCH_ENABLE) { + __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); + } +} + diff --git a/hw/mcu/stm/stm32l4xx/src/system_stm32l4xx.c b/hw/mcu/stm/stm32l4xx/src/system_stm32l4xx.c index 1e5b5f603..fbf721f13 100644 --- a/hw/mcu/stm/stm32l4xx/src/system_stm32l4xx.c +++ b/hw/mcu/stm/stm32l4xx/src/system_stm32l4xx.c @@ -73,15 +73,6 @@ void SystemInit(void) /* Disable all interrupts */ RCC->CIER = 0x00000000U; - - /* Configure System Clock */ - SystemClock_Config(); - - /* Update SystemCoreClock global variable */ - SystemCoreClockUpdate(); - - /* Relocate the vector table */ - NVIC_Relocate(); } /** diff --git a/hw/mcu/stm/stm32l4xx/stm32l476.ld b/hw/mcu/stm/stm32l4xx/stm32l476.ld deleted file mode 100644 index 3a9e4b474..000000000 --- a/hw/mcu/stm/stm32l4xx/stm32l476.ld +++ /dev/null @@ -1,210 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -/* Linker script to place sections and symbol values. Should be used together - * with other linker script that defines memory regions FLASH and RAM. - * It references following symbols, which must be defined in code: - * Reset_Handler : Entry of reset handler - * - * It defines following symbols, which code can use without definition: - * __exidx_start - * __exidx_end - * __etext - * __data_start__ - * __preinit_array_start - * __preinit_array_end - * __init_array_start - * __init_array_end - * __fini_array_start - * __fini_array_end - * __data_end__ - * __bss_start__ - * __bss_end__ - * __end__ - * end - * __HeapBase - * __HeapLimit - * __StackLimit - * __StackTop - * __stack - * __coredata_start__ - * __coredata_end__ - * __corebss_start__ - * __corebss_end__ - * __ecoredata - * __ecorebss - */ -ENTRY(Reset_Handler) - -_estack = ORIGIN(RAM) + LENGTH(RAM); - -SECTIONS -{ - /* Reserve space at the start of the image for the header. */ - .imghdr (NOLOAD): - { - . = . + _imghdr_size; - } > FLASH - - .text : - { - . = ALIGN(8); - __isr_vector_start = .; - KEEP(*(.isr_vector)) - __isr_vector_end = .; - *(.text*) - - KEEP(*(.init)) - KEEP(*(.fini)) - - /* preinit data */ - PROVIDE_HIDDEN (__preinit_array_start = .); - KEEP(*(.preinit_array)) - PROVIDE_HIDDEN (__preinit_array_end = .); - - . = ALIGN(8); - /* init data */ - PROVIDE_HIDDEN (__init_array_start = .); - KEEP(*(SORT(.init_array.*))) - KEEP(*(.init_array)) - PROVIDE_HIDDEN (__init_array_end = .); - - . = ALIGN(8); - /* finit data */ - PROVIDE_HIDDEN (__fini_array_start = .); - KEEP(*(SORT(.fini_array.*))) - KEEP(*(.fini_array)) - PROVIDE_HIDDEN (__fini_array_end = .); - - /* .ctors */ - *crtbegin.o(.ctors) - *crtbegin?.o(.ctors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) - *(SORT(.ctors.*)) - *(.ctors) - - /* .dtors */ - *crtbegin.o(.dtors) - *crtbegin?.o(.dtors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) - *(SORT(.dtors.*)) - *(.dtors) - -INCLUDE "link_tables.ld.h" - *(.rodata*) - - KEEP(*(.eh_frame*)) - PROVIDE(mynewt_main = main); - } > FLASH - - .ARM.extab : - { - *(.ARM.extab* .gnu.linkonce.armextab.*) - } > FLASH - - __exidx_start = .; - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > FLASH - - __exidx_end = .; - - __etext = .; - - .vector_relocation : - { - . = ALIGN(8); - __vector_tbl_reloc__ = .; - . = . + (__isr_vector_end - __isr_vector_start); - } > RAM - - .coredata : - { - . = ALIGN(8); - __coredata_start__ = .; - *(.data.core) - __coredata_end__ = .; - } > RAM AT > FLASH - - __ecoredata = __etext + SIZEOF(.coredata); - - _sidata = LOADADDR(.data); - - .data : - { - . = ALIGN(8); - _sdata = .; - __data_start__ = _sdata; - *(vtable) - *(.data*) - - KEEP(*(.jcr*)) - . = ALIGN(8); - /* All data end */ - _edata = .; - __data_end__ = _edata; - - } > RAM AT > FLASH - - .corebss (NOLOAD): - { - . = ALIGN(4); - __corebss_start__ = .; - *(.bss.core) - . = ALIGN(4); - __corebss_end__ = .; - *(.corebss*) - *(.bss.core.nz) - . = ALIGN(4); - __ecorebss = .; - } > RAM - - .bss : - { - . = ALIGN(4); - _sbss = .; - __bss_start__ = _sbss; - *(.bss*) - *(COMMON) - . = ALIGN(4); - _ebss = .; - __bss_end__ = _ebss; - } > RAM - - . = ALIGN(8); - __HeapBase = .; - __HeapLimit = ORIGIN(RAM) + LENGTH(RAM); - - _ram_start = ORIGIN(RAM); - - /* .stack_dummy section doesn't contains any symbols. It is only - * used for linker to calculate size of stack sections, and assign - * values to stack symbols later */ - .stack_dummy (COPY): - { - *(.stack*) - } > RAM - - /* Set stack top to end of RAM; stack limit is bottom of stack */ - __StackTop = ORIGIN(RAM) + LENGTH(RAM); - __StackLimit = __StackTop - SIZEOF(.stack_dummy); - PROVIDE(__stack = __StackTop); -} -
