Raef Coles | 958aeef | 2020-10-08 12:12:58 +0100 | [diff] [blame] | 1 | #------------------------------------------------------------------------------- |
| 2 | # Copyright (c) 2020, Arm Limited. All rights reserved. |
| 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | #------------------------------------------------------------------------------- |
| 7 | |
| 8 | function(tfm_invalid_config) |
| 9 | if (${ARGV}) |
| 10 | string (REPLACE ";" " " ARGV_STRING "${ARGV}") |
| 11 | string (REPLACE "STREQUAL" "=" ARGV_STRING "${ARGV_STRING}") |
| 12 | string (REPLACE "GREATER" ">" ARGV_STRING "${ARGV_STRING}") |
| 13 | string (REPLACE "LESS" "<" ARGV_STRING "${ARGV_STRING}") |
| 14 | string (REPLACE "EQUAL" "=" ARGV_STRING "${ARGV_STRING}") |
| 15 | |
| 16 | message(FATAL_ERROR "INVALID CONFIG: ${ARGV_STRING}") |
| 17 | endif() |
| 18 | endfunction() |
| 19 | |
| 20 | tfm_invalid_config(TFM_ISOLATION_LEVEL GREATER 1 AND NOT TFM_PSA_API) |
| 21 | |
| 22 | tfm_invalid_config(TFM_MULTI_CORE_TOPOLOGY AND NOT TFM_PSA_API) |
| 23 | tfm_invalid_config(TFM_MULTI_CORE_MULTI_CLIENT_CALL AND NOT TFM_MULTI_CORE_TOPOLOGY) |
| 24 | |
| 25 | tfm_invalid_config(TEST_S AND TEST_PSA_API) |
| 26 | tfm_invalid_config(TEST_NS AND TEST_PSA_API) |
| 27 | |
| 28 | tfm_invalid_config((TFM_PARTITION_PROTECTED_STORAGE AND PS_ROLLBACK_PROTECTION) AND NOT TFM_PARTITION_PLATFORM) |
| 29 | |
| 30 | tfm_invalid_config(TEST_PSA_API STREQUAL "IPC" AND NOT TFM_PSA_API) |
| 31 | tfm_invalid_config(TEST_PSA_API STREQUAL "CRYPTO" AND NOT TFM_PARTITION_CRYPTO) |
| 32 | tfm_invalid_config(TEST_PSA_API STREQUAL "INITIAL_ATTESTATION" AND NOT TFM_PARTITION_INITIAL_ATTESTATION) |
| 33 | tfm_invalid_config(TEST_PSA_API STREQUAL "INTERNAL_TRUSTED_STORAGE" AND NOT TFM_PARTITION_INTERNAL_TRUSTED_STORAGE) |
| 34 | tfm_invalid_config(TEST_PSA_API STREQUAL "PROTECTED_STORAGE" AND NOT TFM_PARTITION_PROTECTED_STORAGE) |
| 35 | tfm_invalid_config(TEST_PSA_API STREQUAL "STORAGE" AND NOT TFM_PARTITION_INTERNAL_TRUSTED_STORAGE) |
| 36 | tfm_invalid_config(TEST_PSA_API STREQUAL "STORAGE" AND NOT TFM_PARTITION_PROTECTED_STORAGE) |
| 37 | |
| 38 | tfm_invalid_config(CRYPTO_HW_ACCELERATOR_OTP_STATE AND NOT CRYPTO_HW_ACCELERATOR) |
| 39 | tfm_invalid_config(CRYPTO_HW_ACCELERATOR_OTP_STATE AND NOT (CRYPTO_HW_ACCELERATOR_OTP_STATE STREQUAL "ENABLED" OR CRYPTO_HW_ACCELERATOR_OTP_STATE STREQUAL "PROVISIONING")) |