Commit Graph

3105 Commits (7442da30f9137f5382090e0a955ac1541acce802)

Author SHA1 Message Date
Volodymyr Medvid 2524a67c38 Merge remote-tracking branch 'ARMmbed/master' into pr/psoc6-hal 2019-07-11 10:19:03 +01:00
Volodymyr Medvid 140b72d3ed Merge remote-tracking branch 'ARMmbed/master' into pr/psoc6-hal 2019-07-10 10:54:14 +01:00
Mark Edgeworth c8f33b1e45 Removing absolute paths to compiler executables
VSCode exporter was generating a launch config that contained absolute paths to the
compiler executables. It makes more sense to use the executables that are
installed into the system PATH.
2019-07-09 11:06:03 +01:00
Arto Kinnunen 1264660314
Merge pull request #10972 from 0xc0170/test_target
add new target IM880B
2019-07-08 16:34:36 +03:00
Volodymyr Medvid 5cc66282dd PSOC6: remove PSA targets 2019-07-08 14:49:26 +03:00
Arto Kinnunen 3d65ace77a
Merge pull request #10950 from artokin/Update_freescale_K6xF_linker_files
Enable split heap in K64F/K66F devices
2019-07-08 11:46:30 +03:00
itziar c327f4f070 add new target IM880B 2019-07-05 09:19:51 +01:00
d-kato 5016796ed1 Add RZ/A1 settings to arm_package_manager 2019-07-05 15:45:27 +09:00
Martin Kojtal 2dc562f696
Merge pull request #10813 from JanneKiiskila/arm-develop-size
Make ARMC5 and IAR develop profile also size optimized
2019-07-04 15:29:33 +01:00
Kevin Bracey 5ab714e604 ARM linker: add --any_contingency option
When packing data into multiple regions using the `.ANY` directive,
the linker can accidentally overfill an area.

This doesn't normally happen because it defaults to
`--any_placement=worst_fit`, which puts data in the region with
most space.

When we prioritise regions with `.ANY1`/`.ANY2`, it may totally fill
an area, then fail to leave enough space for linker-generated veneers.
We've just seen this error with the new K64F linker map.

Adding `--any-contingency` makes it lower priority when a region is
98% full, avoiding this error.

The option should not have any effect on targets with scatter files
without prioritised `.ANY` directives.
2019-07-03 15:36:49 +03:00
Martin Kojtal 1aad06b394
Merge pull request #10829 from devran01/feature_trusted-firmware-m_e7efdc6
PSA: TFM import
2019-07-01 14:35:54 +01:00
Devaraj Ranganna 98fa63aa1a Update commit sha's
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2019-06-26 17:01:07 +01:00
Alexandre Bourdiol 022abea09b Add STM32H743ZI to IAR export definition 2019-06-13 15:18:37 +02:00
Janne Kiiskila 7bfe0be43f Align also IAR - develop profile to be size optimized
IAR is also performance optimizing instead of size optimizing in
develop profile. Align also that (review feedback).
2019-06-12 13:54:34 +03:00
Janne Kiiskila 261e071013 Make ARMC5 develop profile also size optimized
Due to some historical reasons ARMC 5 compiler behaves very
differently compared to others (GCC, IAR, ARM C 6) as it optimizes
performance rather than size (like the others).

All compilers should behave the same way with the same profile,
thus ARM C 5 should also drive towards size (space).
2019-06-12 12:04:23 +03:00
Martin Kojtal 15539e0710
Merge pull request #10749 from jamesbeyond/example_test
Examples: enable more tests for examples
2019-06-09 18:18:37 +01:00
adbridge 366b18ea1f Re-enable complilation for wifi and nanostack examples 2019-06-07 10:50:24 +01:00
Devaraj Ranganna b0fe59df00 [trusted-firmware-m]: Updated to e7efdc6 2019-06-06 14:47:00 +01:00
Qinghao Shi 31fc1e56f2 Examples: enable more tests for examples 2019-06-03 18:30:42 +01:00
Kevin Bracey 18ce757c07 ARMC6: Suppress "register deprecated" warning
Lots of target code, STM in particular, uses the `register` keyword, so
it'll take a little while to clean up. In the interim, some builds are
producing a lot of warnings. Suppress the warning for now, as `register`
remains legal C++14 and C11, despite C++14 deprecating it.

C++17 removes `register`, so code will need to be cleaned before any
further C++ version update.
2019-06-03 12:19:58 +03:00
Martin Kojtal cc491812a8
Merge pull request #10427 from kjbracey-arm/new_standards
Set compilers to C++14 and C11
2019-05-28 20:34:00 +01:00
Martin Kojtal 8fc2a3c92a
Merge pull request #10675 from 0xc0170/update-mbedtls-2.18.0-rc1
Update mbedtls 2.18.0 rc1
2019-05-28 20:24:18 +01:00
Martin Kojtal eebc1b9e40 Revert "Check mbed-crypto-example with fork"
This reverts commit ff18a64e00.
Use the official repository
2019-05-27 08:02:55 +01:00
Kevin Bracey b437d700b5 ARMC6: disable "reserved user-defined literal" warning
Clang warns about reserved user-defined literals by default. This
warning is not terribly helpful; compilers aren't normally in the
habit of warning about use of reserved identifiers. It can interfere
with, for example, deliberate emulation of a future standard
language feature.

The warning was promoted to an error in an mbed client build, due to a
non-C++11 "%s"name occurring in a macro. But the macro itself was never
invoked, so the misinterpretation as C++11 caused no problems other than
this warning. Killing the warning will let that code build on ARMC6.
The code already built on GCC and IAR.

If that macro ever was used, then a separate error about operator ""
name not being defined would be generated, on all 3 toolchains.
2019-05-24 16:26:15 +03:00
Kevin Bracey 85041025cc µVision export: Add ARMC6 `-std` handling
This is limited to ARMC6 because as of µVision V5.27 you can't set C++11
for ARMC5.

Also current µVision does not support gnu++14. We should be able to get
is as `<default>`, as it is the default for ARM Compiler 6.10-6.12,
but this option does not work as documented and actually requests
gnu++89 explicitly. So gnu++14 is mapped to gnu++11.
2019-05-24 16:26:15 +03:00
Kevin Bracey 5b859c47ee Set compilers to C++14 and C11
* ARMC6 and GCC are set to C++14 and C11.
* ARMC5 is set to C++11 and C99, as it's the highest it can offer.
2019-05-24 16:26:15 +03:00
Martin Kojtal 659c099ff7
Merge pull request #10625 from jamesbeyond/example_test
TESTS: update examples.json to enable testing
2019-05-24 12:19:35 +01:00
Martin Kojtal ab82f1fca6
Merge pull request #10627 from devran01/remove_future_sequana_target
Remove targets FUTURE_SEQUANA_M0_PSA and FUTURE_SEQUANA_PSA
2019-05-24 12:16:10 +01:00
Alexander Zilberkant 67905bddae Use build directory in postbuild
Use build directory instead of temp directory for for
intermediate files during binaries merge.
2019-05-22 17:17:27 +03:00
Michael Schwarcz 96268d91ef Updates after rebase
- postbuild: Use find_secure_image and update prebuilt binaries
- Add CMSIS driver headers
- Align with 2-region memory model
2019-05-22 17:17:23 +03:00
Michael Schwarcz 36a8514dbd Add documentation on Musca-A1 signing key 2019-05-22 17:17:22 +03:00
Michael Schwarcz ff1c769c7e Add ARM_MUSCA_A1 as a new target platform
Musca-A1 is a Cortex-M33 based target with security extension enabled.

- ARM_MUSCA_A1 is the non-secure target running mbed-os.
- ARM_MUSCA_A1_S is the secure target running TF-M.
- TF-M sources were imported and patched in previous commits.
- TF-M secure bootloader (McuBoot) for MUSCA_A1 is submitted by a pre-built binary.
- A post-build hook concatenates The secure and non-secure binaries,
  signs it and then concatenates the bootloader with the signed binary.
2019-05-22 17:17:20 +03:00
Devaraj Ranganna 29dfab93bb Replace FUTURE_SEQUANA_M0_PSA and FUTURE_SEQUANA_PSA targets with
CY8CKIT_062_WIFI_BT_M0_PSA and CY8CKIT_062_WIFI_BT_PSA in config test

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2019-05-22 10:20:57 +01:00
Martin Kojtal 77ca32dd57
Merge pull request #10606 from jeromecoutant/PR_PSAscript
PSA release script update: add toolchain option
2019-05-21 15:06:10 +01:00
Devaraj Ranganna 7765d39283 The targets FUTURE_SEQUANA_M0_PSA and FUTURE_SEQUANA_PSA are removed
due to partial implementation. Having FUTURE_SEQUANA_M0 and
FUTURE_SEQUANA PSA targets is misleading.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2019-05-21 15:00:31 +01:00
Qinghao Shi 09e21a20d2 TESTS: update examples.json to enable testing 2019-05-21 14:27:10 +01:00
Martin Kojtal 7d0cc69fb1
Merge pull request #10521 from jamesbeyond/example_test
TEST: update python script to enable examples smoke test
2019-05-21 10:07:28 +01:00
Qinghao Shi 35eeef55a1 fix a bug where base_path was wrong 2019-05-19 00:32:39 +01:00
Qinghao Shi 3bb0a8aded fix a bug when STDOUT has less than 5 lines 2019-05-18 23:57:23 +01:00
jeromecoutant 79ea26614b PSA release script update: add toolchain option 2019-05-17 16:32:49 +02:00
Anna Bridge 9fb4429379
Merge pull request #10520 from kjbracey-arm/build_tz_heuristic
Permit non-TrustZone ARMv8 build
2019-05-17 11:06:55 +01:00
Qinghao Shi 48e1a56e0e add a comment based on review 2019-05-15 23:31:58 +01:00
Martin Kojtal 998d85f80b
Merge pull request #10505 from orenc17/imporve_importer
Improve importer.py
2019-05-13 14:15:21 +01:00
Martin Kojtal 571caad59e
Merge pull request #10539 from bridadan/fix_armc6_mbed_studio
Add mbed studio flag during assembly
2019-05-13 14:08:57 +01:00
Qinghao Shi 71d7970fc5 fix issues base on the review 2019-05-10 17:48:15 +01:00
Anna Bridge 97e1c9cbaf
Merge pull request #10287 from linlingao/pr10177
Enable MTS_DRAGONFLY_F411RE to register with Pelion
2019-05-10 16:21:46 +01:00
Brian Daniels fb62ed643c Add mbed studio flag during assembly 2019-05-07 11:45:30 -05:00
Kevin Bracey 65e0887ef3 Permit non-TrustZone ARMv8 build
Change the heuristic for selection of CMSE in the tools python, so that
a non-TrustZone ARMv8 build can happen.

Ideally we would have more direct flagging in the targets, but this
refines the heuristic so the necessary behaviour can be easily
achieved.

* DOMAIN_NS=1 is based purely on the `-NS` suffix on the core name.

* Enabling CMSE in the compiler and outputting a secure import library
  is now enabled when the core doesn't have an `-NS` suffix by either
  the target label `TFM` being present or the flag `trustzone` being set.

This covers the existing ARMv8-M behaviour - TF-M builds have the TFM
label, as per its documentation; M2351 secure builds have no explicit
flagging, so we ensure that the M2351_NS target has the trustzone flag
set, and the out-of-tree secure target inherits that.
2019-05-03 13:36:38 +03:00
Lin Gao 2c22f549e9 Add option to keep post_binary_hook and make it default. It can be disabled by setting it to null 2019-05-02 11:25:20 -05:00
Qinghao Shi b2611fb801 TEST: update python script to enable example smoke test
* it will check examples.json if contains 'test', 'compare_log', 'baud_rate' keys
 * it will dump test_spec.json test in examples compiled successfully
2019-05-02 15:26:15 +01:00