Commit Graph

348 Commits (1e625e2a54ba6f62f9ab50e3037354e32b51ce40)

Author SHA1 Message Date
Leszek Rusinowicz 9c93f3a850 Added required changes outside of TARGET_Cypress tree:
1. In drivers/Timer.cpp make sure that hardware timer is initialized outside of critical section.
   This is because on PSoC 6 hardware resources are shared between both cores
   and we have to make sure that the other core is not already using a particular resource.
   This mechanism is based on interprocessor communication taht cannot be handled iside of
   critical section.
2. Added support for post-binary hook function for PSoC 6 targets, so the hex image for M0+ CPU core
   can be merged with M4 core image for the final image.
3. Added possibility to use hook function from exportes, so the M0+ hex image could be included
   in the generated project.
4. Included hex images in the build dependency list, so the update of image is catched by the
   build process.
2018-11-02 19:50:02 -05:00
Jimmy Brisson 21cc67ebf0 Tools: Don't traceback on missing linker script
### Description

The `mbed compile` would traceback when no linker script is found.
This PR changes that behavior to make that into a NotSupportedException,
which has decent user behavior.

Fixes #7723

### Pull request type

    [x] Fix
    [ ] Refactor
    [ ] Target update
    [ ] Functionality change
    [ ] Breaking change
2018-11-02 19:49:52 -05:00
Cruz Monrreal II 82ac0e9731 Corrected OFFICILLY_SUPPORTED typo 2018-11-02 19:49:52 -05:00
Jimmy Brisson ca60b12584 Track supported information within toolchain clasess 2018-11-02 19:49:52 -05:00
kert d8771a57a3 Allow overriding build timestamp from env 2018-10-19 11:46:55 +01:00
Jimmy Brisson 0a362ef33c Update remaining default_lib usage in arm compiler 2018-10-19 11:46:55 +01:00
Jimmy Brisson 6d7494732b Tools: Fix Microbit releases
### Description

I noticed that there was quite a bit missing from the mbed2 release of
the microbit today. That's because the microbit uses ARM by default and
the GCC_ARM small library. The release script was trying to release for
ARM using scan rules for uARM. Turns out we're stuck with 2 configuration
parameters for the same thing: `default_lib` for GCC and `default_toolchain`
for ARM. Dang

### Pull request type

    [x] Fix
    [ ] Refactor
    [ ] Target update
    [ ] Functionality change
    [ ] Breaking change
2018-10-19 11:46:55 +01:00
Jimmy Brisson b44bf98b77 tools: Make "file" key in notifications consistant
### Description

2 calls to `notify.cc_verbose` used the a FileRef object in place of
the file's name. Other calls to `notify.cc_info` would use just the
file name. This PR changes these 2 calls to be consistant with the rest.

### Pull request type

    [x] Fix
    [ ] Refactor
    [ ] Target update
    [ ] Functionality change
    [ ] Breaking change
2018-10-19 11:46:55 +01:00
Cruz Monrreal II 8732fdb33b Modified version mismatch msg to be warning instead of error 2018-10-08 15:18:50 +01:00
Kevin Bracey 62a55a6423 Remove IAR assembler macros containing quotes
IAR assembler 7.80 has some problems handling difficult macros, leading
to immediate exit with return value -11.

In particular, a URL string has been causing problems, presumably due to
the "//" resembling a comment.

A previous escaping workaround in 0d97803 seemed to work, but the crash
has still been seen with a particular target.

Previous creation of the extended command line file for the IAR
assembler was stripping quotes from macros. This rendered the resulting
definitions for string-containing macros incorrect, which means that we
can assume no assembler code is currently relying on them.

Therefore, as a precautionary measure to avoid the crash, simply remove
all macros containing strings when creating them for IAR. This
apparently clears the crashes seen during testing of
https://github.com/ARMmbed/mbed-os/pull/8023
2018-10-08 15:18:50 +01:00
deepikabhavnani 3413b3ee8d Align to CMSIS defines for Non-secure
CMSIS updated the __DOMAIN_NS define to DOMAIN_NS. Update the define
in existing code for non-secure part.
2018-10-08 15:18:50 +01:00
TTornblom fb7c802a8c IAR: Fix for #7662, only massage the error decode URL for the IAR .xcl file. 2018-09-17 21:42:55 -05:00
Jammu Kekkonen 564483eccf Fix memory reservation for Softdevice in NRF52_DK 2018-09-11 15:04:48 +01:00
Cruz Monrreal 2e081dc7d0
Merge pull request #7644 from theotherjimmy/components
Tools: Scan for "components"
2018-08-28 17:55:01 -05:00
Cruz Monrreal 14319adf7a
Merge pull request #7792 from deepikabhavnani/fix_m33
Build tool fixes for Musca support
2018-08-28 10:09:28 -05:00
Jimmy Brisson 419761913a Add `COMPONENT_` defines 2018-08-27 11:12:02 -05:00
Jimmy Brisson 79ee1b8e02 Add "components" 2018-08-27 11:12:01 -05:00
Cruz Monrreal 2f8e679183
Merge pull request #7592 from orenc17/remove_uvisor
Remove uVisor from mbed-os
2018-08-25 19:52:24 -05:00
Deepika ed58ff0405 Disabling DSP and FPU for Cortex-M33
Change shared by @Gabor Kertesz

Hard-fault on Musca was because of enabled floating point instructions,
disabling DSP and FPU.
2018-08-23 09:06:20 -05:00
Oren Cohen 787317b7eb Remove uVisor from mbed-os 2018-08-22 16:36:59 +03:00
Jimmy Brisson 09ea2a3df9 Tools: Use Distcc when specified 2018-08-21 11:38:31 -05:00
deepikabhavnani 63664520c0 Arch and CPU options for linker and Clang are different for Cortex-M33
As per the link below, options for clang and armlink are diferrent for Cortex-M33
armlink --cpu 8-M.Main --import-cmse-lib-out importlib_v1.o
armclang -march=armv8-m.main -mcmse

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0773h/pge1452794854109.html
2018-08-16 13:35:03 -05:00
deepikabhavnani beab422045 -mcpu option not needed for v8M devices
-mcpu option if set for v8M CPU;s it will add DSP feature as default
which is optional. Hence setting just the architecture for Cortex-M23
and Cortex-M33
2018-08-15 13:52:15 -05:00
deepikabhavnani 08b4e34825 Fix build and typo issues with M33 build 2018-08-14 11:44:29 -05:00
Olli-Pekka Puolitaival 2059fed945 Fix building with python 3 2018-08-13 12:46:43 +03:00
Jimmy Brisson 7db537acf6 Fix Microlib compatibility for -t ARM
Missing from common flags:
 * `-D__MICROLIB`
 * `--library_type=microlib`

This patch adds them
2018-08-07 13:21:03 -05:00
Jimmy Brisson 28064f1319 Use hash to determine changes to command files 2018-07-30 10:41:58 -05:00
Cruz Monrreal dcd358f3e7
Merge pull request #7558 from theotherjimmy/tc-arm-v8m
Tools: Select compiler based on arch version
2018-07-26 10:27:21 -05:00
Jimmy Brisson 3f684113b0 Warn with ARMC6 and not v8m 2018-07-20 10:12:56 -05:00
Cruz Monrreal 4bcca894ae
Merge pull request #7061 from TTornblom/master
Tools: Include configuration in ASM
2018-07-20 08:02:44 -05:00
Jimmy Brisson 62538e3bce Filter archives for the arm linker
the other compilers can do it for themselves
2018-07-16 14:11:09 -05:00
Jimmy Brisson 545553b6bc Rewrite test detection to avoid relying on "inc_dirs" 2018-07-16 14:11:08 -05:00
Jimmy Brisson a4cc32067d Add get_file_paths res API and use it 2018-07-16 14:11:08 -05:00
Jimmy Brisson 28dbbd6b3b Correct path usage in linking 2018-07-16 14:11:08 -05:00
Jimmy Brisson 6a87510192 Correct several exporter uses of file_basepath with a dedupe 2018-07-16 14:11:08 -05:00
Jimmy Brisson 7a26cd8da8 Use paths in linking 2018-07-16 14:11:08 -05:00
Jimmy Brisson 0661578054 Use include paths when compiling
We were using include names before
2018-07-16 14:11:08 -05:00
Jimmy Brisson de913e1ea2 Improve resources API to include more use cases 2018-07-16 14:11:08 -05:00
Jimmy Brisson 2d8cf737e4 Move resource scanning into it's own module 2018-07-16 14:10:21 -05:00
Jimmy Brisson ef7b466958 Correct cmse lib creation for the make_gcc_arm 2018-07-12 10:49:26 -05:00
Jimmy Brisson 444d021b0e Correct string usage in version checking 2018-07-10 14:04:26 -05:00
Jens Alfke 5543849ba4 Recognize ".cc" and ".hh" source file extensions
".cc" --> C++ source code
".hh" --> header

This change allows existing source code with this naming
convention (e.g. my company's) to be used in mbed.os projects.
2018-07-06 10:10:22 -07:00
Cruz Monrreal 9c4c630356
Merge pull request #7367 from theotherjimmy/check-arm-component
Tools: Detect Arm Compiler version using Component
2018-07-03 07:35:57 -05:00
Jimmy Brisson 95c33f7807 Include symbols in dumped build profiles
This will make incremental compile more complete, taking device_has and
inheritance hierarchy into account.
2018-06-28 15:05:23 -05:00
Jimmy Brisson 37013fb489 Use Component section for ARM compiler version 2018-06-28 10:51:12 -05:00
Cruz Monrreal dec43922ee
Merge pull request #7247 from theotherjimmy/toolchain-version-check
Tools: Check compiler version
2018-06-27 18:42:49 -05:00
Jimmy Brisson c273de6545 Test and correct GCC version check 2018-06-26 09:25:33 -05:00
Jimmy Brisson c174ca3f85 Test and correct ARMCC version check 2018-06-26 09:15:01 -05:00
Jimmy Brisson f87fab5f33 Use via file for ASM macros in IAR 2018-06-26 08:44:37 -05:00
Jimmy Brisson a775e6992e Refactor via files to use a common method 2018-06-26 08:44:37 -05:00