Browse Source

[BUILD] Port all f405 and f427 targets to cmake

master
Alberto García Hierro 5 years ago
parent
commit
0811839935
  1. 12
      cmake/inav.cmake
  2. 7
      cmake/stm32-usb.cmake
  3. 196
      cmake/stm32.cmake
  4. 151
      cmake/stm32f4.cmake
  5. 1
      src/CMakeLists.txt
  6. 142
      src/main/CMakeLists.txt
  7. 1
      src/main/target/AIKONF4/CMakeLists.txt
  8. 1
      src/main/target/AIRBOTF4/CMakeLists.txt
  9. 1
      src/main/target/ASGARD32F4/CMakeLists.txt
  10. 1
      src/main/target/BEEROTORF4/CMakeLists.txt
  11. 1
      src/main/target/BETAFLIGHTF4/CMakeLists.txt
  12. 1
      src/main/target/BLUEJAYF4/CMakeLists.txt
  13. 3
      src/main/target/CLRACINGF4AIR/CMakeLists.txt
  14. 2
      src/main/target/COLIBRI/CMakeLists.txt
  15. 1
      src/main/target/DALRCF405/CMakeLists.txt
  16. 1
      src/main/target/F4BY/CMakeLists.txt
  17. 2
      src/main/target/FF_F35_LIGHTNING/CMakeLists.txt
  18. 1
      src/main/target/FF_FORTINIF4/CMakeLists.txt
  19. 2
      src/main/target/FF_PIKOF4/CMakeLists.txt
  20. 2
      src/main/target/FIREWORKSV2/CMakeLists.txt
  21. 1
      src/main/target/FISHDRONEF4/CMakeLists.txt
  22. 1
      src/main/target/FOXEERF405/CMakeLists.txt
  23. 1
      src/main/target/FRSKYF4/CMakeLists.txt
  24. 2
      src/main/target/FURYF4OSD/CMakeLists.txt
  25. 1
      src/main/target/IFLIGHTF4_TWING/CMakeLists.txt
  26. 2
      src/main/target/KAKUTEF4/CMakeLists.txt
  27. 1
      src/main/target/MAMBAF405US/CMakeLists.txt
  28. 3
      src/main/target/MATEKF405/CMakeLists.txt
  29. 1
      src/main/target/MATEKF405SE/CMakeLists.txt
  30. 12
      src/main/target/OMNIBUSF4/CMakeLists.txt
  31. 1
      src/main/target/PIXRACER/CMakeLists.txt
  32. 1
      src/main/target/REVO/CMakeLists.txt
  33. 1
      src/main/target/SPARKY2/CMakeLists.txt
  34. 3
      src/main/target/SPEEDYBEEF4/CMakeLists.txt
  35. 1
      src/main/target/SPRACINGF4EVO/CMakeLists.txt

12
cmake/inav.cmake

@ -4,11 +4,9 @@ set(INAV_INCLUDE_DIRS
"${INAV_LIB_DIR}/main/MAVLink"
)
# TODO: We need a way to override HSE_VALUE
set(INAV_DEFINITIONS
__FORKNAME__=inav
__REVISION__="${GIT_SHORT_HASH}"
HSE_VALUE=8000000
)
set(INAV_COMPILE_OPTIONS
@ -43,7 +41,7 @@ endmacro()
function(setup_firmware_target name)
target_compile_options(${name} PRIVATE ${INAV_COMPILE_OPTIONS})
target_include_directories(${name} PRIVATE ${INAV_INCLUDE_DIRS})
target_compile_definitions(${name} PRIVATE ${INAV_DEFINITIONS} __TARGET__="${name}")
target_compile_definitions(${name} PRIVATE ${INAV_DEFINITIONS} __TARGET__="${name}" ${name})
enable_settings(${name})
# XXX: Don't make SETTINGS_GENERATED_C part of the build,
# since it's compiled via #include in settings.c. This will
@ -59,7 +57,11 @@ endfunction()
function(collect_targets)
get_property(targets GLOBAL PROPERTY VALID_TARGETS)
list(SORT targets)
add_custom_target("targets"
set(list_target_name "targets")
add_custom_target(${list_target_name}
COMMAND cmake -E echo "Valid targets: ${targets}")
set_property(TARGET "targets" PROPERTY TARGET_MESSAGES OFF)
set_property(TARGET ${list_target_name} PROPERTY
TARGET_MESSAGES OFF
EXCLUDE_FROM_ALL 1
EXCLUDE_FROM_DEFAULT_BUILD 1)
endfunction()

7
cmake/stm32-usb.cmake

@ -16,13 +16,6 @@ set(STM32_STDPERIPH_USB_INCLUDE_DIRS
"${STM32_STDPERIPH_USBFS_DIR}/inc"
)
SET(STM32_STDPERIPH_USBOTG_SRC_EXCLUDES
usb_bsp_template.c
usb_conf_template.c
usb_hcd_int.c
usb_hcd.c
usb_otg.c
)
set(STM32_STDPERIPH_USBOTG_SRC
usb_core.c
usb_dcd.c

196
cmake/stm32.cmake

@ -1,6 +1,9 @@
include(arm-none-eabi)
include(stm32f4)
include(stm32-usb)
include(CMakeParseArguments)
set(CMSIS_DIR "${INAV_LIB_DIR}/main/CMSIS")
set(CMSIS_INCLUDE_DIR "${CMSIS_DIR}/Core/Include")
set(CMSIS_DSP_DIR "${INAV_LIB_DIR}/main/CMSIS/DSP")
@ -27,6 +30,21 @@ set(STM32_VCP_SRC
)
main_sources(STM32_VCP_SRC)
set(STM32_SDCARD_SRC
drivers/sdcard/sdcard.c
drivers/sdcard/sdcard_spi.c
drivers/sdcard/sdcard_sdio.c
drivers/sdcard/sdcard_standard.c
)
main_sources(STM32_SDCARD_SRC)
# XXX: This code is not STM32 specific
set(STM32_ASYNCFATFS_SRC
io/asyncfatfs/asyncfatfs.c
io/asyncfatfs/fat_standard.c
)
main_sources(STM32_ASYNCFATFS_SRC)
set(STM32_MSC_SRC
msc/usbd_msc_desc.c
msc/usbd_storage.c
@ -40,65 +58,25 @@ set(STM32_MSC_FLASH_SRC
)
main_sources(STM32_MSC_FLASH_SRC)
set(STM32F4_STDPERIPH_DIR "${INAV_LIB_DIR}/main/STM32F4/Drivers/STM32F4xx_StdPeriph_Driver")
set(STM32F4_CMSIS_DEVICE_DIR "${INAV_LIB_DIR}/main/STM32F4/Drivers/CMSIS/Device/ST/STM32F4xx")
set(STM32F4_CMSIS_DRIVERS_DIR "${INAV_LIB_DIR}/main/STM32F4/Drivers/CMSIS")
set(STM32F4_VCP_DIR "${INAV_MAIN_SRC_DIR}/vcpf4")
set(STM32F4_STDPERIPH_SRC_EXCLUDES
stm32f4xx_can.c
stm32f4xx_cec.c
stm32f4xx_crc.c
stm32f4xx_cryp.c
stm32f4xx_cryp_aes.c
stm32f4xx_cryp_des.c
stm32f4xx_cryp_tdes.c
stm32f4xx_dbgmcu.c
stm32f4xx_dsi.c
stm32f4xx_flash_ramfunc.c
stm32f4xx_fmpi2c.c
stm32f4xx_fmc.c
stm32f4xx_hash.c
stm32f4xx_hash_md5.c
stm32f4xx_hash_sha1.c
stm32f4xx_lptim.c
stm32f4xx_qspi.c
stm32f4xx_sai.c
stm32f4xx_spdifrx.c
set(STM32_MSC_SDCARD_SRC
msc/usbd_storage_sd_spi.c
)
main_sources(STM32_MSC_SDCARD_SRC)
set(STM32F4_STDPERIPH_SRC_DIR "${STM32F4_STDPERIPH_DIR}/Src")
glob_except(STM32F4_STDPERIPH_SRC "${STM32F4_STDPERIPH_SRC_DIR}/*.c" STM32F4_STDPERIPH_SRC_EXCLUDES)
set(STM32F4_VCP_SRC
stm32f4xx_it.c
usb_bsp.c
usbd_desc.c
usbd_usr.c
usbd_cdc_vcp.c
)
list(TRANSFORM STM32F4_VCP_SRC PREPEND "${STM32F4_VCP_DIR}/")
set(STM32F4_MSC_SRC
drivers/usb_msc_f4xx.c
)
main_sources(STM32F4_MSC_SRC)
set(STM32F4_INCLUDE_DIRS
set(STM32_INCLUDE_DIRS
"${CMSIS_INCLUDE_DIR}"
"${CMSIS_DSP_INCLUDE_DIR}"
"${STM32F4_STDPERIPH_DIR}/inc"
"${STM32F4_CMSIS_DEVICE_DIR}"
"${STM32F4_CMSIS_DRIVERS_DIR}"
"${STM32F4_VCP_DIR}"
"${INAV_MAIN_SRC_DIR}/target"
)
set(STM32_INCLUDE_DIRS
"${INAV_MAIN_SRC_DIR}/target"
set(STM32_DEFINITIONS
)
set(STM32_DEFAULT_HSE_MHZ 8)
set(STM32_LINKER_DIR "${INAV_MAIN_SRC_DIR}/target/link")
#if(SEMIHOSTING)
# set(SEMIHOSTING_DEFINITIONS "SEMIHOSTING")
# set(SEMIHOSTING_LDFLAGS
@ -135,57 +113,6 @@ set(STM32_LINK_OPTIONS
-Wl,--print-memory-usage
)
set(STM32F4_SRC
target/system_stm32f4xx.c
drivers/accgyro/accgyro.c
drivers/accgyro/accgyro_mpu.c
drivers/adc_stm32f4xx.c
drivers/adc_stm32f4xx.c
drivers/bus_i2c_stm32f40x.c
drivers/serial_softserial.c
drivers/serial_uart_stm32f4xx.c
drivers/system_stm32f4xx.c
drivers/timer.c
drivers/timer_impl_stdperiph.c
drivers/timer_stm32f4xx.c
drivers/uart_inverter.c
drivers/dma_stm32f4xx.c
drivers/sdcard/sdmmc_sdio_f4xx.c
)
main_sources(STM32F4_SRC)
set(STM32F4_DEFINITIONS
STM32F4
USE_STDPERIPH_DRIVER
ARM_MATH_MATRIX_CHECK
ARM_MATH_ROUNDING
__FPU_PRESENT=1
UNALIGNED_SUPPORT_DISABLE
ARM_MATH_CM4
)
set(STM32F4_COMMON_OPTIONS
-mthumb
-mcpu=cortex-m4
-march=armv7e-m
-mfloat-abi=hard
-mfpu=fpv4-sp-d16
-fsingle-precision-constant
)
set(STM32F4_COMPILE_OPTIONS
)
set(SETM32F4_LINK_OPTIONS
)
set(STM32F411_STDPERIPH_SRC_EXCLUDES "stm32f4xx_fsmc.c")
set(STM32F411_COMPILE_DEFINITIONS
FLASH_SIZE=512
)
macro(get_stm32_target_features) # out-var dir
file(READ "${ARGV1}/target.h" _contents)
string(REGEX MATCH "#define[\t ]+USE_VCP" HAS_VCP ${_contents})
@ -196,30 +123,63 @@ macro(get_stm32_target_features) # out-var dir
if(HAS_FLASHFS)
list(APPEND ${ARGV0} FLASHFS)
endif()
if (HAS_FLASHFS) # || SDCARD
string(REGEX MATCH "define[\t ]+USE_SDCARD" HAS_SDCARD ${_contents})
if (HAS_SDCARD)
list(APPEND ${ARGV0} SDCARD)
endif()
if(HAS_FLASHFS OR HAS_SDCARD)
list(APPEND ${ARGV0} MSC)
endif()
endmacro()
function(target_stm32 name)
function(target_stm32 name startup ldscript)
set(target_definitions)
# Parse keyword arguments
cmake_parse_arguments(
PARSED_ARGS
"" # No boolean arguments
"HSE_MHZ" # Single value arguments
"" # No multi-value arguments
${ARGN} # Start parsing after the known arguments
)
if (PARSED_ARGS_HSE_MHZ)
set(hse_mhz ${PARSED_ARGS_HSE_MHZ})
else()
set(hse_mhz ${STM32_DEFAULT_HSE_MHZ})
endif()
# Main .elf target
add_executable(${name} ${COMMON_SRC} ${CMSIS_DSP_SRC})
file(GLOB target_c_sources "${CMAKE_CURRENT_SOURCE_DIR}/*.c")
file(GLOB target_h_sources "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
target_sources(${name} PRIVATE ${target_c_sources} ${target_h_sources})
target_sources(${name} PRIVATE "${STM32_STARTUP_DIR}/${startup}")
target_link_options(${name} PRIVATE "-T${STM32_LINKER_DIR}/${ldscript}")
target_include_directories(${name} PRIVATE . ${STM32_INCLUDE_DIRS})
target_link_libraries(${name} PRIVATE ${STM32_LINK_LIBRARIES})
target_link_options(${name} PRIVATE ${STM32_LINK_OPTIONS})
set(target_definitions ${STM32_DEFINITIONS})
math(EXPR hse_value "${hse_mhz} * 1000000")
list(APPEND target_definitions "HSE_VALUE=${hse_value}")
target_compile_definitions(${name} PRIVATE ${target_definitions})
get_stm32_target_features(features "${CMAKE_CURRENT_SOURCE_DIR}")
set_property(TARGET ${name} PROPERTY FEATURES ${features})
if(VCP IN_LIST features)
target_sources(${name} PRIVATE ${STM32_VCP_SRC})
endif()
if(SDCARD IN_LIST features)
target_sources(${name} PRIVATE ${STM32_SDCARD_SRC} ${STM32_ASYNCFATFS_SRC})
endif()
if(MSC IN_LIST features)
target_sources(${name} PRIVATE ${STM32_MSC_SRC})
if (FLASHFS IN_LIST features)
target_sources(${name} PRIVATE ${STM32_MSC_FLASH_SRC})
endif()
if (SDCARD IN_LIST features)
target_sources(${name} PRIVATE ${STM32_MSC_SDCARD_SRC})
endif()
endif()
# Generate .hex
set(hexdir "${CMAKE_BINARY_DIR}/hex")
@ -232,32 +192,8 @@ function(target_stm32 name)
add_custom_target(${clean_target}
COMMAND cmake -E rm -r "${CMAKE_CURRENT_BINARY_DIR}"
COMMENT "Removeng intermediate files for ${name}")
set_property(TARGET ${clean_target} PROPERTY TARGET_MESSAGES OFF)
endfunction()
function(target_stm32f4xx name)
target_stm32(${name})
target_sources(${name} PRIVATE ${STM32F4_SRC})
target_compile_options(${name} PRIVATE ${STM32F4_COMMON_OPTIONS} ${STM32F4_COMPILE_OPTIONS})
target_include_directories(${name} PRIVATE ${STM32_STDPERIPH_USB_INCLUDE_DIRS} ${STM32F4_INCLUDE_DIRS})
target_compile_definitions(${name} PRIVATE ${STM32F4_DEFINITIONS})
target_link_options(${name} PRIVATE ${STM32F4_COMMON_OPTIONS} ${STM32F4_LINK_OPTIONS})
get_property(features TARGET ${name} PROPERTY FEATURES)
if(VCP IN_LIST features)
target_sources(${name} PRIVATE ${STM32_STDPERIPH_USB_SRC} ${STM32F4_VCP_SRC})
endif()
if(MSC IN_LIST features)
target_sources(${name} PRIVATE ${STM32F4_MSC_SRC})
endif()
endfunction()
function(target_stm32f411 name)
target_stm32f4xx(${name})
set(STM32F411_STDPERIPH_SRC ${STM32F4_STDPERIPH_SRC})
exclude_basenames(STM32F411_STDPERIPH_SRC STM32F411_STDPERIPH_SRC_EXCLUDES)
target_sources(${name} PRIVATE "${STM32_STARTUP_DIR}/startup_stm32f411xe.s" ${STM32F411_STDPERIPH_SRC})
target_link_options(${name} PRIVATE "-T${STM32_LINKER_DIR}/stm32_flash_f411.ld")
target_compile_definitions(${name} PRIVATE STM32F411xE ${STM32F411_COMPILE_DEFINITIONS})
setup_firmware_target(${name})
set_property(TARGET ${clean_target} PROPERTY
TARGET_MESSAGES OFF
EXCLUDE_FROM_ALL 1
EXCLUDE_FROM_DEFAULT_BUILD 1)
endfunction()

151
cmake/stm32f4.cmake

@ -0,0 +1,151 @@
set(STM32F4_STDPERIPH_DIR "${INAV_LIB_DIR}/main/STM32F4/Drivers/STM32F4xx_StdPeriph_Driver")
set(STM32F4_CMSIS_DEVICE_DIR "${INAV_LIB_DIR}/main/STM32F4/Drivers/CMSIS/Device/ST/STM32F4xx")
set(STM32F4_CMSIS_DRIVERS_DIR "${INAV_LIB_DIR}/main/STM32F4/Drivers/CMSIS")
set(STM32F4_VCP_DIR "${INAV_MAIN_SRC_DIR}/vcpf4")
set(STM32F4_STDPERIPH_SRC_EXCLUDES
stm32f4xx_can.c
stm32f4xx_cec.c
stm32f4xx_crc.c
stm32f4xx_cryp.c
stm32f4xx_cryp_aes.c
stm32f4xx_cryp_des.c
stm32f4xx_cryp_tdes.c
stm32f4xx_dbgmcu.c
stm32f4xx_dsi.c
stm32f4xx_flash_ramfunc.c
stm32f4xx_fmpi2c.c
stm32f4xx_fmc.c
stm32f4xx_hash.c
stm32f4xx_hash_md5.c
stm32f4xx_hash_sha1.c
stm32f4xx_lptim.c
stm32f4xx_qspi.c
stm32f4xx_sai.c
stm32f4xx_spdifrx.c
)
set(STM32F4_STDPERIPH_SRC_DIR "${STM32F4_STDPERIPH_DIR}/Src")
glob_except(STM32F4_STDPERIPH_SRC "${STM32F4_STDPERIPH_SRC_DIR}/*.c" STM32F4_STDPERIPH_SRC_EXCLUDES)
set(STM32F4_SRC
target/system_stm32f4xx.c
drivers/adc_stm32f4xx.c
drivers/adc_stm32f4xx.c
drivers/bus_i2c_stm32f40x.c
drivers/serial_softserial.c
drivers/serial_uart_stm32f4xx.c
drivers/system_stm32f4xx.c
drivers/timer.c
drivers/timer_impl_stdperiph.c
drivers/timer_stm32f4xx.c
drivers/uart_inverter.c
drivers/dma_stm32f4xx.c
drivers/sdcard/sdmmc_sdio_f4xx.c
)
main_sources(STM32F4_SRC)
set(STM32F4_VCP_SRC
stm32f4xx_it.c
usb_bsp.c
usbd_desc.c
usbd_usr.c
usbd_cdc_vcp.c
)
list(TRANSFORM STM32F4_VCP_SRC PREPEND "${STM32F4_VCP_DIR}/")
set(STM32F4_MSC_SRC
drivers/usb_msc_f4xx.c
)
main_sources(STM32F4_MSC_SRC)
set(STM32F4_INCLUDE_DIRS
"${CMSIS_INCLUDE_DIR}"
"${CMSIS_DSP_INCLUDE_DIR}"
"${STM32F4_STDPERIPH_DIR}/inc"
"${STM32F4_CMSIS_DEVICE_DIR}"
"${STM32F4_CMSIS_DRIVERS_DIR}"
"${STM32F4_VCP_DIR}"
)
set(STM32F4_DEFINITIONS
STM32F4
USE_STDPERIPH_DRIVER
ARM_MATH_MATRIX_CHECK
ARM_MATH_ROUNDING
__FPU_PRESENT=1
UNALIGNED_SUPPORT_DISABLE
ARM_MATH_CM4
)
set(STM32F4_COMMON_OPTIONS
-mthumb
-mcpu=cortex-m4
-march=armv7e-m
-mfloat-abi=hard
-mfpu=fpv4-sp-d16
-fsingle-precision-constant
)
set(STM32F4_COMPILE_OPTIONS
)
set(SETM32F4_LINK_OPTIONS
)
function(target_stm32f4xx name startup ldscript)
target_stm32(${name} ${startup} ${ldscript} ${ARGN})
target_sources(${name} PRIVATE ${STM32F4_SRC})
target_compile_options(${name} PRIVATE ${STM32F4_COMMON_OPTIONS} ${STM32F4_COMPILE_OPTIONS})
target_include_directories(${name} PRIVATE ${STM32_STDPERIPH_USB_INCLUDE_DIRS} ${STM32F4_INCLUDE_DIRS})
target_compile_definitions(${name} PRIVATE ${STM32F4_DEFINITIONS})
target_link_options(${name} PRIVATE ${STM32F4_COMMON_OPTIONS} ${STM32F4_LINK_OPTIONS})
get_property(features TARGET ${name} PROPERTY FEATURES)
if(VCP IN_LIST features)
target_sources(${name} PRIVATE ${STM32_STDPERIPH_USB_SRC} ${STM32F4_VCP_SRC})
endif()
if(MSC IN_LIST features)
target_sources(${name} PRIVATE ${STM32F4_MSC_SRC})
endif()
endfunction()
set(STM32F405_COMPILE_DEFINITIONS
STM32F40_41xxx
STM32F405xx
FLASH_SIZE=1024
)
function(target_stm32f405 name)
target_stm32f4xx(${name} startup_stm32f40xx.s stm32_flash_f405.ld ${ARGN})
target_sources(${name} PRIVATE ${STM32F4_STDPERIPH_SRC})
target_compile_definitions(${name} PRIVATE ${STM32F405_COMPILE_DEFINITIONS})
setup_firmware_target(${name})
endfunction()
set(STM32F411_OR_F427_STDPERIPH_SRC ${STM32F4_STDPERIPH_SRC})
set(STM32F411_OR_F427_STDPERIPH_SRC_EXCLUDES "stm32f4xx_fsmc.c")
exclude_basenames(STM32F411_OR_F427_STDPERIPH_SRC STM32F411_OR_F427_STDPERIPH_SRC_EXCLUDES)
set(STM32F411_COMPILE_DEFINITIONS
STM32F411xE
FLASH_SIZE=512
)
function(target_stm32f411 name)
target_stm32f4xx(${name} startup_stm32f411xe.s stm32_flash_f411.ld)
target_sources(${name} PRIVATE ${STM32F411_OR_F427_STDPERIPH_SRC})
target_compile_definitions(${name} PRIVATE ${STM32F411_COMPILE_DEFINITIONS})
setup_firmware_target(${name})
endfunction()
set(STM32F427_COMPILE_DEFINITIONS
STM32F427_437xx
FLASH_SIZE=1024
)
function(target_stm32f427 name)
target_stm32f4xx(${name} startup_stm32f427xx.s stm32_flash_f427.ld ${ARGN})
target_sources(${name} PRIVATE ${STM32F411_OR_F427_STDPERIPH_SRC})
target_compile_definitions(${name} PRIVATE ${STM32F427_COMPILE_DEFINITIONS})
setup_firmware_target(${name})
endfunction()

1
src/CMakeLists.txt

@ -0,0 +1 @@
add_subdirectory(main)

142
src/main/CMakeLists.txt

@ -35,50 +35,143 @@ set(COMMON_SRC
config/parameter_group.c
config/general_settings.c
drivers/1-wire.c
drivers/1-wire/ds_crc.c
drivers/1-wire/ds2482.c
drivers/accgyro/accgyro.c
drivers/accgyro/accgyro.h
drivers/accgyro/accgyro_adxl345.c
drivers/accgyro/accgyro_adxl345.h
drivers/accgyro/accgyro_bma280.c
drivers/accgyro/accgyro_bma280.h
drivers/accgyro/accgyro_bmi160.c
drivers/accgyro/accgyro_bmi160.h
drivers/accgyro/accgyro_fake.c
drivers/accgyro/accgyro_fake.h
drivers/accgyro/accgyro_icm20689.c
drivers/accgyro/accgyro_icm20689.h
drivers/accgyro/accgyro_l3g4200d.c
drivers/accgyro/accgyro_l3g4200d.h
drivers/accgyro/accgyro_l3gd20.c
drivers/accgyro/accgyro_l3gd20.h
drivers/accgyro/accgyro_lsm303dlhc.c
drivers/accgyro/accgyro_lsm303dlhc.h
drivers/accgyro/accgyro_mma845x.c
drivers/accgyro/accgyro_mma845x.h
drivers/accgyro/accgyro_mpu.c
drivers/accgyro/accgyro_mpu.h
drivers/accgyro/accgyro_mpu3050.c
drivers/accgyro/accgyro_mpu3050.h
drivers/accgyro/accgyro_mpu6000.c
drivers/accgyro/accgyro_mpu6000.h
drivers/accgyro/accgyro_mpu6050.c
drivers/accgyro/accgyro_mpu6050.h
drivers/accgyro/accgyro_mpu6500.c
drivers/accgyro/accgyro_mpu6500.h
drivers/accgyro/accgyro_mpu9250.c
drivers/accgyro/accgyro_mpu9250.h
drivers/adc.c
drivers/barometer/barometer.h
drivers/barometer/barometer_bmp085.c
drivers/barometer/barometer_bmp085.h
drivers/barometer/barometer_bmp280.c
drivers/barometer/barometer_bmp280.h
drivers/barometer/barometer_bmp388.c
drivers/barometer/barometer_bmp388.h
drivers/barometer/barometer_fake.c
drivers/barometer/barometer_fake.h
drivers/barometer/barometer_lps25h.c
drivers/barometer/barometer_lps25h.h
drivers/barometer/barometer_ms56xx.c
drivers/barometer/barometer_ms56xx.h
drivers/barometer/barometer_spl06.c
drivers/barometer/barometer_spl06.h
drivers/buf_writer.c
drivers/bus.c
drivers/bus_busdev_i2c.c
drivers/bus_busdev_spi.c
drivers/bus_i2c_soft.c
drivers/bus_spi.c
drivers/compass/compass.h
drivers/compass/compass_ak8963.c
drivers/compass/compass_ak8963.h
drivers/compass/compass_ak8975.c
drivers/compass/compass_ak8975.h
drivers/compass/compass_fake.c
drivers/compass/compass_fake.h
drivers/compass/compass_hmc5883l.c
drivers/compass/compass_hmc5883l.h
drivers/compass/compass_ist8308.c
drivers/compass/compass_ist8308.h
drivers/compass/compass_ist8310.c
drivers/compass/compass_ist8310.h
drivers/compass/compass_lis3mdl.c
drivers/compass/compass_lis3mdl.h
drivers/compass/compass_mag3110.c
drivers/compass/compass_mag3110.h
drivers/compass/compass_mpu9250.c
drivers/compass/compass_mpu9250.h
drivers/compass/compass_qmc5883l.c
drivers/compass/compass_qmc5883l.h
drivers/display.c
drivers/display_canvas.c
drivers/display_font_metadata.c
drivers/display_ug2864hsweg01.c
drivers/exti.c
drivers/flash.c
drivers/flash_m25p16.c
drivers/io.c
drivers/io_pca9685.c
drivers/irlock.c
drivers/light_led.c
drivers/light_ws2811strip.c
drivers/lights_io.c
drivers/max7456.c
drivers/opflow/opflow_fake.c
drivers/opflow/opflow_virtual.c
drivers/osd.c
drivers/persistent.c
drivers/resource.c
drivers/rx_nrf24l01.c
drivers/rx_spi.c
drivers/rx_xn297.c
drivers/pitotmeter_adc.c
drivers/pitotmeter_ms4525.c
drivers/pitotmeter_virtual.c
drivers/pwm_esc_detect.c
drivers/pwm_mapping.c
drivers/pwm_output.c
drivers/pinio.c
drivers/rangefinder/rangefinder_hcsr04.c
drivers/rangefinder/rangefinder_hcsr04_i2c.c
drivers/rangefinder/rangefinder_srf10.c
drivers/rangefinder/rangefinder_vl53l0x.c
drivers/rangefinder/rangefinder_virtual.c
drivers/resource.c
drivers/rcc.c
drivers/rx_nrf24l01.c
drivers/rx_pwm.c
drivers/rx_spi.c
drivers/rx_xn297.c
drivers/serial.c
drivers/serial_uart.c
drivers/sound_beeper.c
drivers/stack_check.c
drivers/system.c
drivers/temperature/ds18b20.c
drivers/temperature/lm75.c
drivers/time.c
drivers/timer.c
drivers/usb_msc.c
drivers/lights_io.c
drivers/1-wire.c
drivers/1-wire/ds_crc.c
drivers/1-wire/ds2482.c
drivers/temperature/ds18b20.c
drivers/temperature/lm75.c
drivers/pitotmeter_ms4525.c
drivers/vtx_common.c
fc/cli.c
fc/config.c
@ -186,33 +279,6 @@ set(COMMON_SRC
cms/cms_menu_saveexit.c
cms/cms_menu_vtx.c
drivers/accgyro/accgyro_mpu6000.c
drivers/accgyro/accgyro_mpu6500.c
drivers/barometer/barometer_bmp085.c
drivers/barometer/barometer_bmp280.c
drivers/barometer/barometer_ms56xx.c
drivers/compass/compass_ak8975.c
drivers/compass/compass_hmc5883l.c
drivers/compass/compass_mag3110.c
drivers/compass/compass_qmc5883l.c
drivers/compass/compass_ist8308.c
drivers/compass/compass_ist8310.c
drivers/compass/compass_lis3mdl.c
drivers/display_ug2864hsweg01.c
drivers/flash.c
drivers/flash_m25p16.c
drivers/light_ws2811strip.c
drivers/max7456.c
drivers/rangefinder/rangefinder_hcsr04.c
drivers/rangefinder/rangefinder_hcsr04_i2c.c
drivers/rangefinder/rangefinder_srf10.c
drivers/rangefinder/rangefinder_vl53l0x.c
drivers/rangefinder/rangefinder_virtual.c
drivers/opflow/opflow_fake.c
drivers/opflow/opflow_virtual.c
drivers/pitotmeter_adc.c
drivers/vtx_common.c
io/rangefinder_msp.c
io/rangefinder_benewake.c
io/opflow_cxof.c

1
src/main/target/AIKONF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(AIKONF4)

1
src/main/target/AIRBOTF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(AIRBOTF4)

1
src/main/target/ASGARD32F4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(ASGARD32F4)

1
src/main/target/BEEROTORF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(BEEROTORF4)

1
src/main/target/BETAFLIGHTF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(BETAFLIGHTF4)

1
src/main/target/BLUEJAYF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(BLUEJAYF4)

3
src/main/target/CLRACINGF4AIR/CMakeLists.txt

@ -0,0 +1,3 @@
target_stm32f405(CLRACINGF4AIR)
target_stm32f405(CLRACINGF4AIRV2)
target_stm32f405(CLRACINGF4AIRV3)

2
src/main/target/COLIBRI/CMakeLists.txt

@ -0,0 +1,2 @@
target_stm32f405(COLIBRI HSE_MHZ 16)
target_stm32f405(QUANTON HSE_MHZ 16)

1
src/main/target/DALRCF405/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(DALRCF405)

1
src/main/target/F4BY/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(F4BY)

2
src/main/target/FF_F35_LIGHTNING/CMakeLists.txt

@ -0,0 +1,2 @@
target_stm32f405(FF_F35_LIGHTNING)
target_stm32f405(WINGFC)

1
src/main/target/FF_FORTINIF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(FF_FORTINIF4)

2
src/main/target/FF_PIKOF4/CMakeLists.txt

@ -0,0 +1,2 @@
target_stm32f405(FF_PIKOF4)
target_stm32f405(FF_PIKOF4OSD)

2
src/main/target/FIREWORKSV2/CMakeLists.txt

@ -0,0 +1,2 @@
target_stm32f405(FIREWORKSV2)
target_stm32f405(OMNIBUSF4V6)

1
src/main/target/FISHDRONEF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(FISHDRONEF4)

1
src/main/target/FOXEERF405/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(FOXEERF405)

1
src/main/target/FRSKYF4/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(FRSKYF4)

2
src/main/target/FURYF4OSD/CMakeLists.txt

@ -0,0 +1,2 @@
target_stm32f405(FURYF4OSD)
target_stm32f405(MAMBAF405)

1
src/main/target/IFLIGHTF4_TWING/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(IFLIGHTF4_TWING)

2
src/main/target/KAKUTEF4/CMakeLists.txt

@ -0,0 +1,2 @@
target_stm32f405(KAKUTEF4)
target_stm32f405(KAKUTEF4V2)

1
src/main/target/MAMBAF405US/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(MAMBAF405US)

3
src/main/target/MATEKF405/CMakeLists.txt

@ -0,0 +1,3 @@
target_stm32f405(MATEKF405)
target_stm32f405(MATEKF405_SERVOS6)
target_stm32f405(MATEKF405OSD)

1
src/main/target/MATEKF405SE/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(MATEKF405SE)

12
src/main/target/OMNIBUSF4/CMakeLists.txt

@ -0,0 +1,12 @@
target_stm32f405(DYSF4PRO)
target_stm32f405(DYSF4PROV2)
target_stm32f405(OMNIBUSF4)
# the OMNIBUSF4SD has an SDCARD instead of flash, a BMP280 baro and therefore a slightly different ppm/pwm and SPI mapping
target_stm32f405(OMNIBUSF4PRO)
target_stm32f405(OMNIBUSF4PRO_LEDSTRIPM5)
target_stm32f405(OMNIBUSF4V3_S5_S6_2SS)
target_stm32f405(OMNIBUSF4V3_S5S6_SS)
target_stm32f405(OMNIBUSF4V3_S6_SS)
# OMNIBUSF4V3 is a (almost identical) variant of OMNIBUSF4PRO target,
# except for an inverter on UART6.
target_stm32f405(OMNIBUSF4V3)

1
src/main/target/PIXRACER/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f427(PIXRACER HSE_MHZ 24)

1
src/main/target/REVO/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(REVO)

1
src/main/target/SPARKY2/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(SPARKY2)

3
src/main/target/SPEEDYBEEF4/CMakeLists.txt

@ -0,0 +1,3 @@
target_stm32f405(SPEEDYBEEF4)
target_stm32f405(SPEEDYBEEF4_SFTSRL1)
target_stm32f405(SPEEDYBEEF4_SFTSRL2)

1
src/main/target/SPRACINGF4EVO/CMakeLists.txt

@ -0,0 +1 @@
target_stm32f405(SPRACINGF4EVO)
Loading…
Cancel
Save