Commit Graph

409 Commits (ec9fd55c8f62b4ca2f91b3be39cd320c1ec90cc7)

Author SHA1 Message Date
Leszek Rusinowicz 9b1db83eaa 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-01 20:19:21 +01:00
Mo Chen 2c77c1edd6 Put quotes around include path options
This fixes a compile error when the path has space characters.
2018-10-30 17:15:54 -05:00
Cruz Monrreal 46d717cf18
Merge pull request #8250 from theotherjimmy/fix-7723
Tools: Don't traceback on missing linker script
2018-10-22 11:30:50 -05:00
Cruz Monrreal II b957f602b8 Corrected OFFICILLY_SUPPORTED typo 2018-10-18 11:13:17 -05:00
Jimmy Brisson ec72ce7787 Track supported information within toolchain clasess 2018-10-18 11:10:16 -05:00
Cruz Monrreal a5855e4da5
Merge pull request #8359 from kaidokert/master
Allow overriding build timestamp from env
2018-10-17 08:57:37 -05:00
Cruz Monrreal 43ffe3e985
Merge pull request #8305 from theotherjimmy/fix-microbit-release
Tools: Fix Microbit releases
2018-10-10 08:44:58 -05:00
kert 77f9fb9039 Allow overriding build timestamp from env 2018-10-10 01:38:22 -07:00
Jimmy Brisson a270249aa7 Update remaining default_lib usage in arm compiler 2018-10-09 10:50:02 -05:00
Cruz Monrreal b7cf1abf81
Merge pull request #8039 from c1728p9/stack_size_framework
Add framework for configuring boot stack size
2018-10-08 10:26:16 -05:00
Cruz Monrreal 342d087d47
Merge pull request #8276 from theotherjimmy/consistant-file-notify
tools: Make "file" key in notifications consistant
2018-10-08 10:22:04 -05:00
Martin Kojtal 1af1a4a443
Merge pull request #7876 from cmonr/version-warn-not-err
Tools: Modified version mismatch msg to be warning instead of error
2018-10-04 13:42:00 +02:00
Jimmy Brisson 0e458bd163 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-02 11:23:14 -05:00
Jimmy Brisson 6282b5f0c4 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-09-27 15:31:35 -05:00
Jimmy Brisson f8f5bc40f6 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-09-25 12:52:25 -05:00
Cruz Monrreal caa4279244
Merge pull request #8023 from SiliconLabs/hotfix/nanostack-default-interface
Hotfix for PR #7778 on Silicon Labs targets
2018-09-21 12:50:43 -05:00
Kevin Bracey 0e7eda0749 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-09-20 15:51:51 +03:00
Martin Kojtal 81d0948c09
Merge pull request #8025 from deepikabhavnani/flag_update
Align to CMSIS defines for Non-Secure
2018-09-19 14:18:41 +02:00
Cruz Monrreal 3da606e586
Merge pull request #8017 from TTornblom/master
IAR: Fix for #7662, only massage the error decode URL for the IAR .xcl
2018-09-17 19:46:12 -05:00
deepikabhavnani ff80e298d2 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-09-10 09:25:27 -05:00
Russ Butler 1ead033423 Add framework for configuring boot stack size
Add the target config option "boot-stack-size" which is passed to the
linker as the define "MBED_BOOT_STACK_SIZE" so the linker can
adjust the stack accordingly. On mbed 2 the boot stack becomes the
main stack after boot.  On mbed 5 the boot stack becomes the
ISR stack after boot. Because of these different uses  the stack size
for mbed 2 is set to 4K by default while on mbed 5 it is set to 1k.

Additionally, the NRF5X family requires a larger interrupt stack size
due to the softdevice so the size  is increased to 2k on mbed 5 builds.
2018-09-07 16:31:49 +01:00
TTornblom 0d97803ad8 IAR: Fix for #7662, only massage the error decode URL for the IAR .xcl
file.
2018-09-06 12:16:15 +02:00
Jammu Kekkonen 1a9999708e Fix memory reservation for Softdevice in NRF52_DK 2018-08-31 14:13:55 +03: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
Cruz Monrreal II 09239e3073 Modified version mismatch msg to be warning instead of error 2018-08-23 22:13:00 -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
Jimmy Brisson a855281633 Use preinclude of mbed_config.h in all toolchains 2018-06-26 08:44:37 -05:00
TTornblom dcd17935e3 IAR: Fixed #6670 2018-06-26 08:44:37 -05:00
Jimmy Brisson 0e56c18058 Check for no match in version check 2018-06-25 18:04:11 -05:00
Jimmy Brisson 59e8631d3a Escape '.' in regex 2018-06-25 17:58:11 -05:00
Jimmy Brisson 1a9474e4d9 Search all stdout for version regex; check > 1 matches 2018-06-25 14:41:37 -05:00
Jimmy Brisson 2aea6c39f7 Improve ARM compiler regex 2018-06-25 11:33:44 -05:00
Cruz Monrreal 95d2b3d55c
Merge pull request #7133 from OpenNuvoton/nuvoton_support_tz_partition
Override ROM/RAM start/size for TrustZone targets
2018-06-21 17:49:47 -05:00
Jimmy Brisson 52e640fc1d Add Rom config info getter and rom defines
* MBED_ROM_START = start of current rom (independent of BL modes)
 * MBED_ROM_SIZE = size of current rom (independent of BL modes)
2018-06-20 10:47:04 -05:00
Jimmy Brisson a87575fec5 Use Non-blocking Error and LooseVersion 2018-06-19 10:41:08 -05:00
Jimmy Brisson 6f54a8fdd7 Check version of Mbed CLI compile 2018-06-18 14:03:09 -05:00
Jimmy Brisson 86b7adbd30 Force small lib usage when using uARM tc 2018-06-15 10:38:23 -05:00
Jimmy Brisson 34792e60c6 Correct "defalut" typo 2018-06-13 09:51:50 -05:00
Jimmy Brisson 1d9fd830af Compute ARM_STD and ARM_MICRO labels with target attrs 2018-06-12 09:54:34 -05:00
Jimmy Brisson b922201a9c Heed default_lib in arm compiler 2018-06-12 09:29:10 -05:00
Jimmy Brisson 09cdc0631d Move from tc constructor to config vars 2018-06-08 09:59:19 -05:00
ccli8 ae16aa2fb7 Fix overridden MBED_ROM_START/MBED_ROM_SIZE/MBED_RAM_START/MBED_RAM_SIZE don't pass to linker 2018-06-08 18:03:56 +08:00
Cruz Monrreal a25b9f390f
Merge pull request #6999 from evva-sfw/feature/extend_error_warning_msg_as_link
Extend feature which displays errors/warnings as Link
2018-06-07 10:11:23 -05:00
ccli8 58f1521623 Pass fixed SRAM information (MBED_RAM_START/MBED_RAM_SIZE) to compiler/linker
This fix relies on target configuration options (mbed_ram_start/mbed_ram_size) defined.
2018-06-06 09:49:44 +08:00
ccli8 f48f30ceb2 Pass fixed flash information (MBED_ROM_START/MBED_ROM_SIZE) to compiler/linker
This fix relies on target configuration options (mbed_rom_start/mbed_rom_size) defined.
2018-06-06 09:46:59 +08:00
Cruz Monrreal 4fcaa56b77
Merge pull request #6914 from 0xc0170/fix_build_notifier
build: fix notifier typo and passing to builds API
2018-06-05 10:59:47 -05:00
Cruz Monrreal II e65537790e Modified LazyDict to inherit from object instead of dict, and removed iteration over values.
Py3 no longer supports dictionaries that self-modify their item lists during iteration.
2018-06-04 09:21:43 -05:00
PHST af1e482f52 Correct Bug 2018-05-23 16:19:14 +02:00
PHST b9217d6be0 correct imports 2018-05-23 16:13:50 +02:00
PHST 03422a9df5 Extend show error/warning as Link
PR #6270 added a parameter which allows the user to decide in case of an error or warning to print the output as a link.
This extension of this option also prints the ARM-GCC output in a link format.
2018-05-23 15:40:00 +02:00
Martin Kojtal 0bbfc6199c build: fix notifier typo and passing to builds API
Notifier should be passed to build libs functions, otherwise it's
none and fails.

Missing notify object in toolchain also fixed.
2018-05-16 13:30:06 +01:00
Bartek Szatkowski 00a321846d Rename __DOMAIN_NS to DOMAIN_NS to match CMSIS 2018-05-14 12:18:21 +01:00
Cruz Monrreal 53d3c4344f
Merge pull request #6781 from theotherjimmy/refactor-notify
tools: Refactor notification API
2018-05-07 10:48:48 -05:00
Cruz Monrreal 2ddce27a42
Merge pull request #6769 from theotherjimmy/fix-subtract-basepath
Move subtract basepath into the resources class
2018-05-07 10:33:36 -05:00
Martin Kojtal e43d21d4ef
Merge pull request #6713 from theotherjimmy/arm-no-asm-inc
Drop include paths for ARM assembler
2018-05-03 16:31:04 +01:00
Jimmy Brisson d338e672de Apply subtract basepath to features
A bug, #6755, was the result of the `subtract_basepath` function not
being applied to a resources object's children (it's features). This PR
fixes this bug by moving this functionality into the resources class.
Then, I applied the `subtract_basepath` method to the children resource
objects recursively. This has been tested on Partnerbeta and is to
upstream the fix.
2018-05-03 08:54:55 -05:00
Jimmy Brisson b6b6866d38 Extend a local version of the asm cmd list
I was extending an object-local one instead of a call-local one
2018-04-30 09:34:32 -05:00
Jimmy Brisson beb6d7802a Cleanup extraneous spaces on empty lines 2018-04-30 09:30:32 -05:00
Jimmy Brisson fcf7dbf4c6 Use notification API in BL modes 2018-04-26 09:54:01 -05:00
Jimmy Brisson 56ec4677b5 Clean up notifier API usage in compilers 2018-04-26 09:35:47 -05:00
Jimmy Brisson 3bd691a342 Move terminal notifier to it's own file 2018-04-26 09:04:26 -05:00
Jimmy Brisson 72beee7e90 Refactor notification logic into it's own class 2018-04-26 09:04:26 -05:00
Jimmy Brisson da69f0165b Correct test finding behavior
Scan resources ignores the build dir so we can't set it to something
dumb like the directory we want to scan
2018-04-24 10:07:16 -05:00
Jimmy Brisson d8becaa652 Remove ASM include paths for ARM compiler 2018-04-23 15:23:00 -05:00
Jimmy Brisson bc8b98358d Correct exporting with cortex-M23 and M33 2018-04-17 12:02:08 -05:00