1# 2# SPDX-License-Identifier: BSD-3-Clause 3# SPDX-FileCopyrightText: Copyright TF-RMM Contributors. 4# 5 6# 7# Set the RMM_PLATFORM variable to Cmake cache. 8# 9set(RMM_PLATFORM "arm" CACHE STRING "platform") 10arm_config_option_override(NAME RMM_TOOLCHAIN DEFAULT "gnu") 11 12# 13# Set RMM_MAX_SIZE for this platform (1072MB). Needs to be kept in sync with 14# TF-A's REALM_DRAM_SIZE in platform_def.h. 15# 16arm_config_option_override(NAME RMM_MAX_SIZE DEFAULT 0x43000000) 17 18# 19# UART Base address. This must be dynamically discovered in future. 20# Use NS UART. 21# 22arm_config_option_override(NAME RMM_UART_ADDR DEFAULT 0x60000000) 23 24# 25# Extra memory regions needed by this platform: one region for UART. 26# 27arm_config_option_override(NAME PLAT_CMN_EXTRA_MMAP_REGIONS DEFAULT 1) 28 29# 30# Maximum number of translation tables allocated by the runtime context 31# for the translation library. 32# 33arm_config_option_override(NAME PLAT_CMN_CTX_MAX_XLAT_TABLES DEFAULT 9) 34 35# 36# Disable FPU/SIMD usage in RMM for now. Enabling this causes the Realm guest 37# boot to hang, and needs to be investigated. 38# 39arm_config_option_override(NAME RMM_FPU_USE_AT_REL2 DEFAULT OFF) 40 41# 42# Maximum number of granules supported. Needs to be kept in sync with 43# TF-A's PLAT_QEMU_L1_GPT_SIZE in platform_def.h. For SBSA we currently 44# support a maximum of 1TB, which is 1024 L1GPTs plus another L1GPT for 45# miscellaneous mapping, for a total of 1025 L1GPTs. Each L1GPT maps 1GB, 46# which yields 262144 GPT entries (GPTEs) per table, for a total of 47# 0x10040000 granules. 48# 49arm_config_option_override(NAME RMM_MAX_GRANULES DEFAULT 0x10040000) 50 51# 52# TF-A sets a limit of 512 CPUs for the QEMU SBSA platform. See 53# PLATFORM_MAX_CPUS_PER_CLUSTER and PLATFORM_CLUSTER_COUNT in file 54# plat/qemu/qemu_sbsa/include/platform_def.h 55# 56arm_config_option_override(NAME MAX_CPUS DEFAULT 512) 57 58# 59# The SBSA's RAM starts at 1TB and the RMM code is located at that address. 60# As such we need to set this to at least 41, which also means that a VM can 61# have at most 1TB of RAM. 62# 63arm_config_option_override(NAME PLAT_CMN_VIRT_ADDR_SPACE_WIDTH DEFAULT 41) 64