Commit Graph

3521 Commits (686d4c797e3d99bd94dd67110610b47be9ee6d38)

Author SHA1 Message Date
jeromecoutant 55cd5c4527 STM32L4: add missing sectors in arm pack manager file
For STM32L4Rx and STM32L4Sx, Dual Bank configuration is set by default
2020-07-06 15:51:21 +02:00
jeromecoutant 52f964f5c1 STM32F7 add sectors in arm pack manager file
For STM32F76x and STM32F77x, Single Bank configuration is set by default
2020-07-06 15:51:21 +02:00
jeromecoutant 62c67af09b STM32F4 add sectors in arm pack manager file 2020-07-06 15:51:20 +02:00
jeromecoutant a4f65a0506 STM32F3: add missing RAM in arm pack manager file 2020-07-06 15:51:20 +02:00
jeromecoutant a5003419e0 STM32F2: add missing sectors in arm pack manager file 2020-07-06 15:51:19 +02:00
Martin Kojtal 57809c4a37
Merge pull request #13171 from LDong-Arm/reenable_aws_example
Re-enable AWS example, limit targets
2020-07-03 10:15:43 +02:00
Martin Kojtal 6c27da57d9
Merge pull request #13122 from romanjoe/pr/add_cy8ckit_064b0b2_4343w
Cypress: Add target CY8CKIT_064B0S2_4343W, update psoc6pdl, psoc6cm0p
2020-06-24 09:36:39 +02:00
Lingkai Dong 183a4c7ecf mbed-os-example-aws: build for DISCO_L475VG_IOT01A and K64F 2020-06-22 16:39:25 +01:00
Lingkai Dong 8a09d308d5 Revert "disable compilation in CI"
This reverts commit d4e9267542.
2020-06-22 16:26:40 +01:00
Martin Kojtal 107d9bbf8a
Merge pull request #13070 from ithinuel/add_aws_example_to_build_list
add mbed-os-example-aws to the example list
2020-06-22 16:08:45 +02:00
Wilfried Chauveau d4e9267542
disable compilation in CI 2020-06-22 14:15:52 +01:00
Roman Okhrimenko fc42c74e7b Rework find_policy() in post build script to enable default locations 2020-06-19 16:16:54 +03:00
Roman Okhrimenko f689c05db7 Modify post build scripts to support only cysecuretools signing 2020-06-19 16:16:47 +03:00
Jaeden Amero b38c5ed8e3 examples: Add PSA example to list of examples 2020-06-18 12:16:30 +01:00
Devaraj Ranganna cd88e724f7 psa: Add a script to validate PSA targets
Add a script to parse `targets.json` to identify PSA targets and ensure
mandatory parameters are configured correctly for all PSA targets.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-06-18 12:16:29 +01:00
Devaraj Ranganna c9c593f7ca tools: Remove obsolete API
The API is_PSA_non_secure_target() uses obsolete labels to detect if a
target is PSA non-secure target and is not needed anymore.

Mbed OS depends on TF-M for PSA SPM and services. TF-M is built using
it's own build system. Therefore, we don't need to differentiate secure
and non-secure targets anymore in Mbed OS as all PSA targets in Mbed OS
are non-secure targets.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-06-18 12:16:28 +01:00
Devaraj Ranganna 939ed6940c tools: Improve PSA target identification logic
Current logic `is_TFM_target` relies on the availability of attribute
`tfm_target_name` to identify PSA targets. The API `is_TFM_target` is
used in pytest to validate PSA target configuration which again checks
the availability of `tfm_target_name`. If a target doesn't contain the
attribute `tfm_target_name` then this check will fail instead of
catching it. Therefore, we now check for `TFM` config option in `labels`
attribute.

The API `is_TFM_target()` returns true for Mbed OS PSA targets which are
supported by TF-M also.

Add a new API `is_PSA_target()` which returns true for all Mbed OS PSA
targets.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-06-18 12:16:26 +01:00
Devaraj Ranganna abccf97ebf psa: Import latest image signing scripts from TF-M
Import the latest image signing scripts from TF-M version
TF-Mv1.0-85-g3b7cc95a042c.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-06-18 12:16:22 +01:00
Devaraj Ranganna 76e911c5ef psa: Replace Mbed PSA with TF-M
Add TF-M to Mbed OS, replacing the previous PSA implementation for
TF-M-capable targets. This commit adds files imported from TF-M, without
modification. The version of TF-M imported can be found in
`features/FEATURE_PSA/TARGET_TFM/VERSION.txt`.

These changes switch to TF-M as the sole PSA implementation for v8-M and
dual core targets, with TF-M running on the secure side and Mbed OS
running on the non-secure side. Single core v7-M targets will continue
to have PSA implemented via PSA emulation, implemented by Mbed OS.

Move or remove many PSA-implementing files, as PSA will be provided by
TF-M on non-single-v7-M targets. Delete any files that are not relevant
for PSA emulation mode.
 - Remove imported TF-M SPM
 - Remove Mbed SPM and tests
 - Remove Mbed-implemented PSA services and tests
 - Remove PSA_SRV_IMPL, PSA_SRV_IPC, PSA_SRV_EMUL and NSPE.
 - Replace PSA_SRV_EMUL and PSA_SRV_IMPL with MBED_PSA_SRV
 - Remove any files autogenerated by
   "tools/psa/generate_partition_code.py", which no longer exists.

Add new feature `PSA` to support PSA in Mbed OS.

Move the Mbed OS implementation of PSA services for v7-M targets (which
employ PSA emulation, and don't yet use TF-M) to
features/FEATURE_PSA/TARGET_MBED_PSA_SRV. Update the `requires`
attribute in TESTS/configs/baremetal.json to avoid breaking baremetal
testing builds.

Update .astyleignore to match new directory structure

Update Mbed TLS importer to place files into FEATURE_PSA

Create the following generic PSA targets:

* `PSA_Target` (Root level PSA generic target)
* `PSA_V7_M` (Single v7-M PSA generic target)
* `PSA_DUAL_CORE` (Dual-core PSA generic target)
* `PSA_V8_M` (v8-M PSA generic target)

Flatten MUSCA_NS and private MUSCA targets into public MUSCA targets.

Move mcuboot.bin to flat location (removing prebuilt folder)

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-06-18 12:16:20 +01:00
Devaraj Ranganna e2af612a99 tools: Musca B1 signing strategy
Currently, the final binary (TF-M + Mbed OS) is signed after
concatenating TF-M and Mbed OS binaries. But TF-M signs the images
separately and then concatenates them. Update the Musca B1 signing
strategy to match TF-M.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-06-18 12:16:16 +01:00
Vikas Katariya 8252f3ee6e psa: Add TF-M utility scripts to python path
When python3 is enforced to build the ARM_MUSCA_A1 or ARM_MUSCA_B1
targets, it is unable to find binary utility tool scripts which are
imported from TF-M.

The reason to use the python3 environment is as follows: Mbed OS + TFM
contained a faulty boot record TLV, which failed the attestation test
(TF-M regression). The data in the boot record TLV will be included in
the generated attestation token as 1 item in the SW_COMPONENTS claim.

This data (in the boot record TLV) is pre-encoded in CBOR format at
build time and appended to the image during the image signing process
(done by the imgtool Python3 script).

Signed-off-by: Vikas Katariya <vikas.katariya@arm.com>
2020-06-18 12:16:13 +01:00
Martin Kojtal 9fc12213f4
Merge pull request #13135 from MultiTechSystems/mts-mdot-bootloader
Restore MTS_MDOT_F411RE bootloader binary
2020-06-18 11:29:10 +02:00
Martin Kojtal 86dad5cda9
Merge pull request #12471 from AGlass0fMilk/adc-voltage-api
Extend AnalogIn API: read_voltage
2020-06-17 19:57:28 +02:00
Taylor Heck f145594b28 Restore MTS_MDOT_F411RE bootloader binary 2020-06-17 09:27:30 -05:00
Martin Kojtal 31748ed1a9
Merge pull request #13036 from jeromecoutant/PR_GENPERIPH_V12
STM32_gen_PeripheralPins.py script v1.12
2020-06-17 12:14:20 +02:00
Martin Kojtal 93be66e91e
Merge pull request #13081 from ARMmbed/rw-post-build-hooks
Reinstate post build hooks for legacy targets
2020-06-10 12:02:05 +02:00
Rob Walton f8f59fc1ef Add a coverage_patterns kwarg to ARM_MICRO 2020-06-09 09:41:08 +01:00
Rob Walton 6ee9b161e3 Reintroduce mts_dot combine_bins. 2020-06-08 13:12:23 +01:00
Rob Walton 422931208c Reintroduce LPC4088 and Teensy3.1 post build hooks 2020-06-08 13:11:49 +01:00
Rob Walton 756fc381a9 Reintroduce NRF51 post-build hook.
The online compiler relies on this post build hook for NRF51 targets.
2020-06-08 13:08:40 +01:00
jeromecoutant dbe8e93660 STM32_gen_PeripheralPins.py script v1.12
- license header update
- TIM_MST default value
- PinNames.h is now complete
2020-06-08 11:09:52 +02:00
pea-pod 1de7008f8b Python reference equality changed to value equality 2020-06-07 15:47:43 -05:00
Wilfried Chauveau dbf206c304
add mbed-os-example-aws to the test build list 2020-06-05 15:36:20 +01:00
Anna Bridge ced3b1cf8e
Merge pull request #13003 from dgreen-arm/add-feature-experimental
Mark PSA as an experimental API
2020-06-01 16:38:30 +01:00
Darryl Green 7aadee9ab7 Add experimental feature folder
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:11 +01:00
Darryl Green cf17d7a178 Change unrecognised features to a warning, rather than error
Give a warning rather than error if an unrecognised feature is used.
This will help compatibility when new features are added.

Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:11 +01:00
Jaeden Amero 4e47c38701 tools: Fix grammar in feature error message
Use "not a supported feature" instead of "not a supported features".
2020-05-27 16:37:59 +01:00
Martin Kojtal c7759fe505
Merge pull request #13008 from Patater/armc5-usage-warning-compat
tools: Warn when ARMC5 is no longer supported
2020-05-27 10:57:36 +02:00
Jaeden Amero 5e65cf7f4d tools: Support default_lib and c_lib
For backwards compatibility reasons, since the latest Mbed OS tools must
be able to build any previous online-compiler-supported version of Mbed
OS, allow targets to use `default_lib` or `c_lib`. This should enable
the tools to work with Mbed OS 5 style targets.json.
2020-05-26 10:47:13 +01:00
Jaeden Amero a5a544408d tools: Warn when ARMC5 is no longer supported
Update the warning when ARMC5 is used to specify the conditions under
which ARMC5 is no longer supported.
2020-05-22 15:39:01 +01:00
Jaeden Amero 64f19281d3 Revert "Add the exception in Mbed OS build tool for Arm Compiler 5 toolchain."
For backwards compatibility reasons, as the Mbed tools must be able to
build any online-compiler-supported version of Mbed, revert back to
emitting a warning when ARMC5 is used. This will enable ARMC5 to
continue working in the online compiler for Mbed OS 5 and other previous
versions. ARMC5 remains unsupported in Mbed 6.

This reverts commit 03d57b7ba2.
2020-05-22 15:39:01 +01:00
Jaeden Amero 8be07a4906 tools: Fix typo in comment 2020-05-22 14:51:58 +01:00
Martin Kojtal 1088fa0627 build tools: remove version 6 2020-05-19 14:28:26 +01:00
Martin Kojtal bcfa1f97e0 tools build: add 6 to the version check 2020-05-19 13:03:53 +01:00
Martin Kojtal 12cadc2e91 tools build: remove git diff typo 2020-05-19 12:43:24 +01:00
Martin Kojtal 5a9ad74818 targets: add version 6 to the toolchain 2020-05-19 11:14:18 +01:00
Martin Kojtal b43fc0cf1a build: target toolchain return
Revert back to the toolchain function. Although it should be refactored (return just list of toolchains from a target).
2020-05-19 10:23:20 +01:00
Martin Kojtal 07084a5212 tools build: add profile
To select supported_application_profiles attribute from targets
2020-05-18 19:31:22 +01:00
Martin Kojtal 59db9f692f tools build: return empty list for mbed2
We cant afford to raise an exception now. As anyone using this out there do not catch it. Rather
an empty list, as it can work after this fix - won't do anything.
2020-05-18 08:57:07 +01:00
Martin Kojtal 810b0262c1 tools build: fix toolchain tuple, should be list 2020-05-18 08:57:07 +01:00