Skip to content

Commit e77b1d8

Browse files
authored
Merge pull request #13952 from hugueskamba/hk_cmake_freescale_support
CMake: Add support for all Freescale Mbed targets
2 parents 3fa8897 + be84b8c commit e77b1d8

File tree

20 files changed

+559
-71
lines changed

20 files changed

+559
-71
lines changed

targets/TARGET_Freescale/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
# Copyright (c) 2020 ARM Limited. All rights reserved.
22
# SPDX-License-Identifier: Apache-2.0
33

4-
if("MCUXpresso_MCUS" IN_LIST MBED_TARGET_LABELS)
4+
if("KLXX" IN_LIST MBED_TARGET_LABELS)
5+
add_subdirectory(TARGET_KLXX)
6+
elseif("MCUXpresso_MCUS" IN_LIST MBED_TARGET_LABELS)
57
add_subdirectory(TARGET_MCUXpresso_MCUS)
68
endif()
79

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if("KL25Z" IN_LIST MBED_TARGET_LABELS)
5+
add_subdirectory(TARGET_KL25Z)
6+
elseif("KL46Z" IN_LIST MBED_TARGET_LABELS)
7+
add_subdirectory(TARGET_KL46Z)
8+
endif()
9+
10+
target_include_directories(mbed-core
11+
INTERFACE
12+
.
13+
)
14+
15+
target_sources(mbed-core
16+
INTERFACE
17+
analogin_api.c
18+
analogout_api.c
19+
gpio_api.c
20+
i2c_api.c
21+
pinmap.c
22+
port_api.c
23+
pwmout_api.c
24+
rtc_api.c
25+
sleep.c
26+
us_ticker.c
27+
)
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
5+
set(LINKER_FILE device/TOOLCHAIN_ARM_STD/MKL25Z4.sct)
6+
set(STARTUP_FILE device/TOOLCHAIN_ARM_STD/startup_MKL25Z4.S)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
8+
set(LINKER_FILE device/TOOLCHAIN_GCC_ARM/MKL25Z4.ld)
9+
set(STARTUP_FILE device/TOOLCHAIN_GCC_ARM/startup_MKL25Z4.S)
10+
endif()
11+
12+
set_property(
13+
GLOBAL PROPERTY
14+
MBED_TARGET_LINKER_FILE
15+
${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE}
16+
)
17+
18+
target_include_directories(mbed-core
19+
INTERFACE
20+
.
21+
device
22+
)
23+
24+
target_sources(mbed-core
25+
INTERFACE
26+
PeripheralPins.c
27+
gpio_irq_api.c
28+
mbed_overrides.c
29+
serial_api.c
30+
spi_api.c
31+
32+
device/system_MKL25Z4.c
33+
${STARTUP_FILE}
34+
)

targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL25Z/device/TOOLCHAIN_ARM_STD/MKL25Z4.sct

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#! armcc -E
1+
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m0plus
22

33
#if !defined(MBED_CONF_TARGET_BOOT_STACK_SIZE)
44
# if defined(MBED_BOOT_STACK_SIZE)
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
5+
set(LINKER_FILE device/TOOLCHAIN_ARM_STD/MKL46Z4.sct)
6+
set(STARTUP_FILE device/TOOLCHAIN_ARM_STD/startup_MKL46Z4.S)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
8+
set(LINKER_FILE device/TOOLCHAIN_GCC_ARM/MKL46Z4.ld)
9+
set(STARTUP_FILE device/TOOLCHAIN_GCC_ARM/startup_MKL46Z4.S)
10+
endif()
11+
12+
set_property(
13+
GLOBAL PROPERTY
14+
MBED_TARGET_LINKER_FILE
15+
${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE}
16+
)
17+
18+
target_include_directories(mbed-core
19+
INTERFACE
20+
.
21+
device
22+
)
23+
24+
target_sources(mbed-core
25+
INTERFACE
26+
PeripheralPins.c
27+
flash_api.c
28+
gpio_irq_api.c
29+
mbed_overrides.c
30+
serial_api.c
31+
spi_api.c
32+
33+
device/system_MKL46Z4.c
34+
${STARTUP_FILE}
35+
)

targets/TARGET_Freescale/TARGET_KLXX/TARGET_KL46Z/device/TOOLCHAIN_ARM_STD/MKL46Z4.sct

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#! armcc -E
1+
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m0plus
22

33
#if !defined(MBED_CONF_TARGET_BOOT_STACK_SIZE)
44
# if defined(MBED_BOOT_STACK_SIZE)

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/CMakeLists.txt

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,29 @@
33

44
if("K66F" IN_LIST MBED_TARGET_LABELS)
55
add_subdirectory(TARGET_K66F)
6+
elseif("K82F" IN_LIST MBED_TARGET_LABELS)
7+
add_subdirectory(TARGET_K82F)
8+
elseif("KL27Z" IN_LIST MBED_TARGET_LABELS)
9+
add_subdirectory(TARGET_KL27Z)
10+
elseif("KL43Z" IN_LIST MBED_TARGET_LABELS)
11+
add_subdirectory(TARGET_KL43Z)
12+
elseif("KW41Z" IN_LIST MBED_TARGET_LABELS)
13+
add_subdirectory(TARGET_KW41Z)
14+
elseif("MCU_K22F" IN_LIST MBED_TARGET_LABELS)
15+
add_subdirectory(TARGET_MCU_K22F)
616
elseif("MCU_K64F" IN_LIST MBED_TARGET_LABELS)
717
add_subdirectory(TARGET_MCU_K64F)
818
endif()
919

20+
if("FRAMEWORK_5_3_3" IN_LIST MBED_TARGET_LABELS)
21+
add_subdirectory(middleware/wireless/TARGET_FRAMEWORK_5_3_3)
22+
endif()
23+
24+
target_include_directories(mbed-core
25+
INTERFACE
26+
api
27+
)
28+
1029
target_sources(mbed-core
1130
INTERFACE
1231
fsl_common.c
@@ -25,8 +44,3 @@ target_sources(mbed-core
2544
api/rtc_api.c
2645
api/sleep.c
2746
)
28-
29-
target_include_directories(mbed-core
30-
INTERFACE
31-
api
32-
)

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/CMakeLists.txt

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,39 @@
22
# SPDX-License-Identifier: Apache-2.0
33

44
if("FRDM" IN_LIST MBED_TARGET_LABELS)
5-
add_subdirectory(TARGET_FRDM)
5+
target_include_directories(mbed-core
6+
INTERFACE
7+
TARGET_FRDM
8+
)
9+
10+
target_sources(mbed-core
11+
INTERFACE
12+
TARGET_FRDM/PeripheralPins.c
13+
TARGET_FRDM/crc.c
14+
TARGET_FRDM/fsl_clock_config.c
15+
TARGET_FRDM/fsl_phy.c
16+
TARGET_FRDM/mbed_overrides.c
17+
)
618
endif()
719

8-
add_subdirectory(device)
20+
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
21+
set(LINKER_FILE device/TOOLCHAIN_ARM_STD/MK66FN2M0xxx18.sct)
22+
set(STARTUP_FILE device/TOOLCHAIN_ARM_STD/startup_MK66F18.S)
23+
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
24+
set(LINKER_FILE device/TOOLCHAIN_GCC_ARM/MK66FN2M0xxx18.ld)
25+
set(STARTUP_FILE device/TOOLCHAIN_GCC_ARM/startup_MK66F18.S)
26+
endif()
27+
28+
set_property(
29+
GLOBAL PROPERTY
30+
MBED_TARGET_LINKER_FILE
31+
${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE}
32+
)
933

1034
target_include_directories(mbed-core
1135
INTERFACE
1236
.
37+
device
1338
drivers
1439
)
1540

@@ -64,4 +89,7 @@ target_sources(mbed-core
6489
drivers/fsl_uart_edma.c
6590
drivers/fsl_vref.c
6691
drivers/fsl_wdog.c
92+
93+
device/system_MK66F18.c
94+
${STARTUP_FILE}
6795
)

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/TARGET_FRDM/CMakeLists.txt

Lines changed: 0 additions & 16 deletions
This file was deleted.

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K66F/device/CMakeLists.txt

Lines changed: 0 additions & 37 deletions
This file was deleted.
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if("FRDM" IN_LIST MBED_TARGET_LABELS)
5+
target_include_directories(mbed-core
6+
INTERFACE
7+
TARGET_FRDM
8+
)
9+
10+
target_sources(mbed-core
11+
INTERFACE
12+
TARGET_FRDM/PeripheralPins.c
13+
TARGET_FRDM/fsl_clock_config.c
14+
TARGET_FRDM/mbed_overrides.c
15+
)
16+
endif()
17+
18+
if(${MBED_TOOLCHAIN} STREQUAL "ARM")
19+
set(LINKER_FILE device/TOOLCHAIN_ARM_STD/MK82FN256xxx15.sct)
20+
set(STARTUP_FILE device/TOOLCHAIN_ARM_STD/startup_MK82F25615.S)
21+
elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
22+
set(LINKER_FILE device/TOOLCHAIN_GCC_ARM/MK82FN256xxx15.ld)
23+
set(STARTUP_FILE device/TOOLCHAIN_GCC_ARM/startup_MK82F25615.S)
24+
endif()
25+
26+
set_property(
27+
GLOBAL PROPERTY
28+
MBED_TARGET_LINKER_FILE
29+
${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE}
30+
)
31+
32+
target_include_directories(mbed-core
33+
INTERFACE
34+
.
35+
device
36+
drivers
37+
)
38+
39+
target_sources(mbed-core
40+
INTERFACE
41+
pwmout_api.c
42+
serial_api.c
43+
spi_api.c
44+
trng_api.c
45+
us_ticker.c
46+
47+
drivers/fsl_adc16.c
48+
drivers/fsl_clock.c
49+
drivers/fsl_cmp.c
50+
drivers/fsl_cmt.c
51+
drivers/fsl_crc.c
52+
drivers/fsl_dac.c
53+
drivers/fsl_dmamux.c
54+
drivers/fsl_dspi.c
55+
drivers/fsl_dspi_edma.c
56+
drivers/fsl_edma.c
57+
drivers/fsl_ewm.c
58+
drivers/fsl_flash.c
59+
drivers/fsl_flexbus.c
60+
drivers/fsl_flexio.c
61+
drivers/fsl_flexio_camera.c
62+
drivers/fsl_flexio_camera_edma.c
63+
drivers/fsl_flexio_i2c_master.c
64+
drivers/fsl_flexio_i2s.c
65+
drivers/fsl_flexio_i2s_edma.c
66+
drivers/fsl_flexio_spi.c
67+
drivers/fsl_flexio_spi_edma.c
68+
drivers/fsl_flexio_uart.c
69+
drivers/fsl_flexio_uart_edma.c
70+
drivers/fsl_ftm.c
71+
drivers/fsl_gpio.c
72+
drivers/fsl_i2c.c
73+
drivers/fsl_i2c_edma.c
74+
drivers/fsl_llwu.c
75+
drivers/fsl_lmem_cache.c
76+
drivers/fsl_lptmr.c
77+
drivers/fsl_lpuart.c
78+
drivers/fsl_lpuart_edma.c
79+
drivers/fsl_ltc.c
80+
drivers/fsl_ltc_edma.c
81+
drivers/fsl_mpu.c
82+
drivers/fsl_pdb.c
83+
drivers/fsl_pit.c
84+
drivers/fsl_pmc.c
85+
drivers/fsl_qspi.c
86+
drivers/fsl_qspi_edma.c
87+
drivers/fsl_rcm.c
88+
drivers/fsl_rtc.c
89+
drivers/fsl_sai.c
90+
drivers/fsl_sai_edma.c
91+
drivers/fsl_sdhc.c
92+
drivers/fsl_sdramc.c
93+
drivers/fsl_sim.c
94+
drivers/fsl_smartcard_emvsim.c
95+
drivers/fsl_smartcard_phy_emvsim.c
96+
drivers/fsl_smartcard_phy_ncn8025.c
97+
drivers/fsl_smartcard_phy_tda8035.c
98+
drivers/fsl_smc.c
99+
drivers/fsl_tpm.c
100+
drivers/fsl_trng.c
101+
drivers/fsl_tsi_v4.c
102+
drivers/fsl_vref.c
103+
drivers/fsl_wdog.c
104+
105+
device/system_MK82F25615.c
106+
${STARTUP_FILE}
107+
)

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/TARGET_K82F/device/TOOLCHAIN_ARM_STD/MK82FN256xxx15.sct

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#! armcc -E
1+
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m4
22
/*
33
** ###################################################################
44
** Processors: MK82FN256CAx15

0 commit comments

Comments
 (0)