Merge pull request #14024 from 0xc0170/dev_cmake_targets

CMake: add Samsungs, Analog devices and WICED targets
pull/14027/head
Martin Kojtal 2020-12-11 07:52:19 +00:00 committed by GitHub
commit 86ee3003e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 389 additions and 6 deletions

View File

@ -3,6 +3,8 @@
if("ARM_FM" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_ARM_FM)
elseif("Analog_Devices" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_Analog_Devices)
elseif("Cypress" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_Cypress)
elseif("Freescale" IN_LIST MBED_TARGET_LABELS)
@ -17,8 +19,12 @@ elseif("NUVOTON" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_NUVOTON)
elseif("NXP" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_NXP)
elseif("Samsung" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_Samsung)
elseif("Silicon_Labs" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_Silicon_Labs)
elseif("STM" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_STM)
elseif("WICED" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_WICED)
endif()

View File

@ -0,0 +1,13 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("ADUCM4X50" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_ADUCM4X50)
elseif("ADUCM302X" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_ADUCM302X)
endif()
target_include_directories(mbed-core
INTERFACE
.
)

View File

@ -0,0 +1,6 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("ADUCM3029" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_ADUCM3029)
endif()

View File

@ -0,0 +1,105 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(LINKER_FILE TOOLCHAIN_ARM_STD/ADuCM3029.sct)
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(LINKER_FILE TOOLCHAIN_GCC_ARM/ADuCM3029.ld)
endif()
if ("EV_COG_AD3029LZ" IN_LIST MBED_TARGET_LABELS)
target_include_directories(mbed-core
INTERFACE
TARGET_EV_COG_AD3029LZ
TARGET_EV_COG_AD3029LZ/device
)
target_sources(mbed-core
INTERFACE
TARGET_EV_COG_AD3029LZ/device/system_ADuCM3029.c
TARGET_EV_COG_AD3029LZ/device/startup_ADuCM3029.c
)
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_include_directories(mbed-core
INTERFACE
api
bsp
bsp/adc
bsp/beep
bsp/config
bsp/crc
bsp/crypto
bsp/drivers/adc
bsp/drivers/beep
bsp/drivers/crc
bsp/drivers/crypto
bsp/drivers/dma
bsp/drivers/flash
bsp/drivers/general
bsp/drivers/gpio
bsp/drivers/i2c
bsp/drivers/pwr
bsp/drivers/rng
bsp/drivers/rtc
bsp/drivers/spi
bsp/drivers/sport
bsp/drivers/tmr
bsp/drivers/uart
bsp/drivers/wdt
bsp/drivers/xint
bsp/flash
bsp/gpio
bsp/i2c
bsp/pwr
bsp/rng
bsp/rtc
bsp/rtos_map
bsp/spi
bsp/sport
bsp/sys
bsp/uart
bsp/xint
)
target_sources(mbed-core
INTERFACE
bsp/crypto/adi_crypto.c
bsp/wdt/adi_wdt.c
bsp/crc/adi_crc.c
bsp/i2c/adi_i2c.c
bsp/i2c/adi_i2c_data.c
bsp/sport/adi_sport.c
bsp/tmr/adi_tmr_data.c
bsp/tmr/adi_tmr.c
bsp/flash/adi_flash.c
bsp/flash/adi_flash_data.c
bsp/spi/adi_spi_data.c
bsp/spi/adi_spi.c
bsp/xint/adi_xint.c
bsp/adc/adi_adc.c
bsp/adc/adi_adc_data.c
bsp/beep/adi_beep.c
bsp/rtc/adi_rtc_data.c
bsp/rtc/adi_rtc.c
bsp/pwr/adi_pwr.c
bsp/dma/adi_dma.c
bsp/gpio/adi_gpio.c
bsp/uart/adi_uart.c
bsp/rng/adi_rng.c
api/us_ticker.c
api/serial_api.c
api/gpio_dev_mem.c
api/gpio_api.c
api/flash_api.c
api/spi_api.c
api/i2c_api.c
api/gpio_irq_api.c
api/trng_api.c
api/sleep.c
api/PeripheralPins.c
api/analogin_api.c
api/rtc_api.c
api/pinmap.c
)

View File

@ -1,4 +1,4 @@
#! armcc -E
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m3
;******************************************************************************
; File: ADuCM3029.sct
; Scatter loading file for Analog Devices ADuCM3029 processor

View File

@ -0,0 +1,6 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if ("ADUCM4050" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_ADUCM4050)
endif()

View File

@ -0,0 +1,107 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(LINKER_FILE TOOLCHAIN_GCC_ARM/ADuCM4050.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(LINKER_FILE TOOLCHAIN_ARM_STD/ADuCM4050.sct)
endif()
if("EV_COG_AD4050LZ" IN_LIST MBED_TARGET_LABELS)
target_include_directories(mbed-core
INTERFACE
TARGET_EV_COG_AD4050LZ
TARGET_EV_COG_AD4050LZ/device
)
target_sources(mbed-core
INTERFACE
TARGET_EV_COG_AD4050LZ/device/system_ADuCM4050.c
TARGET_EV_COG_AD4050LZ/device/startup_ADuCM4050.c
)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_include_directories(mbed-core
INTERFACE
api
bsp
bsp/adc
bsp/beep
bsp/config
bsp/crc
bsp/crypto
bsp/drivers/adc
bsp/drivers/beep
bsp/drivers/crc
bsp/drivers/crypto
bsp/drivers/dma
bsp/drivers/flash
bsp/drivers/general
bsp/drivers/gpio
bsp/drivers/i2c
bsp/drivers/pwr
bsp/drivers/rng
bsp/drivers/rtc
bsp/drivers/spi
bsp/drivers/sport
bsp/drivers/tmr
bsp/drivers/uart
bsp/drivers/wdt
bsp/drivers/xint
bsp/flash
bsp/gpio
bsp/i2c
bsp/pwr
bsp/rng
bsp/rtc
bsp/rtos_map
bsp/spi
bsp/sport
bsp/sys
bsp/uart
bsp/xint
)
target_sources(mbed-core
INTERFACE
bsp/crypto/adi_crypto.c
bsp/wdt/adi_wdt.c
bsp/crc/adi_crc.c
bsp/i2c/adi_i2c.c
bsp/i2c/adi_i2c_data.c
bsp/sport/adi_sport.c
bsp/tmr/adi_tmr_data.c
bsp/tmr/adi_tmr.c
bsp/flash/adi_flash.c
bsp/flash/adi_flash_data.c
bsp/spi/adi_spi_data.c
bsp/spi/adi_spi.c
bsp/xint/adi_xint.c
bsp/adc/adi_adc.c
bsp/adc/adi_adc_data.c
bsp/beep/adi_beep.c
bsp/rtc/adi_rtc_data.c
bsp/rtc/adi_rtc.c
bsp/pwr/adi_pwr.c
bsp/dma/adi_dma.c
bsp/gpio/adi_gpio.c
bsp/uart/adi_uart.c
bsp/rng/adi_rng.c
api/us_ticker.c
api/serial_api.c
api/gpio_dev_mem.c
api/gpio_api.c
api/flash_api.c
api/spi_api.c
api/i2c_api.c
api/gpio_irq_api.c
api/trng_api.c
api/sleep.c
api/PeripheralPins.c
api/analogin_api.c
api/rtc_api.c
api/pinmap.c
)

View File

@ -1,4 +1,4 @@
#! armcc -E
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m4
;******************************************************************************
; File: ADuCM4050.sct
; Scatter loading file for Analog Devices ADuCM4050 processor

View File

@ -0,0 +1,8 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("SIDK_S1SBP6A" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_SIDK_S1SBP6A)
elseif("SIDK_S5JS100" IN_LIST MBED_TARGET_LABELS)
add_subdirectory(TARGET_SIDK_S5JS100)
endif()

View File

@ -0,0 +1,44 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(LINKER_FILE device/TOOLCHAIN_ARM_STD/s1sbp6a.sct)
set(STARTUP_FILE device/TOOLCHAIN_ARM_STD/startup_s1sbp6a.S)
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(LINKER_FILE device/TOOLCHAIN_GCC_ARM/s1sbp6a.ld)
set(STARTUP_FILE device/TOOLCHAIN_GCC_ARM/startup_s1sbp6a.S)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_include_directories(mbed-core
INTERFACE
.
device
)
target_sources(mbed-core
INTERFACE
PeripheralPins.c
flash_api.c
gpio_api.c
gpio_irq_api.c
i2c_api.c
pinmap.c
rtc_api.c
serial_api.c
sleep_api.c
spi_api.c
us_ticker.c
watchdog_api.c
device/s1sbp6a_cmu.c
device/s1sbp6a_gpio.c
device/s1sbp6a_i2c.c
device/s1sbp6a_pmu.c
device/s1sbp6a_rtc.c
device/s1sbp6a_wdog.c
device/system_s1sbp6a.c
${STARTUP_FILE}
)

View File

@ -1,4 +1,4 @@
#! armcc -E
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m4
;* Copyright (c) 2006-2019 ARM Limited
;* All rights reserved.
;* SPDX-License-Identifier: Apache-2.0

View File

@ -0,0 +1,63 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(LINKER_FILE device/TOOLCHAIN_ARM_STD/sidk_s5js100.sct)
set(STARTUP_FILE device/TOOLCHAIN_ARM_STD/startup_sidk_s5js100.S)
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(LINKER_FILE device/TOOLCHAIN_GCC_ARM/sidk_s5js100.ld)
set(STARTUP_FILE device/TOOLCHAIN_GCC_ARM/startup_sidk_s5js100.S)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
target_include_directories(mbed-core
INTERFACE
.
device
modem
security_subsystem
security_subsystem/drivers
)
target_sources(mbed-core
INTERFACE
gpio_api.c
gpio_irq_api.c
i2c_api.c
mbed_sdk_init.c
pinmap.c
rtc_api.c
s5js100_dcxo.cpp
s5js100_pmip.c
s5js100_pwr.c
s5js100_watchdog.c
security_subsystem
serial_api.c
serial_dummy_api.c
serial_pl011_api.c
serial_usi_api.c
sleep.c
spi_api.c
us_ticker.c
watchdog_api.c
device/s5js100_pwrcal.c
device/s5js100_systemreset.c
device/sflash_api.cpp
device/system_core_s5js100.c
device/system_core_version.c
device/system_s5js100.c
security_subsystem/api/trng_api.c
security_subsystem/drivers/mb_cmd_hash.c
security_subsystem/drivers/mb_cmd_rng.c
security_subsystem/drivers/mb_cmd_system.c
security_subsystem/drivers/sss_driver_rng.c
security_subsystem/drivers/sss_driver_sha2.c
security_subsystem/drivers/sss_driver_util.c
${STARTUP_FILE}
)

View File

@ -1,4 +1,4 @@
#! armcc -E
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m7
;/****************************************************************************
; *
; * Copyright 2020 Samsung Electronics All Rights Reserved.

View File

@ -129,7 +129,7 @@ HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)
#define S5JS100_BOOTMEM_BASE 0x00000000
extern uint32_t __vector_table;
extern uint32_t __Vectors_Size;
#elif defined (TOOLCHAIN_ARM_STD)/*__ARMCC_VERSION)*/
#elif defined(__ARMCC_VERSION)
#define S5JS100_BOOTMEM_BASE 0x00000000
extern uint32_t __Vectors;
extern uint32_t __Vectors_Size;
@ -166,7 +166,7 @@ void SystemCoreConfig()
//*dest++ = *src++;
}
#elif defined (TOOLCHAIN_ARM_STD)/*__ARMCC_VERSION)*/
#elif defined(__ARMCC_VERSION)
src = (uint32_t *)&__Vectors;
dest = (uint32_t *)S5JS100_BOOTMEM_BASE;

View File

@ -0,0 +1,22 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
if("WIO_EMW3166" IN_LIST MBED_TARGET_LABELS)
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(LIB_WICED_DRIVERS TOOLCHAIN_ARMC6/TARGET_WIO_EMW3166/libwiced_drivers.ar)
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(LIB_WICED_DRIVERS TOOLCHAIN_GCC_ARM/TARGET_WIO_EMW3166/libwiced_drivers.a)
endif()
endif()
target_link_libraries(mbed-core INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/${LIB_WICED_DRIVERS})
target_include_directories(mbed-core
INTERFACE
wiced_interface
)
target_sources(mbed-core
INTERFACE
wiced_interface/default_wifi_interface.cpp
)

View File

@ -20,14 +20,17 @@ Only a limited set of targets is supported at the moment.
The following targets are supported:
- NRF52840_DK
- Analog Devices targets
- ARM FM targets
- Cypress targets
- Freescale targets
- GigaDevice targets
- MAXIM targets
- NXP targets
- Samsung targets
- Silicon Labs targets
- STM targets
- WICED targets
### Supported toolchains