1# 2# Arm SCP/MCP Software 3# Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved. 4# 5# SPDX-License-Identifier: BSD-3-Clause 6# 7 8# 9# Create the firmware target. 10# 11 12add_executable(rdn2-mcp-bl1) 13 14# SCP_PLATFORM_VARIANT value for supported RD-N2 platform variants: 15# - '0' for RD-N2 platform 16# - '1' for RD-N2-Cfg1 platform 17# - '2' for RD-N2-Cfg2 platform 18# - '3' for RD-N2-Cfg3 platform 19 20if (SCP_PLATFORM_VARIANT STREQUAL "0") 21 target_compile_definitions(rdn2-mcp-bl1 22 PUBLIC -DPLATFORM_VARIANT=0) 23elseif (SCP_PLATFORM_VARIANT STREQUAL "1") 24 target_compile_definitions(rdn2-mcp-bl1 25 PUBLIC -DPLATFORM_VARIANT=1) 26elseif (SCP_PLATFORM_VARIANT STREQUAL "2") 27 target_compile_definitions(rdn2-mcp-bl1 28 PUBLIC -DPLATFORM_VARIANT=2) 29elseif (SCP_PLATFORM_VARIANT STREQUAL "3") 30 target_compile_definitions(rdn2-mcp-bl1 31 PUBLIC -DPLATFORM_VARIANT=3) 32else() 33 message(FATAL_ERROR "Please set SCP_PLATFORM_VARIANT to \n" 34 "'0' for RD-N2 \n" 35 "'1' for RD-N2-Cfg1 \n" 36 "'2' for RD-N2-Cfg2 \n" 37 "'3' for RD-N2-Cfg3 \n") 38endif() 39 40target_include_directories( 41 rdn2-mcp-bl1 PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/../include" 42 "${CMAKE_CURRENT_SOURCE_DIR}") 43 44# cmake-lint: disable=E1122 45 46target_sources( 47 rdn2-mcp-bl1 48 PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/config_clock.c" 49 "${CMAKE_CURRENT_SOURCE_DIR}/config_bootloader.c" 50 "${CMAKE_CURRENT_SOURCE_DIR}/config_pl011.c" 51 "${CMAKE_CURRENT_SOURCE_DIR}/../src/config_sid.c") 52 53# 54# Some of our firmware includes require CMSIS. 55# 56 57target_link_libraries(rdn2-mcp-bl1 PUBLIC cmsis::core-m) 58 59# 60# We explicitly add the CMSIS include directories to our interfaceinclude 61# directories. Each module target adds these include directories totheir own, 62# allowing them to include any firmware includes we expose. 63# 64 65target_include_directories(rdn2-mcp-bl1 66 PUBLIC $<TARGET_PROPERTY:cmsis::core-m,INTERFACE_INCLUDE_DIRECTORIES>) 67