Use the folder `features/FEATURE_PSA/TARGET_TFM/TARGET_IGNORE` as the
build folder to clone and build tf-m.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
* Add python2 support
* Use fix version of trusted-firmware-m and it's dependencies
* Remove `--clean-build` and `-v` command-line options
* Code refactoring
* By default a temporary folder is used as tf-m build folder. But when
`--develop` command line option is used then a new folder
(tfm_build_dir) under the parent folder of Mbed OS is used as tf-m
build folder
* Updated documentation
* Adding both .bin and .axf into dedicated directory for every tf-m
target
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
The python script (tools/psa/build_tfm.py) automates tf-m build process
for a particular target or all supported tf-m targets and copies generated
binary to a predefined location.
Updated documentation describing steps to add single v7-m and dual v7-M
targets and building tf-m using python script.
Added following attributes to dual v7-M and v8-M SPE generic target,
* inherits: PSA generic target PSA_DUAL_V7_M_SPE
* tfm_target_name: Target name in TF-M
* tfm_bootloader_supported: If TF-M bootloader is supported by the target.
Values supported are "true" and "false"
* tfm_default_toolchain: Default TF-M toolchain supported. Values supported
are "ARMCLANG" and "GNUARM"
* tfm_supported_toolchains: Supported TF-M toolchains. Values supported
are "ARMCLANG" and "GNUARM"
* delivery_dir: The directory to which TF-M binary will be copied to
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Revert the changes from 3bdc378171
to include back the class M2351Code() to support the target with
Post Binary Hook.
Signed-off-by: Vikas Katariya <vikas.katariya@arm.com>
Adhere with TF-M region map and flash partition to aid integration.
Changes:
* Use the region_defs.h to the derive region map for the following.
-- RAM START, SIZE.
-- STACK SIZE (MSP).
-- ROM START, SIZE.
* Define new region for DATA_SHARED for
Non-secure (Cortex M4) <--> Secure (Cortex M0+) communication.
* Align the RAM regions (HEAP, STACK (MSP), and DATA_SHARED) to
4 bytes.
* Correctly specify the flash region size as 1MB, not 832KB.
These changes are referenced from the TF-M Non-Secure partition build.
Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
Adhere with TF-M region map and flash partition to aid integration.
Changes:
* Use the region_defs.h to the derive region map for the following.
-- RAM START, SIZE.
-- STACK SIZE (MSP).
-- ROM START, SIZE.
* Define new region for DATA_SHARED for
Non-secure (Cortex M4) <--> Secure (Cortex M0+) communication.
* Align the RAM regions (HEAP, STACK (MSP), and DATA_SHARED) to
4 bytes.
* Correctly specify the flash region size as 1MB, not 832KB.
These changes are referenced from the TF-M Non-Secure partition build.
Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
These files are directly leveraged from the TF-M target (psoc64_1m).
Git hash - https://git.trustedfirmware.org/trusted-firmware-m.git/commit/?h=feature-twincpu&id=14d4a73cae631ea291f4d8d04e3c588ea9e955c8
Reason: They are going to provide region definitions and flash
partition details of the target which runs TF-M based Secure image
defining the memory map needed for successful integration.
Folder structure:
TARGET_CY8CPROTO_064_SB
-- partition
-- flash_layout.h
-- region_defs.h
Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
Current algorithm doesn't support multiple inheritance when inheritance
depth is more than 1 on two parents. It'll not parse the "_add" or
"_remove" attributes on a second parent which is at the same level
as that of a parent that defines the attribute.
This change ensures that second parent which is at the same level
as that of a parent that defines the attribute is parsed for "_add" or
"_remove" attributes. However, this change will parse the parent which
defines the attributes twice, once to evaluate the attribute and then to
evaluate the "_add" or "_remove" attribute. But, no target is allowed to
define an attribute and also "_add" or "_remove" for the same attribute.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
The example `mbed-os-example-atecc608a` needs the secure element driver
which is removed from feature branch. The secure element support should
be added to TF-M and when we import TF-M to mbed-os, secure element
will be supported in mbed-os. Because of this compilation of the
example `mbed-os-example-atecc608a` is disabled.
Note: DO NOT merge this to `master` without secure element support in
mbed-os.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Removed MUSCA A1 and LPC55S69 targets as they are not supported on
feature branch. The targets will be re-introduced before merging feature
branch to master.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
1. Remove psa related hooks from the build system.
2. Remove PSA related scripts from tools/test folder
3. Remove psa-autogen job from travis which was running
generate_partition_code.py and is not needed anymore
4. Install python modules needed for events and littlefs tests
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
These changes are the first step towards switching to TF-M SPM and
services which will be running on the secure side and mbed-os
will be running on the non-secure side.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Create a script (tools/psa/build_tfm.py) to build Trusted
Firmware M (TF-M) image. Current version of the script only
clones the TF-M git repo and its dependencies and computes
the version information of TF-M repo and write it to
'features/FEATURE_PSA/FEATURE_TFM/VERSION.txt'
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>