1#------------------------------------------------------------------------------- 2# Copyright (c) 2022-2024, Arm Limited. All rights reserved. 3# 4# SPDX-License-Identifier: BSD-3-Clause 5# 6#------------------------------------------------------------------------------- 7 8cmake_policy(SET CMP0076 NEW) 9set(CMAKE_CURRENT_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}) 10 11add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/../common common) 12 13#========================= Platform region defs ===============================# 14 15target_include_directories(platform_region_defs 16 INTERFACE 17 . 18) 19 20#========================= Platform_s =========================================# 21 22target_sources(platform_s 23 PRIVATE 24 cmsis_drivers/Driver_Flash.c 25 device/host_device_definition.c 26 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi/cfi_drv.c 27 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata/spi_strataflashj3_flash_lib.c 28 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${CMAKE_CURRENT_SOURCE_DIR}/cmsis_drivers/Driver_USART.c> 29 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011/uart_pl011_drv.c> 30 rse_comms/rse_comms_permissions_hal.c 31) 32 33target_include_directories(platform_s 34 PUBLIC 35 ./cmsis_drivers 36 ./device 37 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/common 38 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi 39 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata 40 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011> 41) 42 43#========================= Platform BL2 =======================================# 44 45target_sources(platform_bl2 46 PRIVATE 47 bl2/boot_hal_bl2.c 48 bl2/flash_map_bl2.c 49 cmsis_drivers/Driver_Flash.c 50 cmsis_drivers/Driver_Flash.c 51 device/host_device_definition.c 52 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi/cfi_drv.c 53 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata/spi_strataflashj3_flash_lib.c 54 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${CMAKE_CURRENT_SOURCE_DIR}/cmsis_drivers/Driver_USART.c> 55 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011/uart_pl011_drv.c> 56) 57 58target_include_directories(platform_bl2 59 PUBLIC 60 ./cmsis_drivers 61 ./device 62 ./bl2 63 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/common 64 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi 65 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata 66 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011> 67) 68 69#========================= Platform BL1 =======================================# 70 71target_sources(platform_bl1_1 72 PRIVATE 73 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi/cfi_drv.c 74 cmsis_drivers/Driver_Flash.c 75 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata/spi_strataflashj3_flash_lib.c 76 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${CMAKE_CURRENT_SOURCE_DIR}/cmsis_drivers/Driver_USART.c> 77 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011/uart_pl011_drv.c> 78 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata/spi_strataflashj3_flash_lib.c 79 device/host_device_definition.c 80 $<$<BOOL:${RSE_ENABLE_BRINGUP_HELPERS}>:${CMAKE_CURRENT_SOURCE_DIR}/bl1/rse_bringup_helpers_hal.c> 81) 82 83target_include_directories(platform_bl1_1_interface 84 INTERFACE 85 ./cmsis_drivers 86 ./device 87 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/common 88 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi 89 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata 90 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011> 91) 92 93target_include_directories(platform_bl1_2 94 PUBLIC 95 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/common 96 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi 97 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata 98 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011> 99) 100 101#========================= Files for building NS side platform ================# 102 103install(FILES $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011/uart_pl011_drv.c> 104 $<$<NOT:$<BOOL:${RSE_DEBUG_UART}>>:${PLATFORM_DIR}/ext/target/arm/drivers/usart/pl011/uart_pl011_drv.h> 105 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata/spi_strataflashj3_flash_lib.c 106 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/strata/spi_strataflashj3_flash_lib.h 107 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi/cfi_drv.c 108 ${PLATFORM_DIR}/ext/target/arm/drivers/flash/cfi/cfi_drv.h 109 DESTINATION ${INSTALL_PLATFORM_NS_DIR}/native_drivers 110) 111 112install(DIRECTORY cmsis_drivers 113 DESTINATION ${INSTALL_PLATFORM_NS_DIR} 114) 115 116install(DIRECTORY device 117 DESTINATION ${INSTALL_PLATFORM_NS_DIR} 118) 119 120install(FILES rse_memory_sizes.h 121 flash_layout.h 122 host_base_address.h 123 DESTINATION ${INSTALL_PLATFORM_NS_DIR}/partition) 124 125install(DIRECTORY ns/ 126 DESTINATION ${INSTALL_PLATFORM_NS_DIR}) 127 128install(FILES cpuarch.cmake 129 config.cmake 130 DESTINATION ${INSTALL_PLATFORM_NS_DIR}/config/subplatform/) 131 132install(FILES tests/tfm_tests_ns_config.cmake 133 DESTINATION ${INSTALL_PLATFORM_NS_DIR}/tests 134 RENAME tfm_tests_config.cmake) 135