Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 1 | #------------------------------------------------------------------------------- |
David Hu | 1feb4b1 | 2022-02-23 17:22:07 +0800 | [diff] [blame] | 2 | # Copyright (c) 2020-2022, Arm Limited. All rights reserved. |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | #------------------------------------------------------------------------------- |
| 7 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 8 | set(TFM_PROFILE profile_small CACHE STRING "Profile to use") |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 9 | set(TFM_ISOLATION_LEVEL 1 CACHE STRING "Isolation level") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 10 | |
| 11 | ########################## BL2 ################################################# |
| 12 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 13 | set(MCUBOOT_IMAGE_NUMBER 1 CACHE STRING "Whether to combine S and NS into either 1 image, or sign each seperately") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 14 | |
| 15 | ############################ Partitions ######################################## |
| 16 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 17 | set(TFM_PARTITION_PROTECTED_STORAGE OFF CACHE BOOL "Enable Protected Storage partition") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 18 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 19 | set(ITS_BUF_SIZE 32 CACHE STRING "Size of the ITS internal data transfer buffer (defaults to ITS_MAX_ASSET_SIZE if not set)") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 20 | |
David Hu | 327bc84 | 2021-05-13 16:29:33 +0800 | [diff] [blame] | 21 | set(CRYPTO_CONC_OPER_NUM 4 CACHE STRING "The max number of concurrent operations that can be active (allocated) at any time in Crypto") |
| 22 | # Profile Small assigns a much smller heap size for backend crypto library as |
David Hu | e69294d | 2022-06-21 22:21:37 +0800 | [diff] [blame^] | 23 | # asymmetric cryptography is not enabled and multi-part operations are enabled |
| 24 | # only. |
| 25 | # Assign 0x100 bytes for each operation and totally 0x800 byets for max 4 |
David Hu | 327bc84 | 2021-05-13 16:29:33 +0800 | [diff] [blame] | 26 | # concurrent operation as set in CRYPTO_CONC_OPER_NUM above |
David Hu | e69294d | 2022-06-21 22:21:37 +0800 | [diff] [blame^] | 27 | set(CRYPTO_ENGINE_BUF_SIZE 0x400 CACHE STRING "Heap size for the crypto backend") |
David Hu | 0c250bc | 2021-05-12 10:55:53 +0800 | [diff] [blame] | 28 | set(CRYPTO_ASYM_SIGN_MODULE_DISABLED ON CACHE BOOL "Disable PSA Crypto asymmetric key signature module") |
| 29 | set(CRYPTO_ASYM_ENCRYPT_MODULE_DISABLED ON CACHE BOOL "Disable PSA Crypto asymmetric key encryption module") |
David Hu | e69294d | 2022-06-21 22:21:37 +0800 | [diff] [blame^] | 30 | set(CRYPTO_SINGLE_PART_FUNCS_DISABLED ON CACHE BOOL "Only enable multi-part operations in Hash, MAC, AEAD and symmetric ciphers, to optimize memory footprint in resource-constrained devices") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 31 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 32 | set(SYMMETRIC_INITIAL_ATTESTATION ON CACHE BOOL "Use symmetric crypto for inital attestation") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 33 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 34 | set(TFM_PARTITION_PLATFORM OFF CACHE BOOL "Enable Platform partition") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 35 | |
Sherry Zhang | 07b4241 | 2021-01-07 14:19:41 +0800 | [diff] [blame] | 36 | set(TFM_PARTITION_FIRMWARE_UPDATE OFF CACHE BOOL "Enable firmware update partition") |
| 37 | |
Tamas Ban | 6921920 | 2020-10-27 08:13:18 +0000 | [diff] [blame] | 38 | set(TFM_PARTITION_AUDIT_LOG OFF CACHE BOOL "Enable Audit Log partition") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 39 | |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 40 | ################################## Dependencies ################################ |
| 41 | |
Summer Qin | 7c0d8d3 | 2021-12-17 15:43:08 +0800 | [diff] [blame] | 42 | set(TFM_MBEDCRYPTO_CONFIG_PATH "${CMAKE_SOURCE_DIR}/lib/ext/mbedcrypto/mbedcrypto_config/tfm_mbedcrypto_config_profile_small.h" CACHE PATH "Config to use for Mbed Crypto") |
| 43 | set(TFM_MBEDCRYPTO_PSA_CRYPTO_CONFIG_PATH "${CMAKE_SOURCE_DIR}/lib/ext/mbedcrypto/mbedcrypto_config/crypto_config_profile_small.h" CACHE PATH "Config to use psa crypto setting for Mbed Crypto.") |
Raef Coles | 9ec67e6 | 2020-07-10 09:40:35 +0100 | [diff] [blame] | 44 | |
David Hu | 1feb4b1 | 2022-02-23 17:22:07 +0800 | [diff] [blame] | 45 | # If it is specified to select SFN model in build command, enable SFN model in |
| 46 | # Profile Small. |
| 47 | # Otherwise, enable Library model in Profile Small by default. |
| 48 | if (NOT DEFINED CONFIG_TFM_SPM_BACKEND) |
| 49 | set(TFM_LIB_MODEL ON CACHE BOOL "Use secure library model instead of IPC model") |
Summer Qin | 97d9656 | 2022-04-15 12:05:37 +0800 | [diff] [blame] | 50 | elseif (CONFIG_TFM_SPM_BACKEND STREQUAL "SFN") |
Sherry Zhang | b1dcfe4 | 2022-05-19 10:46:49 +0800 | [diff] [blame] | 51 | set(PSA_FRAMEWORK_HAS_MM_IOVEC ON CACHE BOOL "Enable MM-IOVEC") |
Summer Qin | 97d9656 | 2022-04-15 12:05:37 +0800 | [diff] [blame] | 52 | set(CONFIG_TFM_CONN_HANDLE_MAX_NUM 3 CACHE STRING "The maximal number of secure services that are connected or requested at the same time") |
David Hu | 1feb4b1 | 2022-02-23 17:22:07 +0800 | [diff] [blame] | 53 | endif() |