Commit Graph

3562 Commits (75544a7ce0e3d89abc27b12b23f8045d73695e45)

Author SHA1 Message Date
jeromecoutant 126a9c9693 STM32F1 code cleaning 2020-05-14 13:55:21 +02:00
jeromecoutant a63fd00a9a STM32F0 code cleaning 2020-05-14 13:55:21 +02:00
Marcelo Salazar ccd95f1e14 Remove nRF51 targets
The following public nRF51 targets are being removed:

- NRF51822
- NRF51_DK
- NRF51_MICROBIT
2020-05-13 10:36:50 +01:00
Martin Kojtal e7e3cc0301 tools: update importer sha 2020-05-12 12:11:24 +01:00
Martin Kojtal 864a943070 importer: add CMSIS 5 repo link 2020-05-11 14:14:07 +01:00
Martin Kojtal 78b7a05426 importer: add a note about cherry pick continue for conflicts 2020-05-11 11:38:16 +01:00
Martin Kojtal 8859cb0dca importer: update readme 2020-05-11 11:37:21 +01:00
Martin Kojtal 9977458393 cmsis importer: add sha for rtx changes after file moved
cherry pick otherwise fails because the sources were moved under rtos/source. I manually resolved these patches. For the future, lets use these newer sha that should work.
2020-05-11 10:43:45 +01:00
Martin Kojtal 74a640f028 importer: remove rtos changed files
As they were applied on the different code base (moved files), we remove them and
reapply locally manually and add new sha.
2020-05-11 09:47:33 +01:00
Martin Kojtal 7b066eb1ba importer: fix rtos paths 2020-05-11 09:47:33 +01:00
Martin Kojtal 6d17a23421 importer: fix byte like objects 2020-05-11 09:47:33 +01:00
Marcelo Salazar 4083469d09 Remove Ublox targets 2020-05-06 16:39:29 +01:00
Marcelo Salazar 570df49abd Rename ADV_WISE_1510 target 2020-05-06 16:03:07 +01:00
Martin Kojtal 9501ccd6c7
Merge pull request #12849 from jamesbeyond/exp_update
TEST: Update example test
2020-05-05 14:26:41 +02:00
Martin Kojtal dbf05ceaed
Merge pull request #12735 from Patater/musca-tfm
Make MUSCA B1 and MUSCA A1 TF-M ready
2020-05-04 11:06:48 +02:00
George Beckstein 2db9917117 Add Vin and Vref to ignore list in spell checker CI 2020-04-30 12:40:17 -04:00
Martin Kojtal 08a09200a6
Merge pull request #12864 from MarceloSalazar/platform_cleanup3
Remove unsupported targets
2020-04-30 14:56:36 +02:00
Jaeden Amero 6f6a92c1eb musca_b1: Add TF-M compatibility
Make the MUSCA_B1 target TF-M compatible by doing the following:
    - Add flash, region definitions, and preprocessed image macros from
      TF-M (at version 6e7be077eabe "Core: Add lifecycle API")
    - Update the MUSCA_B1 linker script to create a flash image
      compatible with TF-M.
    - Update the tfm/bin_utils/assemble.py signing script to work with
      preprocessed image macros rather than flat C pre-processor defines

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-30 11:36:09 +01:00
Devaraj Ranganna 0ad1a988ec musca_a1: Add TF-M compatibility
Make the MUSCA_A1 target TF-M compatible by doing the following:
    - Add flash, region definitions, and preprocessed image macros from
      TF-M (at version 6e7be077eabe "Core: Add lifecycle API")
    - Update the MUSCA_A1 linker script to create a flash image
      compatible with TF-M.
    - Update the tfm/bin_utils/assemble.py signing script to work with
      preprocessed image macros rather than flat C pre-processor defines

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-30 11:35:05 +01:00
Martin Kojtal d1ae0d570c
Merge pull request #12425 from kjbracey-arm/chrono
C++ Chrono support
2020-04-30 11:41:43 +02:00
Marcelo Salazar 84bad91489 Remove NRF51_DONGLE target 2020-04-30 09:56:37 +01:00
Marcelo Salazar 6899f6903c Remove TY51822R3 target 2020-04-30 09:56:37 +01:00
Marcelo Salazar 7c8b16f3c9 Remove HRM1017 target 2020-04-30 09:56:36 +01:00
Marcelo Salazar 0864aa86be Remove NCS36510 target 2020-04-30 09:56:36 +01:00
Marcelo Salazar 7925a468a9 Remove KL05Z target 2020-04-30 09:56:36 +01:00
Marcelo Salazar a3dc513d35 Remove MTS_MDOT_F405RG target 2020-04-30 09:56:36 +01:00
Marcelo Salazar f556199094 Remove LPC11U37H_401 target 2020-04-30 09:56:36 +01:00
Marcelo Salazar cbe6cc79cb Remove NRF51822_Y5_MBUG 2020-04-30 09:56:36 +01:00
Marcelo Salazar e2136cc395 Remove MAXWSNENV target 2020-04-30 09:56:36 +01:00
Marcelo Salazar a770e65a05 Remove WALLBOT_BLE target 2020-04-30 09:56:36 +01:00
MarceloSalazar f21759bc35 Remove TEENSY3_1 target 2020-04-30 09:56:35 +01:00
MarceloSalazar 1553868748 Remove TB_SENSE_1 target 2020-04-30 09:56:35 +01:00
MarceloSalazar e24a9f5d95 Remove KW24D target 2020-04-30 09:56:34 +01:00
MarceloSalazar 3fa7f03508 Remove RAPIDIOT targets 2020-04-30 09:56:33 +01:00
MarceloSalazar 5d63b0f5a0 Remove K20D50M target 2020-04-30 09:56:33 +01:00
MarceloSalazar d2741c1075 Remove LPC8x targets 2020-04-30 09:56:33 +01:00
MarceloSalazar 3ed5491ae5 Remove LPC1549 target 2020-04-30 09:56:33 +01:00
MarceloSalazar d96a19ea1d Remove LPC4330 target 2020-04-30 09:56:32 +01:00
MarceloSalazar 51c2484c06 Remove LPC1769 target 2020-04-30 09:56:32 +01:00
MarceloSalazar 20997ca6cb Remove RBLAB targets 2020-04-30 09:56:32 +01:00
MarceloSalazar 5dcfe57c41 Remove LPC4088 based targets 2020-04-30 09:56:32 +01:00
MarceloSalazar 12bb9d34bb Remove DELTA_DFCM_NNN40 target 2020-04-30 09:56:32 +01:00
Devaraj Ranganna b79b33219b psa: Remove exporters for TF-M targets
Targets that use TF-M for their PSA implementation are not compatible
with exporters at this time. Explicitly block use of exporters with TF-M
using targets, for better error messages.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-04-27 09:51:14 +01:00
Devaraj Ranganna fd74d678a7 psa: Remove PSA secure binary building tools
The PSA-implementing secure binary is not built using Mbed OS build
tools anymore. Instead, the TrustedFirmware-M (TF-M) build system is
used to produce the secure binary. As such, we remove PSA related hooks
from the build system, remove PSA related scripts from tools/test
folder, and also remove the psa-autogen job from travis which was
running the now unecessary and removed generate_partition_code.py.

Remove the ability to generate new PSA binaries in the old manner, where
Mbed OS implements PSA. We don't yet remove any PSA binaries or break
the currently checked-in Mbed-implemented PSA support. PSA targets
integrated in the old manner will continue working at this point.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-27 09:51:14 +01:00
Jaeden Amero 6b3a9cb4fa psa: Remove v8-M S targets
Remove PSA v8-M S target binaries will be built outside of Mbed OS and
added in as binaries which NS targets consume. Mbed OS no longer
implements PSA for v8-M targets, so there is no reason for it to build
PSA S targets.

Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-27 09:51:09 +01:00
Jaeden Amero af1ea31546 psa: Add copyright and #! to tfm tool
Add a copyright header and a shebang to the Mbed OS TrustedFirmware-M
tooling.

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-27 09:43:01 +01:00
Kevin Bracey f4e0ea2c75 Add Chrono support to Kernel and SysTimer 2020-04-27 10:19:08 +03:00
Qinghao Shi ce88f0ea28 TEST: add log compare test for nfc examples 2020-04-23 20:33:02 +01:00
Martin Kojtal ecf4008046
Merge pull request #12825 from kjbracey-arm/linkinline
Turn on ARM linker --inline
2020-04-23 08:24:37 +02:00
Qinghao Shi a43394d0d6 TEST: change target that runs filesystem example 2020-04-22 17:41:32 +01:00
Qinghao Shi 1711d2f9a0 TEST: enable wifi example test 2020-04-22 17:38:23 +01:00
Martin Kojtal df6f650ab1 Revert "Remove MTB_STM_S2LP target"
This reverts commit 10ca248a7a.
2020-04-22 13:46:53 +01:00
Martin Kojtal b622a25688
Merge pull request #12810 from MarceloSalazar/platform_cleanup
Remove unsupported targets

Note, commit 21e364e is just a styling fix, no target removal.
2020-04-22 10:58:50 +02:00
Veijo Pesonen 812b5606b9 Drops bootloaders not supported in Mbed OS 6
Target support for these targets has been removed
2020-04-21 17:28:58 +03:00
Marcelo Salazar beee062d1f Remove MTB_MTS_DRAGONFLY target 2020-04-20 16:55:35 +01:00
Marcelo Salazar 10ca248a7a Remove MTB_STM_S2LP target 2020-04-20 16:55:35 +01:00
Marcelo Salazar ee8231ab9d Remove USI_WM_BN_BM_22 based targets 2020-04-20 16:55:35 +01:00
MarceloSalazar 93db82f591 Remove NZ32_SC151 target 2020-04-20 16:55:34 +01:00
MarceloSalazar d3223c9502 Remove LPC11u targets 2020-04-20 16:55:34 +01:00
MarceloSalazar bf590310db Remove MTB_RAK811 target 2020-04-20 16:55:34 +01:00
MarceloSalazar e78ba7065b Remove MTB_MTS_XDOT target 2020-04-20 16:55:33 +01:00
MarceloSalazar 4b1ad8ad4c Remove MTB_STM_L475 target 2020-04-20 16:55:33 +01:00
MarceloSalazar 91607fe9cd Remove MTB_MURATA_ABZ target 2020-04-20 16:55:33 +01:00
Kevin Bracey 4caab1cce5 Turn on ARM linker --inline
For release and develop profiles, turn on the linker's `--inline`
optimisation. This can save a couple of hundred bytes in a typical
image.

The optimisation replaces branches to small functions with the
inlined code from those functions. And it's possible that the
out-of-line functions can be eliminated.

Setting confined to release and develop builds only, as it can lead to
invalid debug information.
2020-04-17 13:28:22 +03:00
Jaeden Amero 47b359974f psoc6: Remove FUTURE_SEQUANA and FUTURE_SEQUANA_M0
FUTURE_SEQUANA targets are no longer supported. Remove the target from
Mbed.

Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-04-16 14:10:51 +01:00
Martin Kojtal fcc20b1201
Merge pull request #12765 from MultiTechSystems/update-mdot-target
Update MTS_MDOT_F411RE target and remove bootloader from tools
2020-04-16 11:53:26 +02:00
Martin Kojtal a252b073cf
Merge pull request #12797 from AGlass0fMilk/stm-custom-board
Add custom board option to STM32 pins generation script
2020-04-15 17:01:33 +02:00
Martin Kojtal 35c93011ea
Merge pull request #12748 from hugueskamba/hk_fix_c_lib_build_failure
Fix build failure due to C lib selected
2020-04-15 10:26:09 +02:00
Martin Kojtal f9052e38cc
Merge pull request #12734 from jeromecoutant/PR_WB_IAR
NUCLEO_WB55RG : enable IAR export
2020-04-15 10:22:49 +02:00
Martin Kojtal 9835722635
Merge pull request #12691 from hugueskamba/hk_replace_small_lib_with_std_lib
Replace small with std C lib if not supported by a target's toolchain
2020-04-15 10:21:40 +02:00
George Beckstein 958edf9923 Fix missing reference to TargetName variable 2020-04-13 11:31:24 -04:00
George Beckstein 81c3aef9fa Fixed reference to global variable instead of input argument in parse_BoardFile 2020-04-13 11:25:44 -04:00
George Beckstein bcd8ebb645 Added custom board option to STM Pins generation script 2020-04-13 11:25:19 -04:00
MarceloSalazar a15f6a43ad General clean-up of unsupported targets 2020-04-09 15:36:21 +01:00
MarceloSalazar e43ece13aa Rename EMW3166 target 2020-04-09 15:32:41 +01:00
Taylor Heck 300820f562 Fix syntax error in uvision export tool introduced in previous commit. 2020-04-07 09:00:09 -05:00
Taylor Heck 6d382ea969 Delete now unused MTSCode.combine_bins_mts_dot function for tools. 2020-04-07 09:00:09 -05:00
Taylor Heck 8ba0a74dae Remove MTS_MDOT_F411RE bootloader binary from tools 2020-04-07 09:00:09 -05:00
Hugues Kamba 467305f374 Fix build failure due to C lib selected
Allow target.c_lib to be set to small when Mbed 5 is supported.
2020-04-02 14:02:40 +01:00
Martin Kojtal 62cac3b640
Merge pull request #12712 from jamesbeyond/lto-printf
Fix LTO issue with minimal-printf
2020-04-01 12:22:52 +02:00
jeromecoutant eccb47b7fb NUCLEO_WB55RG : enable IAR export 2020-03-31 17:53:06 +02:00
Hugues Kamba 0e5b71fdd7 Replace small with std C lib if not supported by a target's toolchain
Display a post-build warning indicating to the user that the standard C
library was used instead of the small C library if the former is not
supported.
2020-03-31 11:35:40 +01:00
Martin Kojtal d0917b0ec7
Merge pull request #12630 from jeromecoutant/PR_TEST_DUALCORE
mbed test with dual core targets
2020-03-31 09:29:37 +02:00
Qinghao Shi 5822903992 update lto profile including printf wrap functions 2020-03-29 20:55:08 +01:00
Anna Bridge 83926138aa
Merge pull request #11726 from kjbracey-arm/armc6_no_static_destructors
Disable C++ static destructors in ARMC6 compiler
2020-03-27 14:14:00 +00:00
Anna Bridge 1bbcaec04a
Merge pull request #12683 from kivaisan/socketaddress_refactor
SocketAddress rework
2020-03-27 11:30:12 +00:00
Martin Kojtal 2d10d670d0
Merge pull request #12640 from evedon/ed-mprintf-profile
Remove minimal-printf extension profile
2020-03-26 14:50:13 +01:00
Martin Kojtal b5f00bc67a
Merge pull request #12679 from vmedcy/psoc6-export
PSoC6: enable export to uVision and IAR
2020-03-26 09:09:35 +01:00
Kevin Bracey 1ecd9604f6 Disable C++ static denstructors in ARMC6 compiler
We disable C++ static destructors as best as possible in the various
toolchains, trying to eliminate unwanted destructor code. We don't want
to waste RAM or ROM on the C++-standard-specified behaviour of running
all statically-constructed objects' destructors in reverse order on
exit; we're never going to perform an orderly exit.

Techniques used include:

* `SingletonPtr` - makes an object be "lazily constructed" on first use,
  and also eliminates its destructor. Lazy construction adds ROM+RAM
  overhead.
* `__eabi_atexit` is stubbed out, preventing RAM usage by run-time
  registration of static destructors.
* GCC has `exit` wrapped to kill shutdown code
* IAR has static destructors disabled in the compiler flags

Killing static destructors in the compiler is the optimum; if we only
stub out `__eabi_atexit`, the compiler is still inserting calls to it,
and referencing the destructors in those call.

Clang 8 added the compiler option `-fno-c++-static-destructors` (and the
object attributes `[[clang::no_destroy]]` and
`[[clang::always_destroy]]` for fine control).

We can hence enable that option in ARMC6 tool profiles, matching IAR.

This option appears to exist in ARM Compiler 6.11, but generates an
apparently spurious linker error about `EthernetInterface`. It works in
ARM Compiler 6.13, so this PR needs to wait until the compiler is
updated.
2020-03-24 15:30:39 +00:00
Kevin Bracey 4eda58893e SocketAddress rework
* Add optimised constexpr default constructor. Default construction
  was previously by a heavyweight defaulted `nsapi_addr_t` parameter.
* Remove deprecated resolving constructor.
* Take `nsapi_addr_t` inputs by constant reference rather than value.
* Inline the trivial getters and setters.
* Use `unique_ptr` to manage the text buffer.
* Make `operator bool` explicit.
* Optimise some methods.
* Update to C++11 style (default initialisers, nullptr etc)
2020-03-24 11:05:33 +02:00
jeromecoutant 6c57c9fd67 mbed test with dual core targets
For Dual Core targets, there are in fact 2 sub-targets, CM4 and CM7 targets.
This allows to execute tests with boards detected by mbedls.
2020-03-24 09:53:36 +01:00
Volodymyr Medvid 0ac62d0317 PSoC6: enable export to uVision and IAR 2020-03-23 20:08:30 +01:00
Rajkumar Kanagaraj 7761d45643 Remove deprecated ARMC5 from `mbed compile -S` command output 2020-03-23 07:28:32 -07:00
Volodymyr Medvid 26043e5ee4
makefile export: create .link_options.txt with echo
$(file > $@.in, $(filter %.o, $^)) is not supported in GNU Make 3.81.
Create the linker response file with pipe redirect from echo command.
This is tested with Cygwin make and make 3.8.1 shipped with macOS.

(cherry picked from commit 6918e6a76b)

Revert "Fixed problem with overlong command line."

This reverts commit dd02ac09a1.

See also https://github.com/ARMmbed/mbed-os/pull/12646#issuecomment-602058273
2020-03-21 20:24:28 +01:00
Anna Bridge 59540ed8c1
Merge pull request #12646 from dhebbeker/fix/fix-makefile-for-windows
Makefile: fix for overlong command line
2020-03-20 16:31:02 +00:00
David Hebbeker dd02ac09a1
Fixed problem with overlong command line.
The list of object files was so long, that it got truncated by the bash (git-bash).

Error was

    /usr/bin/sh: -c: line 0: unexpected EOF while looking for matching `"'
    /usr/bin/sh: -c: line 1: syntax error: unexpected end of file
    mingw32-make[1]: *** [Makefile:679: mbed-os-example-blinky-baremetal.elf] Error 1
    mingw32-make: *** [Makefile:26: all] Error 2

Such a problem has aleady been reported in: https://github.com/ARMmbed/mbed-os/issues/10943#issuecomment-510064805
I fixed this problem using this answer: https://stackoverflow.com/a/37506805/5534993
2020-03-18 14:40:12 +01:00
Evelyne Donnaes 1bbe3a725f Removed minimal-printf profile 2020-03-17 13:57:48 +00:00
Martin Kojtal 3710584bff
Merge pull request #12540 from JojoS62/fix-lto-unknown-messages
fix for suppress 'unknown object name' messages from memap.py
2020-03-09 08:28:44 +00:00
Martin Kojtal 37aafc9da8
Merge pull request #12476 from OpenNuvoton/nuvoton_build_no_cmsis
Fix build failure when target's cmsis doesn't exist
2020-03-03 14:19:36 +00:00
Martin Kojtal d6df32d609
Merge pull request #12526 from fkjagodzinski/fix-gcc_lto_toolchain_py3
GCC: Fix the toolchain LTO workaround for Python 3
2020-03-02 09:32:42 +00:00
JojoS62 a33d622f4f suppress 'unknown object name' messages
by using the -lto option on gcc and windows,
 many messages like above are produced.
removed by ignoring .ltrans.o files
2020-02-29 15:10:37 +01:00
Martin Kojtal fc5f3259de
Merge pull request #12458 from GaborAbonyi/add_musca_b1_platform
Add Musca B1 target
2020-02-27 13:53:58 +00:00
Filip Jagodzinski 4bd29791ee GCC: Fix the GCC_ARM_LTO_WORKAROUND for Python 3
In the Python3 version of re module, the Unicode strings (str) and 8-bit
strings (bytes) cannot be mixed.
2020-02-27 12:58:36 +01:00
Martin Kojtal 732692cd77
Merge pull request #12475 from VeijoPesonen/purge_rspif
Proposal to remove SPIFReducedBlockDevice
2020-02-25 15:23:23 +00:00
Martin Kojtal bb48fa46cd
Merge pull request #12437 from 0xc0170/dev_travis_scancode
travis: add PR license check for missing/not-valid license files
2020-02-24 15:56:07 +00:00
Veijo Pesonen b575df072f Removes RSPIF block device driver
The driver is not needed by the bootloader anymore.
2020-02-24 16:01:14 +02:00
Martin Kojtal 1b4ad98787 scancode: add logger and parse it to get count 2020-02-24 12:03:01 +00:00
Martin Kojtal adaa2b6a0a travis: license check does not fail but report issues
Master branch contains lot of missing SPDX identifiers, we will clean them up but this will take some time. In the meantime, we should not increase the license missing files. Each PR will report if there is no license issue or positive number reported as Github status. Travis won't fail if there are issues. This will highlight the issues that anyone can fix.

As soon as master is clean, we can fix set_status and revert part of this commit.
2020-02-24 12:02:37 +00:00
Anna Bridge 8c17270306
Merge pull request #12480 from 0xc0170/fix_spdx
Fix SPDX identifiers and licenses (excluding features and targets)
2020-02-21 16:34:30 +00:00
Tamas Kaman 551c3c553c Add ARM_MUSCA_B1 as a new target platform
Musca-B1 is a Cortex-M33 based target with security extension enabled.

- ARM_MUSCA_B1 is the non-secure target running mbed-os.
- ARM_MUSCA_B1_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_B1 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.

Change-Id: I4b36290941b5f0bb7aa7c12dda2f38b5c1e39ae2
Signed-off-by: Tamas Kaman <tamas.kaman@arm.com>
Signed-off-by: Gabor Abonyi <gabor.abonyi@arm.com>
2020-02-21 14:34:39 +01:00
Martin Kojtal 37a7ff0443 scancode: skip non code files
For instance pdf, or binaries - catch them as an exception and skip for
additional SPDX check
2020-02-21 09:57:30 +00:00
Martin Kojtal 5f1c77741a tools: fix SPDX identifiers 2020-02-21 07:01:48 +00:00
Martin Kojtal 0995ece3b2 Add scancode evaluate script
The goal: check license offenders in pull request

This is similar to what astyle does in Travis. We get list of files being changed. Because scancode does not support list of files being scanned but rather a file or directory, we copy files to SCANCODE folder. Execute scancode license check in this folder and check for offenders.

The rules there are: code files must have a license and SDPX identifier. If they don't, we print these and ask for review.

It functions nicely there is just one workaround needed. SPDX is not always 100 percent correctly found, therefore we recheck file if no SPDX manually in the script. This proves to remove false positives.
2020-02-20 09:49:50 +00:00
Chun-Chieh Li 8e8b546cbf Fix build failure when target's cmsis doesn't exist
For bootloader enabled target, it needs to have cmsis pack or provide memory override. This change fixes build failure in case of no cmsis pack but providing memory override with start being zero.
2020-02-20 17:39:20 +08:00
Martin Kojtal 829a3cded3
Merge pull request #12318 from VeijoPesonen/sfdp_split_smptbl
SFDP: Move Sector Map Parameter Table parsing under SFDP module
2020-02-19 15:49:40 +00:00
Martin Kojtal 589a9a4d16
Merge pull request #12462 from maciejbocianski/fix_armc_memory_stats
Fix static ram memory statistics for arm compiler
2020-02-19 13:01:26 +00:00
Maciej Bocianski c69e77cf54 fix arm compiler static ram memory statistics
don't count ARM_LIB_HEAP in static RAM pool
2020-02-19 08:18:34 +01:00
Filip Jagodzinski 56255adb9f Tools: Add a workaround for the GCC_ARM & LTO bug
This is a workaround for the GCC not using the strong symbols from
C files to override the weak symbols from ASM files. This GCC bug is only
present when building with the link-time optimizer (LTO) enabled. For
more details please see:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83967

This can be fixed by changing the order of object files in the linker
command; objects providing the weak symbols and compiled from assembly
must be listed before the objects providing the strong symbols.
To keep things simple, ALL object files from ASM are listed before
other object files.
2020-02-13 17:47:40 +01:00
Filip Jagodzinski b03f974d03 GCC: Move link-time optimizer flags to extensions dir
Disable the lto for the default develop and release prifiles and move
the flags to tools/profiles/extensions/lto.json profile.

Usage:
mbed compile --profile release --profile tools/profiles/extensions/lto.json
2020-02-13 16:39:20 +01:00
Filip Jagodzinski 3e3bee4a21 GCC: Add the -u flag to keep the main() symbol
This fixes the undefined reference to 'main' that arose after adding
the "-flto" flag to compilation.

This was the case for combined "-Wl,--wrap,main" and "-flto" flags.
2020-02-13 16:39:20 +01:00
Filip Jagodzinski 516153e033 GCC: Enable link-time optimizer for develop profile 2020-02-13 16:39:20 +01:00
Filip Jagodzinski a5240da3b4 GCC: Use 'common' flags at link time
According to GCC man:
To use the link-time optimizer, -flto and optimization options should be
specified at compile time and during the final link. It is recommended
that you compile all the files participating in the same link with the
same options and also specify those options at link time.

Additionally, move the '-g3' flag out of 'common' flags in the debug
profile. Although the '-g' is correctly ignored by the linker, the
'-glevel' is not and causes a build error "ld: unrecognized option
'-g3'".
2020-02-13 16:39:20 +01:00
Filip Jagodzinski f87a8e0f52 GCC: Enable link-time optimizer for release profile 2020-02-13 16:39:19 +01:00
Mark Edgeworth 2ad6f45d83 Fix #12290: crash_log_parser on py3 2020-02-12 14:56:35 +00:00
Rajkumar Kanagaraj 03d57b7ba2 Add the exception in Mbed OS build tool for Arm Compiler 5 toolchain. 2020-02-10 04:06:07 -08:00
Veijo Pesonen 3ee153a303 test config: SPIF - overwrite QSPIF with all devices 2020-02-07 09:52:12 +02:00
Martin Kojtal 32675cc6ac
Merge pull request #11874 from fkjagodzinski/armc6_build-enable_lto_for_release
ARMC6: Add a build profile extension with the link-time optimizer enabled
2020-02-05 14:42:16 +00:00
Martin Kojtal e3ad1cae55
Merge pull request #12334 from AriParkkila/cell-c030-r412m
Update cellular drivers/tests for UBLOX_C030_R412M
2020-02-05 12:50:11 +00:00
Maciej Bocianski 083e3e569d armc6: make lto an optional profile 2020-02-04 12:38:39 +01:00
Filip Jagodzinski 8fcb00cccd ARMC6: Enable link-time optimizer for develop profile 2020-02-04 12:29:50 +01:00
Filip Jagodzinski 0780f89011 ARMC6: Enable link-time optimizer for release profile 2020-02-04 12:29:50 +01:00
Martin Kojtal 250e58134f
Merge pull request #12286 from pea-pod/target-nucleo_l452re-p
Add new target: NUCLEO_L452RE-P
2020-02-03 16:34:36 +00:00
Kevin Bracey c4a0808fe6
Merge pull request #12335 from rajkan01/cpu_usage_remove_ci
Remove CPU usage example from CI build
2020-01-31 15:02:09 +02:00
Kevin Bracey 858d02d68c
Merge pull request #12302 from michalpasztamobica/remove_libcpp_extern_template
Remove _LIBCPP_EXTERN_TEMPLATE ARMCC compilation flag
2020-01-30 15:40:40 +02:00
Ari Parkkila 4da93bf979 Add UBLOX_C030_R412M in CellularInterface.json 2020-01-30 04:30:54 -08:00
Rajkumar Kanagaraj 56819fbc53 Remove CPU usage example from CI build 2020-01-30 03:59:36 -08:00
pea-pod f7c4693747 Add new target: NUCLEO_L452RE-P 2020-01-27 18:41:18 -06:00
Anna Bridge f45a5a78b5
Merge pull request #12231 from devran01/upd_musca_a
Import latest python scripts and MCUBoot image
2020-01-25 11:53:34 +00:00
Anna Bridge 7101e92d12
Merge pull request #12303 from rajkan01/fix_micro_lib_warning
Fix ARM compiler warning for microlib
2020-01-24 14:58:18 +00:00
Anna Bridge 8b25c51746
Merge pull request #12226 from JanneKiiskila/target_test_sector_missing
target_test - assert if sectors keyword missing
2020-01-24 11:23:51 +00:00
Anna Bridge 34a291be64
Merge pull request #12228 from jeromecoutant/PR_REGIONSIZE
Need RAM and ROM size for compilation
2020-01-23 11:47:58 +00:00
Anna Bridge cfa2dee248
Merge pull request #12023 from kjbracey-arm/gccnull
GCC: remove -fno-delete-null-pointer-checks
2020-01-23 11:47:13 +00:00
Rajkumar Kanagaraj fe470d9ff9 Fix build tool test case failure 2020-01-22 09:45:01 -08:00
Rajkumar Kanagaraj 6d3782accb Fix ARM compiler warning for microlib
- Remove the --library_type=micorlib from c/cxx configuration.
2020-01-22 07:17:08 -08:00
Michal Paszta 2bc3008534 Remove _LIBCPP_EXTERN_TEMPLATE flag 2020-01-22 17:04:19 +02:00
PARKJIHOON 8ab00df7b4 Adding Samsung Exynos i S111 target code.
Adding a new target of HW development kit using [Samsung Exynos i S111](https://www.samsung.com/semiconductor/minisite/exynos/products/iot/exynos-i-s111/) module to Mbed-OS.
This will widen the HW choices of Mbed-OS enabled NB-IoT, GNSS and Security (eFuse, AES, SHA-2, PKA, Secure Storage, Security Sub-System, [PUF](https://en.wikipedia.org/wiki/Physical_unclonable_function)) modules.
Target Name: S5JS100

Co-authored-by: Ivan Galkin <ivan.galkin@samsung.com>
Co-authored-by: Seokwon Lee <swon.lee@samsung.com>
Co-authored-by: Zhizhe Zhu <zhizhe.zhu@samsung.com>
Co-authored-by: Xinyi Zhao <xinyi.zhao@samsung.com>
2020-01-22 14:40:50 +09:00
Anna Bridge ee1d998d43
Merge pull request #12278 from rajkan01/feature_rename_default_lib
Rename "default_lib" to "c_lib".
2020-01-21 16:39:11 +00:00
Anna Bridge 2757e9af5a
Merge pull request #12275 from micque01/tools-fix-call-to-sorted
Fix call to sorted by providing key to sort on.
2020-01-21 11:49:27 +00:00
Anna Bridge 48f90c06df
Merge pull request #11904 from jamesbeyond/HW_gcov
TOOLS: enable build greentea test coverage for HW
2020-01-21 11:46:51 +00:00
Devaraj Ranganna bc7331b96e Import latest python scripts and MCUBoot image
To help with the integration of Musca B1 into Mbed OS, python
signing scripts and MCUBoot image and RSA private key for Musca A
has been updated from latest TF-M
(https://git.trustedfirmware.org/trusted-firmware-m.git/commit/?id=6c5be4a98e4d7055ee49076ca4e515fb4b172e66).

Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
2020-01-21 10:25:56 +00:00