Home
last modified time | relevance | path

Searched refs:to (Results 1 – 25 of 334) sorted by relevance

12345678910>>...14

/trusted-firmware-m-3.4.0/docs/doxygen/
DDoxyfile.in10 # This file describes the settings to be used by the documentation system
44 # The PROJECT_NUMBER tag can be used to enter a project or revision number. This
59 # the logo to the output directory.
63 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
65 # entered, it will be relative to the location where doxygen was started. If
70 # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
80 # If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
81 # characters to appear in the names of generated files. If set to NO, non-ASCII
88 # The OUTPUT_LANGUAGE tag is used to specify the language in which all
90 # information to generate all constant output in the proper language.
[all …]
/trusted-firmware-m-3.4.0/docs/integration_guide/
Dindex.rst4 The purpose of this document is to provide a guide on how to integrate TF-M
13 OS migration to Armv8-M <os_migration_guide_armv8m.rst>
25 How to build TF-M
30 How to export files for building non-secure applications
35 How to add a new platform
38 :doc:`Porting TF-M to a New Hardware </integration_guide/platform/porting_TFM_to_a_new_hardware>`
39 contains guidance on how to add a new platform.
42 How to integrate another OS
45 OS migration to Armv8-M platforms
47 To work with TF-M on Armv8-M platforms, the OS needs to support the Armv8-M
[all …]
Dos_migration_guide_armv8m.rst2 Generic OS migration from Armv7-M to Armv8-M architecture
4 The purpose of this document is to list a set of requirements needed for
5 migrating a generic OS kernel running on Armv7-M to the Armv8-M architecture.
11 suggested to put specific code targeted to the Non Secure build under a
13 this case needs to be amended accordingly to support this new switch.
15 needs to be initialized and properly handled during thread context switch
18 value used in Handler mode transitions needs to be differentiated between
Dtfm_secure_irq_integration_guide.rst9 This document describes how to enable an interrupt in TF-M. The target audiences
28 Partition Thread to have further data processing.
34 to scheduling.
40 The SLIH is deferred and subject to scheduling but all Secure Partition APIs are
43 Both the FLIH and the SLIH can be used by Secure Partitions which conform to
47 to Firmware Framework v1.0.
49 Please refer to chapter 6.2 of FF-M v1.1 [1]_ for more details on the interrupt
56 To enable an interrupt, you need to do the following:
58 - Binding the interrupt to a Secure Partition.
59 - Granting the Secure Partition access permissions to the device of the
[all …]
/trusted-firmware-m-3.4.0/config/
Dconfig_base.cmake10 … ${CMAKE_SOURCE_DIR}/toolchain_GNUARM.cmake CACHE FILEPATH "Path to TFM compiler toolcha…
11 set(TFM_PLATFORM "" CACHE STRING "Platform to build TF-M for. Mu…
14 set(BL1 OFF CACHE BOOL "Whether to build BL1")
15 set(BL2 ON CACHE BOOL "Whether to build BL2")
16 set(NS ON CACHE BOOL "Whether to build NS app")
18 set(TEST_S OFF CACHE BOOL "Whether to build S regression …
19 set(TEST_NS OFF CACHE BOOL "Whether to build NS regression…
21 set(TEST_BL1_1 OFF CACHE BOOL "Whether to build BL1_1 tests")
22 set(TEST_BL1_2 OFF CACHE BOOL "Whether to build BL1_2 tests")
27 set(TFM_PROFILE "" CACHE STRING "Profile to use")
[all …]
/trusted-firmware-m-3.4.0/platform/ext/target/arm/corstone1000/
Dconfig.cmake10 set(BL1 ON CACHE BOOL "Whether to build BL1")
11 set(PLATFORM_DEFAULT_BL1 OFF CACHE STRING "Whether to use default BL1 or pl…
12 set(BL2 ON CACHE BOOL "Whether to build BL2")
14 set(DEFAULT_MCUBOOT_FLASH_MAP OFF CACHE BOOL "Whether to use the default flash…
16 … "1" CACHE STRING "Security counter for S image. auto sets it to IMAGE_VERSION_S")
18 set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "Whether to combine S and NS into…
21 set(CONFIG_TFM_USE_TRUSTZONE OFF CACHE BOOL "Enable use of TrustZone to trans…
22 set(TFM_MULTI_CORE_TOPOLOGY ON CACHE BOOL "Whether to build for a dual-cpu …
23 set(TFM_PLAT_SPECIFIC_MULTI_CORE_COMM ON CACHE BOOL "Whether to use a platform specif…
25 set(CRYPTO_HW_ACCELERATOR ON CACHE BOOL "Whether to enable the crypto ha…
[all …]
/trusted-firmware-m-3.4.0/docs/technical_references/design_docs/
Dtfm_cooperative_scheduling_rules.rst13 TF-M enabled system need to be able to handle asynchronous events (interrupts)
14 regardless of current security state of the PE, and that may lead to scheduling
24 3. Reduce critical sections on the secure side to not block interrupts
26 4. Scalability to allow simplification/reduction of overheads to scale down the
50 - A NSPE exception handler returns from NSPE to pre-empted SPE context
51 - A SPE exception handler returns from SPE to pre-empted NSPE context
57 In order to maintain the call stack integrity across NSPE and SPE, following
63 1. **The NSPE exception handler is allowed to trigger a NSPE context switch**
77 This is to ensures integrity of the call stack when SPE is ready to return a
87 2. **The SPE interrupt handler is allowed to trigger a SPE context switch**
[all …]
Dtfm_its_service.rst13 which is trusted to provide data confidentiality and authenticity. This
15 allows larger data sets to be stored securely in external flash, with the option
16 for encryption, authentication and rollback protection to protect the
27 The proposal is to implement the *PSA Internal Trusted Storage API* with the
28 *TF-M Internal Trusted Storage service*. It can be abbreviated to *TF-M ITS
29 service* in general and to ``its`` in code. This name has the advantage of
32 If this name is adopted, then it may make sense to rename the *Secure Storage
33 service* to the *Protected Storage service* in the future to match. Then "secure
34 storage" could refer to the two services as a collective.
37 a separate partition to Protected Storage, for a couple of reasons:
[all …]
Dtfm_builtin_keys.rst13 TF-M has several keys that are bound to the device itself instead of a secure
16 referred to as "builtin keys", and include (but are not limited to):
22 which requires some key-loading logic to be implemented by that partition. The
34 handle, which can be leveraged to allow TF-M to define a set of handles for the
37 Defining these constant handles allows these keys to be used by secure partition
38 and non-secure callers (subject to access policy), via the standard PSA crypto
41 Ideally, it would be possible to just have PSA builtin keys that are stored in
50 The PSA crypto driver API allows most PSA Crypto APIs to defer their operation
51 to an accelerator driver in preference of the software implementation. It also
52 adds the concept of storage locations for keys, which is used to access keys
[all …]
Dtfm_physical_attack_mitigation.rst32 The goal of physical attacks is to alter the expected behavior of a circuit.
33 This can be achieved by changing the device's normal operating conditions to
37 and the attacker could gain access to the entire device. There is a wide variety
44 current through a small coil close to the chip surface, no physical contact
50 products to perform such attacks. Furthermore, they are shipped with a scripting
74 - A few instructions are skipped. This can lead to taking different branch
94 resistant to fault injection attacks. These can make it harder to perform a
96 content. The device maker needs to consider what level of physical attack is in
105 protection against physical attacks. The best of what is to achievable to harden
106 the system to increase the cost of a successful attack (in terms of time and
[all …]
Dsecure_boot_rollback_protection.rst11 The goal of anti-rollback protection is to prevent downgrading of the device to
12 an older version of its software, which has been deprecated due to security
26 Boot loader is responsible to authenticate the new image according to the
31 charge to do the necessary steps (load to execute address, etc.) to enable the
32 new image to be executed. During the validation process the image and the
39 - Image header: Prepended to the beginning of the image.
41 - TLV section: Appended to the end of the image. It is not integrity protected:
60 The aim of a security counter is to have an independent (from the image version)
61 counter in the image manifest to ensure anti-rollback protection. During
64 device then it is not allowed to go back to earlier versions. It is beneficial
[all …]
Dtfm_code_generation_with_jinja2.rst13 Some of the files in TF-M are generated from template files. The files to be
17 partition information from the partition manifests. The manifests to be used for
24 ``tools/tfm_parse_manifest_list.py`` Python script is used to generate files
25 from the templates. This script calls the ``tools/generate_from_template.py`` to
26 parse the template files, and uses ``tools/keyword_substitution.py`` to
33 The proposal is to eliminate the template parser and substituter scripts, and
35 ``tools/tfm_parse_manifest_list.py`` to do the substitution.
42 - ``tools/tfm_parse_manifest_list.py`` have to be modified to call the Jinja2
44 library is very similar to the one required by the current scripts.
45 - template files needs to be rewritten to the Jinja syntax: The control
[all …]
Dps_key_management.rst11 The PSA Protected Storage API requires confidentiality for external storage to
20 128 bits of entropy (and a 128 bit data size), and be accessible only to Trusted
26 derivation function (KDF) to derive a storage key from the HUK, by referring to
28 volatile memory private to the Crypto partition, or it could remain inside a
29 secure element. Either way it will not be returned to PS.
31 For each call to the PSA Protected Storage APIs, PS will make requests to the
32 Crypto service to perform AEAD encryption and/or decryption operations using the
35 At no point will PS access the key material itself, only referring to the HUK
40 PS will make key derivation requests to the Crypto service with calls to the
41 PSA Crypto APIs. In order to derive the storage key, the following calls are
[all …]
Dcode_sharing.rst13 it is often challenging to fit bigger projects in the available memory. The PSA
14 specifications require a device to both have a secure boot process in place at
15 device boot-up time, and to have a partition in the SPE which provides
20 mbed-crypto library to implement these requirements. During the build process,
22 bootloader requires less functionality) and then linked to the corresponding
32 which might need to use TF-M Profile Small anyway.
40 dynamic loading functionality. One major challenge to be solved in the Cortex-M
41 space is how to share code between independently linked XIP applications that
42 are tied to a certain memory address range to be executable and have absolute
51 the exclusive user. No attention needs to be paid as to where global data is
[all …]
Dhardware_abstraction_layer.rst14 operations on the :term:`SPE` side and provides a set of APIs to the upper
16 The :term:`HAL` aims to cover the platform different aspects whereas common
20 it may not be possible to generalize implementations because lots of information
21 is only known to platforms.
22 It is more efficient to define a :term:`HAL` API for those architectural
27 :term:`TF-M` :term:`HAL` tries to reference :term:`TBSA-M` recommendations in
33 :term:`TF-M` :term:`HAL` is designed to simplify the integration efforts on
36 :term:`TF-M` :term:`HAL` is designed to make it easy to use the hardware and
37 develop the :term:`SPM` and :term:`RoT Service` which need to access the
40 :term:`TF-M` :term:`HAL` is designed to make the structure clearer and let the
[all …]
/trusted-firmware-m-3.4.0/docs/security/security_advisories/
Dstack_seal_vulnerability.rst5 | Title | NS world may cause the CPU to perform an unexpected return |
6 | | operation due to unsealed stacks. |
12 | Versions | All versions up to and including TF-M v1.1 |
29 When the Non-Secure world returns to Secure after a callback (FNC_RETURN) or
34 or EXC_RETURN and causes the PE to pop from the unexpected stack. Please
35 refer to `ARMv8-M Secure stack sealing advisory notice`_ for more
38 To prevent such an attack, the architecture expects the secure software to
42 Both the MSP_S and the PSP_S stacks need to be sealed to mitigate stack
52 PSP_S and then switches to MSP_S as part of SPM scheduling. The MSP_S is fully
56 partition execution using PSP_S switches to non-secure world due to a
[all …]
/trusted-firmware-m-3.4.0/bl2/ext/mcuboot/
Dmcuboot_default_config.cmake10 set(TEST_BL2 OFF CACHE BOOL "Whether to build bl2 tests")
12 set(DEFAULT_MCUBOOT_SECURITY_COUNTERS ON CACHE BOOL "Whether to use the default sec…
13 set(DEFAULT_MCUBOOT_FLASH_MAP ON CACHE BOOL "Whether to use the default fla…
18 set(MCUBOOT_IMAGE_NUMBER 2 CACHE STRING "Whether to combine S and NS in…
19 set(MCUBOOT_EXECUTION_SLOT 1 CACHE STRING "Slot from which to execute the…
20 set(MCUBOOT_LOG_LEVEL "INFO" CACHE STRING "Level of logging to use for MC…
21 set(MCUBOOT_HW_KEY ON CACHE BOOL "Whether to embed the entire pu…
26 set(MCUBOOT_CONFIRM_IMAGE OFF CACHE BOOL "Whether to confirm the image i…
29 # platforms to choose a specific upgrade strategy for images. These certain
30 # configurations will be used to facilitate the later validation.
[all …]
/trusted-firmware-m-3.4.0/docs/platform/arm/mps3/corstone310/
DREADME.rst40 …m-software.github.io/AVH/main/simulation/html/Using.html>`_, you will need to create an `AWS Accou…
43 1. Go to `EC2 <https://console.aws.amazon.com/ec2/v2/>`_ in the AWS Web Console.
44 2. Select **Launch Instances** which will take you to a wizard for launching the instance.
47 …m, but AWS does charge for the costs of the instances themselves according to the pricing chart pr…
49 You must select Continue if you want to move forward.
52 …elect **Review and Launch** to move directly to the launch page or select **Next: Configure Instan…
55 … you will see a page that allows you to navigate directly to the new instance. You may click this …
57 Whichever way you choose find your new instance and select its instance ID to open the page to mana…
59 Connecting to the instance:
60 1. Select **Connect** to open an SSH terminal session to the instance in your browser.
[all …]
/trusted-firmware-m-3.4.0/docs/contributing/
Dcontributing_process.rst4 Contributions to the TF-M project need to follow the process below.
10 - It is recommended to subscribe to `TF-M mailing list <mailing_list_>`_
12 - Refer to the `Roadmap
13 <https://developer.trustedfirmware.org/w/tf_m/planning>`_ or send a mail to
14 the `TF-M mailing list <mailing_list_>`_ to get the latest status and plan of
17 to propose your design.
18 - Follow guidelines below to prepare the patch:
25 - Make your changes in logical chunks to help reviewers. Each commit should
29 to update documentation in ``docs`` folder if needed.
30 - Test your changes and add details to the commit description.
[all …]
/trusted-firmware-m-3.4.0/lib/ext/cryptocell-312-runtime/codesafe/src/psa_driver_api/
Dpsa_driver_api_design.rst5 This document describes the high level design of the driver interface to the
7 as ``CC-3xx`` to indicate that it should be generic enough to easily support
17 The PSA Cryptoprocessor Driver interface describes a way to uniformly interface
18 a compliant PSA Crypto implementation to a cryptographic accelerator, that can
21 which is able to store keys in a separate, protected domain from the rest of
24 Due to the nature of the CC-312 processor, the natural choice is to implement
27 to provide support for a dedicated key management subsystem or add support for
29 interfaces which are specific to an _opaque_ driver as described by the
41 crypto core to call functionalities of the driver, and a set of `Internal APIs`_,
42 functions which are meant to be called by other modules of the driver, for
[all …]
/trusted-firmware-m-3.4.0/docs/technical_references/design_docs/dual-cpu/
Dbooting_a_dual_core_system.rst12 There are many possibly ways to design a dual core system. Some important
15 - Which core has access to which areas of Flash?
17 - It is possible that the secure core has no access to the Flash from which
23 does it jump to a set address, …?
32 In an effort to make the problem manageable, as well as to provide a system
33 with good performance, that is flexible enough to work for a variety of dual
37 access to the Flash that the non-secure core will boot from
39 - This keeps the boot flow as close as possible to the single core design,
44 up hardware protection to (potentially) start the non-secure core running
46 - This is the earliest point at which it is safe to allow the non-secure
[all …]
Dtfm_multi_core_access_check.rst15 permission to read or write the target memory region.
43 - Memory region is valid according to system settings
45 - Secure services should not directly access non-secure memory. According to PSA
46 Firmware Framework, Secure services should call Secure Partition APIs to ask
47 TF-M SPM to fetch non-secure input/output buffer for them.
53 - Memory region is valid according to system settings
55 - Secure services should not directly access non-secure memory. According to PSA
56 Firmware Framework, Secure services should call Secure Partition APIs to ask
57 TF-M SPM to fetch non-secure input/outputs buffer for them.
61 The check policy in Isolation Level 3 will be defined according to TF-M future
[all …]
/trusted-firmware-m-3.4.0/platform/ext/target/cypress/psoc64/libs/core-lib/
DEULA7 …tation, including any upgrades, updates, bug fixes or modified versions provided to you by Cypress.
13 …Development Tools" means software that is intended to be installed on a personal computer and used…
19 …e that executes on a device other than a Cypress hardware product in order to program, control, or…
21 …nformation file (.inf file) created by the Software to allow a Microsoft Windows operating system
23 …icense. Subject to the terms and conditions of this Agreement, Cypress Semiconductor Corporation …
25 …a. to use the Development Tools in object code form solely for the purpose of creating Firmware, D…
27 … Code form, to copy, modify, and compile the Firmware Source Code to create Firmware for execution…
29to copy, modify, and compile the Driver Source Code to create one or more Drivers to enable the us…
31to copy, modify, and compile the Host Application Source Code to create one or more Host Applicati…
33 e. to freely distribute any inf File.
[all …]
/trusted-firmware-m-3.4.0/docs/integration_guide/platform/
Dplatform_ext_folder.rst7 to BSD 3.0 license applied to the parent TF-M project.
11 Maintainers should be consulted if this needs to be revisited.
19 This folder contains cmake and code files to interact cryptographic
22 In order to use a cryptographic accelerator, a platform must set
23 ``CRYPTO_HW_ACCELERATOR_TYPE`` in preload.cmake. This option maps directly to
28 A minimal API is exposed to interact with accelerators, the details of this api
36 - ``ON`` All possible mbedtls cryptographic operations will be offloaded to
51 These contain the linker scripts used to configure the memory regions in TF-M
65 that TF-M project expects a target to provide.
69 This file is expected to define the following macros respectively.
[all …]
/trusted-firmware-m-3.4.0/docs/security/threat_models/
Dgeneric_threat_model.rst19 Trustedfirmware.org [Security-Incident-Process]_ to contact TF-M security
29 Root of Trust (RoT) service. Those RoT services belong to diverse RoT
40 The threat modeling in this document follows the process listed below to
50 process is to firstly investigate the TOE which could be a system, solution or
51 use case. This first step helps to identify the assets to be protected in TOE.
53 According to TOE and assets, Trust Boundaries can be determined. The Data Flow
54 Diagram (DFD) across Trust Boundaries is then defined to help identify the
66 Non-secure Processing Environment (NSPE). For more details, please refer to
76 Refer to dedicated threat models for the specific TOE definitions.
107 - Certificate for connecting to cloud
[all …]

12345678910>>...14