| /trusted-firmware-m-latest/tools/templates/ |
| D | partition_load_info.template | 29 {% set counter.dep_counter = manifest.dependencies|count + manifest.weak_dependencies|count %} 30 #define {{"%-55s"|format(manifest.name|upper + "_NDEPS")}} ({{"%d"|format(counter.dep_counter)}}) 31 {% set counter.service_counter = manifest.services|count %} 32 #define {{"%-55s"|format(manifest.name|upper + "_NSERVS")}} ({{"%d"|format(counter.service_counter)… 33 {% set counter.asset_counter = manifest.mmio_regions|count %} 35 #define {{"%-55s"|format(manifest.name|upper + "_NASSETS")}} ({{"%d"|format(counter.asset_counter)}… 37 #define {{"%-55s"|format(manifest.name|upper + "_NASSETS")}} ({{"%d"|format(counter.asset_counter)}… 39 {% set counter.irq_counter = manifest.irqs|count %} 40 #define {{"%-55s"|format(manifest.name|upper + "_NIRQS")}} ({{"%d"|format(counter.irq_counter)}}) 44 REGION_DECLARE(Image$$, PT_{{manifest.name}}_PRIVATE, _DATA_START$$Base); [all …]
|
| D | manifestfilename.template | 17 {% if manifest.model == "SFN" %} 18 #define {{"%-55s"|format(manifest.name + "_MODEL_IPC")}} 0 19 #define {{"%-55s"|format(manifest.name + "_MODEL_SFN")}} 1 21 #define {{"%-55s"|format(manifest.name + "_MODEL_IPC")}} 1 22 #define {{"%-55s"|format(manifest.name + "_MODEL_SFN")}} 0 25 {% if manifest.services %} 26 {% for service in manifest.services %} 27 {% if manifest.model == "SFN" %} 35 {% if manifest.irqs %} 36 {% for irq in manifest.irqs %} [all …]
|
| D | partition_intermedia.template | 13 {% if config_impl['CONFIG_TFM_SPM_BACKEND_IPC'] == '1' or manifest.model == "IPC" %} 14 uint8_t {{manifest.name.lower()}}_stack[{{manifest.stack_size}}] __attribute__((aligned(8)));
|
| /trusted-firmware-m-latest/tools/ |
| D | tfm_parse_manifest_list.py | 37 # Summary of manifest attributes defined by FFM for use in the Secure Partition manifest file. 98 def manifest_validation(manifest, pid): argument 100 This function validates FF-M compliance for partition manifest, and sets 105 service_list = manifest.get('services', []) 106 irq_list = manifest.get('irqs', []) 109 if manifest['psa_framework_version'] not in [1.0, 1.1]: 110 raise Exception('Invalid psa_framework_version of {}'.format(manifest['name'])) 113 if manifest['type'] not in ['PSA-ROT', 'APPLICATION-ROT']: 114 raise Exception('Invalid type of {}'.format(manifest['name'])) 117 if manifest['priority'] not in ['HIGH', 'NORMAL', 'LOW']: [all …]
|
| D | CMakeLists.txt | 11 ############################### Manifest lists declaration ##################### 52 # Get all the manifest files from manifest lists 55 message(FATAL_ERROR "Manifest list ${MANIFEST_LIST} doesn't exist") 59 # Get the path of the manifest list 62 # Get all the "manifest" 63 parse_field_from_yaml(${MANIFEST_LIST} manifest MANIFESTS) 65 foreach(MANIFEST ${MANIFESTS}) 67 if (NOT IS_ABSOLUTE ${MANIFEST}) 68 # First try relative to the manifest 69 if (EXISTS "${MANIFEST_LIST_PATH}/${MANIFEST}") [all …]
|
| D | tfm_manifest_list.yaml | 10 # The "manifest" field must be a path relative to this file, a path relative to 29 "manifest": "../secure_fw/partitions/ns_agent_mailbox/ns_agent_mailbox.yaml", 44 "manifest": "../secure_fw/partitions/protected_storage/tfm_protected_storage.yaml", 58 … "manifest": "../secure_fw/partitions/internal_trusted_storage/tfm_internal_trusted_storage.yaml", 72 "manifest": "../secure_fw/partitions/crypto/tfm_crypto.yaml", 87 "manifest": "../secure_fw/partitions/platform/tfm_platform.yaml", 101 "manifest": "../secure_fw/partitions/initial_attestation/tfm_initial_attestation.yaml", 115 "manifest": "../secure_fw/partitions/firmware_update/tfm_firmware_update.yaml",
|
| /trusted-firmware-m-latest/platform/ext/common/gcc/ |
| D | tfm_isolation_l3.ld.template | 102 {% if partition.manifest.type == 'PSA-ROT' %} 103 .{{partition.manifest.name}}_RO ALIGN(TFM_LINKER_PSA_ROT_LINKER_CODE_ALIGNMENT) : 117 *({{partition.manifest.name}}_PSA-ROT_ATTR_FN) 120 Image$${{partition.manifest.name}}_RO$$Base = ADDR(.{{partition.manifest.name}}_RO); 121 …Image$${{partition.manifest.name}}_RO$$Limit = ADDR(.{{partition.manifest.name}}_RO) + SIZEOF(.{{p… 129 {% if partition.manifest.type == 'APPLICATION-ROT' %} 130 .{{partition.manifest.name}}_RO ALIGN(TFM_LINKER_APP_ROT_LINKER_CODE_ALIGNMENT) : 144 *({{partition.manifest.name}}_APP-ROT_ATTR_FN) 147 Image$${{partition.manifest.name}}_CODE$$Base = ADDR(.{{partition.manifest.name}}_RO); 148 …Image$${{partition.manifest.name}}_CODE$$Limit = ADDR(.{{partition.manifest.name}}_RO) + SIZEOF(.{… [all …]
|
| /trusted-firmware-m-latest/docs/integration_guide/services/ |
| D | tfm_manifest_tool_user_guide.rst | 2 TF-M Manifest Tool User Guide 4 This document describes the TF-M manifest tool and its usage. 15 The TF-M manifest tool is a python script which is used to parse Secure 20 In the TF-M build system, the manifest tool is invoked during building 35 -m manifest list [manifest list ...] 46 **-m/--manifest-lists** 50 A list of TF-M Secure Partition manifest lists which contain one or more 52 See `Manifest List`_ for details. 77 Manifest List 79 A manifest list is a YAML [3]_ file that describes a list of Secure Partition [all …]
|
| D | tfm_secure_partition_addition.rst | 45 focuses on the configuration, manifest, implement rules. The actual 61 - `Add manifest`_ 72 - Manifest file 76 Add manifest 78 Each Secure Partition must have resource requirements declared in a manifest 79 file. The Secure Partition Manager (SPM) uses the manifest file to assemble and 80 allocate resources within the SPE. The manifest includes the following: 90 The current manifest format in TF-M is "yaml" which is different from the 95 in manifest. They are replaced by 01, 02 and 03 auotmatically when parsing manifest 98 Here is a manifest reference example for the IPC model: [all …]
|
| /trusted-firmware-m-latest/platform/ext/common/iar/ |
| D | tfm_isolation_l3.icf.template | 92 …ne block ER_{{partition.manifest.name}}_RO with alignment = {{ 'TFM_LINKER_PSA_ROT_LINKER_CODE_AL… 105 {% if partition.manifest.type == 'PSA-ROT' %} 106 section {{partition.manifest.name}}_PSA-ROT_ATTR_FN, 108 {% if partition.manifest.type == 'APPLICATION-ROT' %} 109 section {{partition.manifest.name}}_APP-ROT_ATTR_FN, 162 {% if partition.manifest.type == 'PSA-ROT' %} 164 …define block PT_{{partition.manifest.name}}_PRIVATE_DATA_START with alignment = TFM_LINKER_PSA_ROT… 166 …define block ER_{{partition.manifest.name}}_RWZI with alignment = TFM_LINKER_PSA_ROT_LINKER_DATA_A… 178 section {{partition.manifest.name}}_PSA-ROT_ATTR_RW, 179 section {{partition.manifest.name}}_PSA-ROT_ATTR_ZI, [all …]
|
| /trusted-firmware-m-latest/platform/ext/common/armclang/ |
| D | tfm_isolation_l3.sct.template | 87 {% if partition.manifest.type == 'PSA-ROT' %} 88 ER_{{partition.manifest.name}}_RO +0 ALIGN TFM_LINKER_PSA_ROT_LINKER_CODE_ALIGNMENT { 99 *({{partition.manifest.name}}_PSA-ROT_ATTR_FN) 108 {% if partition.manifest.type == 'APPLICATION-ROT' %} 109 ER_{{partition.manifest.name}}_RO +0 ALIGN TFM_LINKER_APP_ROT_LINKER_CODE_ALIGNMENT { 120 *({{partition.manifest.name}}_APP-ROT_ATTR_FN) 185 {% if partition.manifest.type == 'PSA-ROT' %} 187 …PT_{{partition.manifest.name}}_PRIVATE_DATA_START +0 ALIGN TFM_LINKER_PSA_ROT_LINKER_DATA_ALIGNMEN… 191 ER_{{partition.manifest.name}}_RWZI +0 ALIGN TFM_LINKER_PSA_ROT_LINKER_DATA_ALIGNMENT { 202 *({{partition.manifest.name}}_PSA-ROT_ATTR_RW) [all …]
|
| /trusted-firmware-m-latest/platform/ext/target/rpi/rp2350/manifest/ |
| D | tfm_manifest_list.yaml | 7 # The "manifest" field must be a path relative to this file, a path relative to 26 "manifest": "secure_fw/partitions/ns_agent_mailbox/ns_agent_mailbox.yaml", 41 "manifest": "secure_fw/partitions/protected_storage/tfm_protected_storage.yaml", 55 "manifest": "secure_fw/partitions/internal_trusted_storage/tfm_internal_trusted_storage.yaml", 69 "manifest": "secure_fw/partitions/crypto/tfm_crypto.yaml", 84 "manifest": "platform/ext/target/rpi/rp2350/manifest/tfm_platform.yaml", 98 "manifest": "secure_fw/partitions/initial_attestation/tfm_initial_attestation.yaml", 112 "manifest": "secure_fw/partitions/firmware_update/tfm_firmware_update.yaml",
|
| /trusted-firmware-m-latest/platform/ext/target/arm/rse/common/manifest/ |
| D | tfm_manifest_list.yaml | 10 # The "manifest" field must be a path relative to this file, a path relative to 29 "manifest": "platform/ext/target/arm/rse/common/manifest/ns_agent_mailbox.yaml", 44 "manifest": "platform/ext/target/arm/rse/common/manifest/tfm_crypto.yaml", 58 "manifest": "secure_fw/partitions/platform/tfm_platform.yaml", 72 "manifest": "platform/ext/target/arm/rse/common/manifest/tfm_initial_attestation.yaml",
|
| /trusted-firmware-m-latest/platform/ext/target/arm/rse/kronos/manifest/ |
| D | tfm_manifest_list.yaml | 10 # The "manifest" field must be a path relative to this file, a path relative to 29 "manifest": "secure_fw/partitions/ns_agent_mailbox/ns_agent_mailbox.yaml", 44 "manifest": "platform/ext/target/arm/rse/kronos/manifest/tfm_protected_storage.yaml", 58 "manifest": "platform/ext/target/arm/rse/kronos/manifest/tfm_crypto.yaml", 72 "manifest": "secure_fw/partitions/platform/tfm_platform.yaml", 86 "manifest": "secure_fw/partitions/initial_attestation/tfm_initial_attestation.yaml",
|
| /trusted-firmware-m-latest/platform/include/ |
| D | tfm_plat_defs.h | 38 * \param[in] TFM_PARTITION_NAME TF-M partition name assigned in the manifest 40 * \param[in] TFM_PARTITION_TYPE TF-M partition type assigned in the manifest 53 * \param[in] TFM_PARTITION_NAME TF-M partition name assigned in the manifest 55 * \param[in] TFM_PARTITION_TYPE TF-M partition type assigned in the manifest 68 * \param[in] TFM_PARTITION_NAME TF-M partition name assigned in the manifest 70 * \param[in] TFM_PARTITION_TYPE TF-M partition type assigned in the manifest
|
| /trusted-firmware-m-latest/secure_fw/partitions/firmware_update/bootloader/ |
| D | tfm_bootloader_fwu_abstraction.h | 36 * \param[in] manifest A pointer to a buffer containing a detached manifest for 37 * the update. If the manifest is bundled with the firmware 38 * image, manifest must be NULL. 39 * \param[in] manifest_size Size of the manifest buffer in bytes. 43 * manifest has failed. 52 const void *manifest,
|
| /trusted-firmware-m-latest/docs/design_docs/booting/ |
| D | secure_boot_rollback_protection.rst | 20 - Manifest data: Metadata of the software image: size, version, hash, 33 manifest data is checked. 35 Manifest format in MCUBoot 37 MCUBoot has a custom manifest format, which is composed of two parts: 61 counter in the image manifest to ensure anti-rollback protection. During 83 protected part of the image manifest. Because the image header is almost fully 91 can easily be added to the image manifest. 141 and related manifest data is stored in trusted memory then the included 149 corresponding manifest) then the value of security counter must be copied to 177 manifest data (only if it is in trusted memory) or the corresponding
|
| D | secure_boot_hw_key_integration.rst | 36 verification the hash of the public key is appended to the image manifest area 38 hash of the public key from the manifest area and compare against the on-the-fly 55 | Image Manifest(TLV) | 83 appended to the image itself in the manifest area. It has the drawback that the 109 | Image Manifest(TLV) | 156 | |Key format in manifest |Key in MCUBoot code| Key in HW |
|
| /trusted-firmware-m-latest/docs/design_docs/dual-cpu/ |
| D | mailbox_ns_agent_update.rst | 84 - Having a manifest file to describe the attributes and resources and a 85 positive value ``Partition ID`` in the manifest. 360 Customized manifest attribute 362 Three extra customized manifest attributes are added: 367 ns_agent Indicate if manifest owner is an Agent. 398 Manifest tooling update 400 The manifest for agents involves specific keys ('ns_agent' e.g.), these keys 403 restrictions need to be applied in the manifest tool to limit the general 415 "manifest": "${CMAKE_SOURCE_DIR}/secure_fw/partitions/ns_agent_mailbox/ns_agent_mailbox.yaml", 418 ``non_ffm_attributes`` tells the manifest tool that ``ns_agent`` is valid [all …]
|
| /trusted-firmware-m-latest/interface/include/psa_manifest/ |
| D | sid.h.template | 18 {% if partition.manifest.services %} 19 /******** {{partition.manifest.name}} ********/ 20 {% for service in partition.manifest.services %}
|
| /trusted-firmware-m-latest/docs/integration_guide/ |
| D | tfm_secure_irq_integration_guide.rst | 71 ``irqs`` attribute of the Secure Partition manifest. 76 Different Firmware Framework versions have different definitions of manifest. 81 Here is an example manifest of Secure Partitions conform to Firmware Framework 128 Here is an example manifest of Secure Partitions conform to Firmware Framework 187 Secure Partition manifest, to enable the Secure Partition to access it. 256 - ``irq_{source}``, if the ``source`` attribute of the IRQ in Partition manifest 260 For example if the manifest declares ``"source": 5``, then the function name 262 If the manifest declares ``"source" : "TIMER_1_IRQ"`` then the function
|
| /trusted-firmware-m-latest/interface/include/ |
| D | config_impl.h.template | 45 {% set total_stk.size = total_stk.size + " + " + partition.manifest.stack_size %} 55 * Manifest tool will assure this. 71 {% if partition.manifest.type == 'APPLICATION-ROT' %}
|
| /trusted-firmware-m-latest/docs/design_docs/software/ |
| D | tfm_code_generation_with_jinja2.rst | 27 substitute the keychains with actual values from the manifest files. 69 {% if partition.manifest.services %} 70 {% for service in partition.manifest.services %}
|
| /trusted-firmware-m-latest/interface/include/psa/ |
| D | update.h | 188 * @param manifest A pointer to a buffer containing a detached manifest for 190 * @param manifest_size The size of the detached manifest. 195 const void *manifest,
|
| /trusted-firmware-m-latest/config/ |
| D | tfm_build_log_config.cmake | 14 set(CONFIG_TFM_PARSE_MANIFEST_QUIET ON CACHE BOOL "Parse manifest quietly") 19 set(CONFIG_TFM_PARSE_MANIFEST_QUIET OFF CACHE BOOL "Parse manifest quietly")
|