1#-------------------------------------------------------------------------------
2# Copyright (c) 2023-2024, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8# This file is exported to NS side during CMake installation phase and renamed
9# to CMakeLists.txt. It instructs how to build a platform on non-secture side.
10# The structure and sources list are fully platform specific.
11
12add_library(platform_ns)
13
14target_sources(platform_ns
15    PRIVATE
16        Device/Source/startup_musca.c
17        Device/Source/system_core_init.c
18        Device/Source/device_definition.c
19        uart_pl011_drv.c
20        Native_Driver/timer_cmsdk_drv.c
21        CMSIS_Driver/Driver_USART.c
22        $<$<BOOL:${PLATFORM_GPLED_ENABLED}>:services/src/tfm_ioctl_ns_api.c>
23        $<$<BOOL:${PLATFORM_GPLED_ENABLED}>:services/src/tfm_gpled_api.c>
24)
25
26target_include_directories(platform_ns
27    PUBLIC
28        include
29        ext/cmsis/Include
30        ext/cmsis/Include/m-profile
31        ext/common
32        Native_Driver
33        CMSIS_Driver/Config
34        Device/Include
35        partition
36        $<$<BOOL:${PLATFORM_GPLED_ENABLED}>:services/include>
37)
38
39target_compile_definitions(platform_ns
40    PRIVATE
41        $<$<BOOL:${CONFIG_ENABLE_NS_UART_TX_RX_CONTROL}>:UART_TX_RX_CONTROL_ENABLED>
42)
43
44target_include_directories(platform_region_defs
45    INTERFACE
46        partition
47)
48