From c4b384d22f6e3c6b7b443bf4ce41c42d6da0bb90 Mon Sep 17 00:00:00 2001 From: hathach Date: Thu, 5 Sep 2019 22:12:43 +0700 Subject: [PATCH] switch stm32f4 to use st_driver submodule --- hw/bsp/stm32f407disco/board.mk | 27 +++++++++++++++------------ hw/bsp/stm32f411disco/board.mk | 29 ++++++++++++++++------------- hw/mcu/st/st_driver | 2 +- 3 files changed, 32 insertions(+), 26 deletions(-) diff --git a/hw/bsp/stm32f407disco/board.mk b/hw/bsp/stm32f407disco/board.mk index bc1fd7c7..cf489017 100644 --- a/hw/bsp/stm32f407disco/board.mk +++ b/hw/bsp/stm32f407disco/board.mk @@ -2,32 +2,35 @@ CFLAGS += \ -DHSE_VALUE=8000000 \ -DSTM32F407xx \ -mthumb \ - -mabi=aapcs-linux \ + -mabi=aapcs \ -mcpu=cortex-m4 \ -mfloat-abi=hard \ -mfpu=fpv4-sp-d16 \ -nostdlib -nostartfiles \ -DCFG_TUSB_MCU=OPT_MCU_STM32F4 +ST_HAL_DRIVER = hw/mcu/st/st_driver/STM32F4xx_HAL_Driver +ST_CMSIS = hw/mcu/st/st_driver/CMSIS/Device/ST/STM32F4xx + # All source paths should be relative to the top level. LD_FILE = hw/bsp/stm32f407disco/STM32F407VGTx_FLASH.ld SRC_C += \ - hw/mcu/st/system-init/system_stm32f4xx.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c + $(ST_CMSIS)/Source/Templates/system_stm32f4xx.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal_cortex.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal_rcc.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal_gpio.c SRC_S += \ - hw/mcu/st/startup/stm32f4/startup_stm32f407xx.s + $(ST_CMSIS)/Source/Templates/gcc/startup_stm32f407xx.s INC += \ - $(TOP)/hw/mcu/st/cmsis \ - $(TOP)/hw/mcu/st/stm32lib/CMSIS/STM32F4xx/Include \ - $(TOP)/hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Inc \ - $(TOP)/hw/bsp/stm32f407disco - + $(TOP)/hw/mcu/st/st_driver/CMSIS/Include \ + $(TOP)/$(ST_CMSIS)/Include \ + $(TOP)/$(ST_HAL_DRIVER)/Inc \ + $(TOP)/hw/bsp/$(BOARD) + # For TinyUSB port source VENDOR = st CHIP_FAMILY = stm32f4 diff --git a/hw/bsp/stm32f411disco/board.mk b/hw/bsp/stm32f411disco/board.mk index 5a03aaad..d3189a94 100644 --- a/hw/bsp/stm32f411disco/board.mk +++ b/hw/bsp/stm32f411disco/board.mk @@ -2,31 +2,34 @@ CFLAGS += \ -DHSE_VALUE=8000000 \ -DSTM32F411xE \ -mthumb \ - -mabi=aapcs-linux \ + -mabi=aapcs \ -mcpu=cortex-m4 \ -mfloat-abi=hard \ -mfpu=fpv4-sp-d16 \ - -DCFG_TUSB_MCU=OPT_MCU_STM32F4 \ - -nostdlib -nostartfiles + -nostdlib -nostartfiles \ + -DCFG_TUSB_MCU=OPT_MCU_STM32F4 + +ST_HAL_DRIVER = hw/mcu/st/st_driver/STM32F4xx_HAL_Driver +ST_CMSIS = hw/mcu/st/st_driver/CMSIS/Device/ST/STM32F4xx # All source paths should be relative to the top level. LD_FILE = hw/bsp/stm32f411disco/STM32F411VETx_FLASH.ld SRC_C += \ - hw/mcu/st/system-init/system_stm32f4xx.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c \ - hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c + $(ST_CMSIS)/Source/Templates/system_stm32f4xx.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal_cortex.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal_rcc.c \ + $(ST_HAL_DRIVER)/Src/stm32f4xx_hal_gpio.c SRC_S += \ - hw/mcu/st/startup/stm32f4/startup_stm32f411xe.s + $(ST_CMSIS)/Source/Templates/gcc/startup_stm32f411xe.s INC += \ - $(TOP)/hw/mcu/st/cmsis \ - $(TOP)/hw/mcu/st/stm32lib/CMSIS/STM32F4xx/Include \ - $(TOP)/hw/mcu/st/stm32lib/STM32F4xx_HAL_Driver/Inc \ - $(TOP)/hw/bsp/stm32f411disco + $(TOP)/hw/mcu/st/st_driver/CMSIS/Include \ + $(TOP)/$(ST_CMSIS)/Include \ + $(TOP)/$(ST_HAL_DRIVER)/Inc \ + $(TOP)/hw/bsp/$(BOARD) # For TinyUSB port source VENDOR = st diff --git a/hw/mcu/st/st_driver b/hw/mcu/st/st_driver index a5fef7cc..acc346e9 160000 --- a/hw/mcu/st/st_driver +++ b/hw/mcu/st/st_driver @@ -1 +1 @@ -Subproject commit a5fef7cc227b23057266b4d19429e47626270491 +Subproject commit acc346e98e646ba16b7c495ef3e9363d289b8ea1