CMake: add STM32G0 targets

pull/13915/head
Martin Kojtal 2020-11-17 15:02:36 +00:00
parent d4f1f2560e
commit 1f2bb47391
10 changed files with 278 additions and 0 deletions

View File

@ -0,0 +1,34 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("STM32G030xx" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM32G030xx)
elseif("STM32G031xx" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM32G031xx)
elseif("STM32G041xx" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM32G041xx)
elseif("STM32G070xx" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM32G070xx)
elseif("STM32G071xx" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM32G071xx)
elseif("STM32G081xx" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM32G081xx)
endif()
target_sources(mbed-core
INTERFACE
analogin_device.c
analogout_device.c
flash_api.c
gpio_irq_device.c
pwmout_device.c
serial_device.c
spi_api.c
)
add_subdirectory(STM32Cube_FW)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,78 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
target_sources(mbed-core
INTERFACE
STM32G0xx_HAL_Driver/stm32g0xx_hal.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_adc.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_adc_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_cec.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_comp.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_cortex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_crc.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_crc_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_cryp.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_cryp_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_dac.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_dac_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_dma.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_dma_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_exti.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_flash.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_flash_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_gpio.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_i2c.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_i2c_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_i2s.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_irda.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_iwdg.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_lptim.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_pwr.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_pwr_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_rcc.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_rcc_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_rng.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_rtc.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_rtc_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_smartcard.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_smartcard_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_smbus.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_spi.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_spi_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_tim.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_tim_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_uart.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_uart_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_usart.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_usart_ex.c
STM32G0xx_HAL_Driver/stm32g0xx_hal_wwdg.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_adc.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_comp.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_crc.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_dac.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_dma.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_exti.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_gpio.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_i2c.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_lptim.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_lpuart.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_pwr.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_rcc.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_rng.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_rtc.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_spi.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_tim.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_ucpd.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_usart.c
STM32G0xx_HAL_Driver/stm32g0xx_ll_utils.c
system_stm32g0xx.c
)
target_include_directories(mbed-core
INTERFACE
.
CMSIS
STM32G0xx_HAL_Driver
STM32G0xx_HAL_Driver/Legacy
)

View File

@ -0,0 +1,22 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32g030xx.S)
set(LINKER_FILE TOOLCHAIN_GCC_ARM/stm32g030xx.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32g030xx.S)
set(LINKER_FILE TOOLCHAIN_ARM/stm32g030xx.sct)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_sources(mbed-core
INTERFACE
${STARTUP_FILE}
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,26 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("NUCLEO_G031K8" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_NUCLEO_G031K8)
endif()
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32g031xx.S)
set(LINKER_FILE TOOLCHAIN_GCC_ARM/stm32g031xx.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32g031xx.S)
set(LINKER_FILE TOOLCHAIN_ARM/stm32g031xx.sct)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_sources(mbed-core
INTERFACE
${STARTUP_FILE}
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,13 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
target_sources(mbed-core
INTERFACE
PeripheralPins.c
system_clock.c
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,22 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32g041xx.S)
set(LINKER_FILE TOOLCHAIN_GCC_ARM/stm32g041xx.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32g041xx.S)
set(LINKER_FILE TOOLCHAIN_ARM/stm32g041xx.sct)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_sources(mbed-core
INTERFACE
${STARTUP_FILE}
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,22 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32g070xx.S)
set(LINKER_FILE TOOLCHAIN_GCC_ARM/stm32g070xx.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32g070xx.S)
set(LINKER_FILE TOOLCHAIN_ARM/stm32g070xx.sct)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_sources(mbed-core
INTERFACE
${STARTUP_FILE}
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,26 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("NUCLEO_G071RB" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_NUCLEO_G071RB)
endif()
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32g071xx.S)
set(LINKER_FILE TOOLCHAIN_GCC_ARM/stm32g071xx.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32g071xx.S)
set(LINKER_FILE TOOLCHAIN_ARM/stm32g071xx.sct)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_sources(mbed-core
INTERFACE
${STARTUP_FILE}
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,13 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
target_sources(mbed-core
INTERFACE
PeripheralPins.c
system_clock.c
)
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,22 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32g081xx.S)
set(LINKER_FILE TOOLCHAIN_GCC_ARM/stm32g081xx.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32g081xx.S)
set(LINKER_FILE TOOLCHAIN_ARM/stm32g081xx.sct)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_sources(mbed-core
INTERFACE
${STARTUP_FILE}
)
target_include_directories(mbed-core
INTERFACE
.
)