Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 1 | #!/usr/bin/env python3 |
| 2 | |
| 3 | """ build_helper_config_maps.py: |
| 4 | Set map info of config params for build helper """ |
| 5 | |
| 6 | __copyright__ = """ |
| 7 | /* |
Raef Coles | aac84bc | 2025-01-09 14:20:12 +0000 | [diff] [blame] | 8 | * SPDX-FileCopyrightText: Copyright The TrustedFirmware-M Contributors |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 9 | * |
| 10 | * SPDX-License-Identifier: BSD-3-Clause |
| 11 | * |
| 12 | */ |
| 13 | """ |
| 14 | |
| 15 | # Map platform names to short format |
| 16 | mapPlatform = { |
| 17 | "arm/mps2/an519" : "AN519", |
| 18 | "arm/mps2/an521" : "AN521", |
| 19 | "arm/mps3/an524" : "AN524", |
Bence Balogh | 1aa8d58 | 2023-08-29 13:10:02 +0200 | [diff] [blame] | 20 | "arm/mps3/corstone300/fvp" : "CS300_FVP", |
| 21 | "arm/mps3/corstone300/an547" : "CS300_AN547", |
| 22 | "arm/mps3/corstone300/an552" : "CS300_AN552", |
Mark Horvath | ef57baa | 2022-09-12 13:36:36 +0200 | [diff] [blame] | 23 | "arm/musca_b1" : "MUSCA_B1", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 24 | "arm/musca_s1" : "MUSCA_S1", |
| 25 | "arm/corstone1000" : "corstone1000", |
Gergely Korcsák | ba0c521 | 2024-04-03 18:21:49 +0200 | [diff] [blame] | 26 | "arm/mps4/corstone315" : "corstone315", |
Gergely Korcsák | 78a4d14 | 2024-08-05 07:41:36 +0200 | [diff] [blame] | 27 | "arm/mps4/corstone320" : "corstone320", |
Bence Balogh | 23d8fa7 | 2022-11-08 12:16:23 +0100 | [diff] [blame] | 28 | "arm/mps3/corstone310/fvp" : "corstone310", |
Jamie Fox | 82a91d0 | 2024-09-27 14:54:14 +0100 | [diff] [blame] | 29 | "arm/rse/tc/tc3" : "RSE_TC3", |
Jackson Cooper-Driver | 164c54c | 2025-01-08 11:56:07 +0000 | [diff] [blame] | 30 | "arm/rse/tc/tc4" : "RSE_TC4", |
Antonio de Angelis | 373187e | 2025-01-11 22:09:30 +0000 | [diff] [blame] | 31 | "arm/rse/neoverse_rd/rdv3" : "RSE_RDV3", |
Nicola Mazzucato | 75b76af | 2025-02-07 15:20:59 +0000 | [diff] [blame] | 32 | "arm/rse/neoverse_rd/rdv3r1" : "RSE_RDV3R1", |
Ziad Elhanafy | 937333f | 2024-05-22 14:17:40 +0100 | [diff] [blame] | 33 | "arm/rse/automotive_rd/rd1ae" : "RSE_RD1AE", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 34 | "cypress/psoc64" : "psoc64", |
| 35 | "lairdconnectivity/bl5340_dvk_cpuapp": "BL5340", |
| 36 | "nordic_nrf/nrf5340dk_nrf5340_cpuapp": "nrf5340dk", |
| 37 | "nordic_nrf/nrf9160dk_nrf9160" : "nrf9160dk", |
| 38 | "nuvoton/m2351" : "M2351", |
| 39 | "nuvoton/m2354" : "M2354", |
| 40 | "nxp/lpcxpresso55s69" : "lpcxpresso55s69", |
| 41 | "stm/stm32l562e_dk" : "stm32l562e_dk", |
Matthew Dalzell | d5325dd | 2025-04-17 14:46:10 +0100 | [diff] [blame] | 42 | "stm/stm32wba65i_dk" : "stm32wba65i_dk", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 43 | "stm/b_u585i_iot02a" : "b_u585i_iot02a", |
Anton Komlev | 4164ab6 | 2024-02-23 10:59:56 +0100 | [diff] [blame] | 44 | "stm/stm32h573i_dk" : "stm32h573i_dk", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 45 | "stm/nucleo_l552ze_q" : "nucleo_l552ze_q", |
Dávid Házi | 0bd447f | 2024-10-24 19:44:31 +0000 | [diff] [blame] | 46 | "rpi/rp2350" : "rp2350", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 47 | } |
| 48 | |
Xinyu Zhang | b18ae74 | 2023-04-25 14:33:27 +0800 | [diff] [blame] | 49 | # Map regression test parameters to short format |
| 50 | mapRegTest = { |
Xinyu Zhang | 66e22ff | 2023-04-25 15:56:29 +0800 | [diff] [blame] | 51 | "OFF" : "-DTEST_BL2=OFF -DTEST_S=OFF -DTEST_NS=OFF ", |
| 52 | "RegBL2" : "-DTEST_BL2=ON ", |
Xinyu Zhang | b18ae74 | 2023-04-25 14:33:27 +0800 | [diff] [blame] | 53 | "RegS" : "-DTEST_S=ON ", |
Xinyu Zhang | 05bb77d | 2023-04-25 15:15:19 +0800 | [diff] [blame] | 54 | "RegNS" : "-DTEST_NS=ON -DTEST_NS_FLIH_IRQ=OFF ", |
Raef Coles | f9a2074 | 2024-06-06 10:47:49 +0100 | [diff] [blame] | 55 | "RegBL1_1" : "-DTEST_BL1_1=ON ", |
| 56 | "RegBL1_2" : "-DTEST_BL1_2=ON ", |
Xinyu Zhang | b18ae74 | 2023-04-25 14:33:27 +0800 | [diff] [blame] | 57 | } |
| 58 | |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 59 | # Map PSA Arch Tests to short format |
| 60 | mapTestPsaApi = { |
| 61 | "IPC" : "FF", |
| 62 | "CRYPTO" : "CRYPTO", |
| 63 | "INITIAL_ATTESTATION": "ATTEST", |
| 64 | "STORAGE" : "STORAGE", |
| 65 | } |
| 66 | |
| 67 | # Map Profile names to short format |
| 68 | mapProfile = { |
| 69 | "profile_small" : "SMALL", |
| 70 | "profile_medium": "MEDIUM", |
David Hu | 3d33376 | 2022-10-27 18:12:33 +0800 | [diff] [blame] | 71 | "profile_medium_arotless": "MEDIUM-AROT-LESS", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 72 | "profile_large" : "LARGE", |
| 73 | } |
| 74 | |
| 75 | # Map abbreviation of extra params to cmake build commands |
| 76 | mapExtraParams = { |
| 77 | # Default |
| 78 | "" : "", |
Xinyu Zhang | fb80b5d | 2022-07-26 15:42:26 +0800 | [diff] [blame] | 79 | "NSOFF" : "-DNS=OFF ", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 80 | # NSCE |
| 81 | "NSCE" : "-DTFM_NS_MANAGE_NSID=ON ", |
| 82 | # MMIO |
| 83 | "MMIO" : "-DPSA_FRAMEWORK_HAS_MM_IOVEC=ON ", |
| 84 | # FPU support |
Mark Horvath | 93cb5fb | 2022-09-06 17:51:24 +0200 | [diff] [blame] | 85 | "FPOFF" : "-DCONFIG_TFM_ENABLE_FP=OFF ", |
| 86 | "FPON" : ("-DCONFIG_TFM_ENABLE_FP=ON " |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 87 | "-DTEST_S_FPU=ON -DTEST_NS_FPU=ON "), |
Xinyu Zhang | fc061dd | 2022-07-26 14:52:56 +0800 | [diff] [blame] | 88 | "LZOFF" : "-DCONFIG_TFM_LAZY_STACKING=OFF ", |
Xinyu Zhang | df88e30 | 2022-09-19 11:27:57 +0800 | [diff] [blame] | 89 | # Partiton |
| 90 | "PSOFF" : "-DTFM_PARTITION_PROTECTED_STORAGE=OFF ", |
Antonio de Angelis | abe1174 | 2024-10-14 21:16:54 +0100 | [diff] [blame] | 91 | "PSCLEAR" : "-DPS_ENCRYPTION=OFF -DPS_ROLLBACK_PROTECTION=OFF", |
Chris Brand | dc82730 | 2024-10-11 15:20:17 -0700 | [diff] [blame] | 92 | "PSLIMIT" : "-DPS_AES_KEY_USAGE_LIMIT=1000000", |
Xinyu Zhang | 88b965c | 2022-11-21 17:50:33 +0800 | [diff] [blame] | 93 | # IPC |
| 94 | "IPC" : "-DCONFIG_TFM_SPM_BACKEND=IPC ", |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 95 | # CC Driver |
| 96 | "CC_DRIVER_PSA": "-DCC312_LEGACY_DRIVER_API_ENABLED=OFF ", |
| 97 | # ST support |
| 98 | "CRYPTO_OFF" : ("-DTEST_S_CRYPTO=OFF " |
| 99 | "-DTEST_NS_CRYPTO=OFF "), |
| 100 | "CRYPTO_ON" : ("-DTEST_S_CRYPTO=ON " |
| 101 | "-DTEST_NS_CRYPTO=ON "), |
| 102 | # Corstone1000 support |
| 103 | "FVP" : "-DPLATFORM_IS_FVP=True ", |
Emekcan Aras | f8b3980 | 2023-04-24 10:15:22 +0100 | [diff] [blame] | 104 | "FPGA" : "-DPLATFORM_IS_FVP=False -DTEST_S_PLATFORM=OFF ", |
| 105 | "CS1K_TEST" : ("-DTEST_S_PS=OFF " |
Bence Balogh | 30eee49 | 2023-12-20 11:00:20 +0100 | [diff] [blame] | 106 | "-DTEST_S_ITS=OFF " |
| 107 | "-DTEST_S_IPC=OFF " |
Antonio de Angelis | e0d6276 | 2024-08-07 15:55:02 +0200 | [diff] [blame] | 108 | "-DTEST_S_ATTESTATION=OFF " |
Xinyu Zhang | 4fb2b5c | 2023-04-25 11:55:19 +0800 | [diff] [blame] | 109 | "-DEXTRA_S_TEST_SUITE_PATH=%(codebase_root_dir)s/platform/ext/target/arm/corstone1000/ci_regression_tests/ "), |
Bence Balogh | 79fda44 | 2022-10-14 18:01:37 +0200 | [diff] [blame] | 110 | |
Nicola Mazzucato | b542f2b | 2024-05-23 10:13:43 +0100 | [diff] [blame] | 111 | # PAC/BTI Support |
| 112 | "PACBTI_STD" : "-DCONFIG_TFM_BRANCH_PROTECTION_FEAT=BRANCH_PROTECTION_STANDARD", |
| 113 | "PACBTI_NONE" : "-DCONFIG_TFM_BRANCH_PROTECTION_FEAT=BRANCH_PROTECTION_NONE", |
| 114 | |
Nicola Mazzucato | 75b76af | 2025-02-07 15:20:59 +0000 | [diff] [blame] | 115 | # Platform Variants Support for RSE_RDV3 & RSE_RDV3R1 |
Joel Goddard | 2dd81a1 | 2024-01-23 15:10:08 +0000 | [diff] [blame] | 116 | "CFG0" : "-DTFM_PLATFORM_VARIANT=0", |
Antonio de Angelis | 373187e | 2025-01-11 22:09:30 +0000 | [diff] [blame] | 117 | "CFG1" : "-DTFM_PLATFORM_VARIANT=1", |
Nicola Mazzucato | 75b76af | 2025-02-07 15:20:59 +0000 | [diff] [blame] | 118 | |
| 119 | # Platform Variants Support for RSE_RDV3 |
Antonio de Angelis | 373187e | 2025-01-11 22:09:30 +0000 | [diff] [blame] | 120 | "CFG2" : "-DTFM_PLATFORM_VARIANT=2", |
Joel Goddard | 2dd81a1 | 2024-01-23 15:10:08 +0000 | [diff] [blame] | 121 | |
David Vincze | d78e262 | 2022-11-24 15:04:00 +0100 | [diff] [blame] | 122 | # Extra test cases |
| 123 | "TEST_CBOR" : "-DTEST_NS_QCBOR=ON ", |
| 124 | |
Jianliang Shen | 5492f75 | 2023-07-27 15:59:01 +0800 | [diff] [blame] | 125 | # Profiling test |
Jianliang Shen | 7905e5d | 2023-11-07 10:40:47 +0800 | [diff] [blame] | 126 | "PROF" : ("-DTFM_EXTRA_CONFIG_PATH=%(codebase_root_dir)s/../tf-m-tools/profiling/profiling_cases/prof_psa_client_api/partitions/config_spe.cmake "), |
Jianliang Shen | 5492f75 | 2023-07-27 15:59:01 +0800 | [diff] [blame] | 127 | |
Gergely Korcsák | 6abc66c | 2025-04-29 14:55:33 +0200 | [diff] [blame] | 128 | # Platform provisioning |
| 129 | "PROV_TFM_DUMMY" : "-DPLATFORM_DEFAULT_PROVISIONING=OFF -DTFM_DUMMY_PROVISIONING=ON ", |
| 130 | "PROV_MCUBOOT_GEN_KEYS" : "-DPLATFORM_DEFAULT_PROVISIONING=OFF -DTFM_DUMMY_PROVISIONING=OFF -DMCUBOOT_GENERATE_SIGNING_KEYPAIR=ON ", |
| 131 | |
Bence Balogh | 79fda44 | 2022-10-14 18:01:37 +0200 | [diff] [blame] | 132 | # tf-m-extras example support |
Gergely Korcsák | ed6e253 | 2024-06-03 13:17:12 +0200 | [diff] [blame] | 133 | "EXTRAS_EXAMPLE_VAD" : ("-DNS_EVALUATION_APP_PATH=%(codebase_root_dir)s/../tf-m-extras/examples/vad_an552/ns_side " |
| 134 | "-DTFM_EXTRA_PARTITION_PATHS=%(codebase_root_dir)s/../tf-m-extras/partitions/vad_an552_sp/ " |
| 135 | "-DTFM_EXTRA_MANIFEST_LIST_FILES=%(codebase_root_dir)s/../tf-m-extras/partitions/vad_an552_sp/extra_manifest_list.yaml " |
| 136 | "-DPROJECT_CONFIG_HEADER_FILE=%(codebase_root_dir)s/../tf-m-extras/examples/vad_an552/ns_side/project_config.h " |
| 137 | "-DTFM_PARTITION_FIRMWARE_UPDATE=ON -DMCUBOOT_DATA_SHARING=ON " |
| 138 | "-DMCUBOOT_UPGRADE_STRATEGY=SWAP_USING_SCRATCH " |
| 139 | "-DMCUBOOT_IMAGE_NUMBER=1 -DMCUBOOT_SIGNATURE_KEY_LEN=2048 " |
| 140 | "-DCONFIG_TFM_ENABLE_MVE=ON -DCONFIG_TFM_SPM_BACKEND=IPC " |
| 141 | "-DPLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT=ON -DTFM_PARTITION_PLATFORM=ON " |
| 142 | "-DTFM_PARTITION_CRYPTO=ON -DTFM_PARTITION_INTERNAL_TRUSTED_STORAGE=ON " |
| 143 | "-DTFM_PARTITION_PROTECTED_STORAGE=ON -DMCUBOOT_CONFIRM_IMAGE=ON "), |
| 144 | |
| 145 | "EXTRAS_EXAMPLE_DMA350_TRIGGER" : "", |
| 146 | "EXTRAS_EXAMPLE_DMA350_CLCD" : "-DDEFAULT_NS_SCATTER=OFF -DPLATFORM_SVC_HANDLERS=ON ", |
| 147 | |
| 148 | "EXTRAS_EXAMPLE_DMA350_S" : "-DEXTRA_S_TEST_SUITE_PATH=%(codebase_root_dir)s/../tf-m-extras/examples/corstone310_fvp_dma/dma350_s", |
Nicola Mazzucato | 551c5f3 | 2024-10-02 09:43:04 +0100 | [diff] [blame] | 149 | "EXTRAS_EXAMPLE_DMA350_NS" : "-DEXTRA_NS_TEST_SUITE_PATH=%(codebase_root_dir)s/../tf-m-extras/examples/corstone310_fvp_dma/dma350_ns", |
| 150 | |
| 151 | # Attestation scheme |
Nicola Mazzucato | b476326 | 2024-09-26 12:39:06 +0100 | [diff] [blame] | 152 | "ATTESTATION_SCHEME_DPE" : ("-DEXTRA_S_TEST_SUITE_PATH=%(codebase_root_dir)s/../tf-m-extras/partitions/dice_protection_environment/test/secure "), |
| 153 | "ATTESTATION_SCHEME_CCA" : ("-DTFM_ATTESTATION_SCHEME=CCA " |
| 154 | "-DEXTRA_S_TEST_SUITE_PATH=%(codebase_root_dir)s/../tf-m-extras/partitions/delegated_attestation/test/secure " |
Jackson Cooper-Driver | c5541ca | 2025-02-13 13:42:35 +0000 | [diff] [blame] | 155 | "-DEXTRA_NS_TEST_SUITE_PATH=%(codebase_root_dir)s/../tf-m-extras/partitions/measured_boot/test/non_secure "), |
| 156 | |
| 157 | # Provisioning blob signing |
Jackson Cooper-Driver | 4935044 | 2025-05-29 14:13:45 +0100 | [diff] [blame] | 158 | "RSE_PROVISIONING_SYMMETRIC" : ("-DRSE_SYMMETRIC_PROVISIONING=ON"), |
Jackson Cooper-Driver | e6e1db0 | 2025-05-16 10:45:20 +0100 | [diff] [blame] | 159 | |
| 160 | # Copy ROM code to SRAM in BL1_2 and execute from there |
Nicola Mazzucato | c3c8658 | 2025-04-14 17:10:11 +0100 | [diff] [blame^] | 161 | "RSE_COPY_USE_ROM_LIB_IN_SRAM" : ("-DRSE_USE_ROM_LIB_FROM_SRAM=ON"), |
| 162 | |
| 163 | # RSE ROM Relocation |
| 164 | "RSE_SUPPORT_ROM_LIB_RELOCATION_OFF" : ("-DRSE_SUPPORT_ROM_LIB_RELOCATION=OFF"), |
Gergely Korcsák | ed6e253 | 2024-06-03 13:17:12 +0200 | [diff] [blame] | 165 | } |
| 166 | |
| 167 | mapTfmExtrasExamplePaths = { |
| 168 | "EXTRAS_EXAMPLE_VAD" : "examples/vad_an552/ns_side", |
| 169 | "EXTRAS_EXAMPLE_DMA350_TRIGGER" : "examples/corstone310_fvp_dma/triggering_example", |
| 170 | "EXTRAS_EXAMPLE_DMA350_CLCD" : "examples/corstone310_fvp_dma/clcd_example", |
| 171 | "EXTRAS_EXAMPLE_DMA350_S" : "examples/corstone310_fvp_dma/dma350_s", |
| 172 | "EXTRAS_EXAMPLE_DMA350_NS" : "examples/corstone310_fvp_dma/dma350_ns" |
Xinyu Zhang | 1fa7f98 | 2022-04-20 17:46:17 +0800 | [diff] [blame] | 173 | } |