Commit Graph

3141 Commits (c99b150bcf8b3184f0eef4274f2f71b07fdd8d0a)

Author SHA1 Message Date
Martin Kojtal ea582f3e11
Merge pull request #11235 from evedon/mprintf-rework
minimal-printf should not bypass the retargetting code
2019-08-29 18:49:01 +02:00
Martin Kojtal 159ee4583a
Merge pull request #11225 from kjbracey-arm/µvision528c++14
µVision export: Handle more C++ language standards
2019-08-29 16:31:45 +02:00
Evelyne Donnaes d9f32639eb Changed minimal-printf to call fputc so that it does not bypass the retargetting code
Removed minimal-printf-console-output
2019-08-29 11:30:34 +01:00
Mika Leppänen e3f247793a Added PPP directory to astyle ignore and added some spellchecker ignore words 2019-08-20 13:37:12 +03:00
Martin Kojtal b2b1ac1977
Merge pull request #11212 from chrissnow/uVison_opt_level
Change default optimisation level to O1 when exporting to uVision
2019-08-20 09:54:21 +02:00
Martin Kojtal 101ae73b87
Merge pull request #11063 from linlingao/f_cc3220sf_launchxl
Add CC3220SF_Launchxl to Mbed OS
2019-08-19 12:08:11 +02:00
Olli-Pekka Puolitaival ba26bd9cde Python3 fixes 2019-08-16 13:51:21 +03:00
Anna Bridge 3ede2a9a60
Merge pull request #11126 from teetak01/optimize-debug-profile
Optimize debug profile flags for size
2019-08-15 12:53:32 +01:00
Olli-Pekka Puolitaival aa1d16e871 Python3 fixes 2019-08-15 10:06:41 +03:00
Kevin Bracey c3a71eb23b µVision export: Handle more C++ language standards
µVision 5.28a now has options for gnu++14, c++14 and c++17, so we can
use them rather than falling back to c++14 or gnu++11.

This does mean that an export of current master, which uses gnu++14,
will now require version 5.28a. I have not tested what happens if
5.27 is given a project file with these new option numbers.

However, export of current master is broken for 5.27 anyway, as the
fallback to gnu++11 means it fails to compile the C++14 constructs
now in the codebase.

Fixes #11217, as long as users update µVision too.
2019-08-14 17:13:03 +03:00
Evelyne Donnaes 5eaa922ce1 Moved minimal-printf.json to a subdirectory 2019-08-13 12:59:45 +01:00
Evelyne Donnaes 7954ad3dd9 Revert commit 3010aaa253 (diff-1a477b054b847ec75ac3bf22194a3335) that modified template for partial profile 2019-08-13 12:57:55 +01:00
Chris Snow a430b6a469 Change default optimisation level to O1 when exporting to uVision 2019-08-13 12:50:51 +01:00
Martin Kojtal 4c1f178146
Merge pull request #11171 from OpenNuvoton/nuvoton_arm_pack
Add Nuvoton M261 sub-family into arm_pack_manager
2019-08-13 10:04:24 +02:00
Martin Kojtal fafd0a5480
Merge pull request #11051 from evedon/minimal-printf
Minimal printf addition
2019-08-09 09:52:36 +01:00
cyliangtw 9667c215d8 Add Nuvoton M261 sub-family 2019-08-06 20:13:37 +08:00
Evelyne Donnaes d6b197a98b Removed no-builtin-printf for uARM 2019-08-05 16:01:34 +01:00
Hugues Kamba 2a9207bbe4 Address comments on workaround for Mbed OS 2 CI build after Public (#11114)
* Modify compilation API to provide a list of paths to exclude from the build.
* `_exclude_files_from_build` becomes a static method
* Replace ternary expression with simple  `if/else` statement
* Make unit test case for dirs exclusion independent of system files
2019-08-02 12:32:40 +01:00
George Psimenos 3b23edb78c Fix CI for branch feature-public-headers (#11093)
* Fix rtos include path in NRFCordioHCIDriver
* Flatten USB driver directory structure
* Add missing include for us_ticker
* Add more missing includes for us_ticker
* Fix mbed_hal_fpga_ci_test_shield/uart test
* Fix bare-metal build
* Fix Watchdog UNITTEST
* Fix Mbed OS 2 build for Public/Internal headers relocating
2019-08-02 12:32:40 +01:00
George Psimenos df5baf6031 USB public APIs cleanup (#11034)
The contents of the usb directory were moved to appropriate locations and the usb directory removed.

* Public USB headers moved under drivers/
* Internal USB headers moved under drivers/internal/
* USB Source code moved under drivers/source/usb/
* Moved usb/device/hal/ under hal/usb/
* Moved usb/device/USBPhy/ under hal/usb/
* Merged usb/device/targets/ into targets/
* Separated public and private USB API documentation under Doxygen groups drivers-public-api and drivers-internal-api.
2019-08-02 12:23:47 +01:00
Hugues Kamba bfa1b4dd84 Drivers/Events/RTOS Public and internal APIs cleanup (#10955)
Separate drivers, events, and rtos internal APIs from public APIs.

* Move source files to source subdirs
* Move internal headers to internal subdirs
* Add Doxygen comments for documenting internal and public APIs
* Remove source code from header files in order to remove include pre-processor directives
that included header files not directly used by said header files
* Explicitly include header files instead of implicit inclusions via third-party header files.

Release Notes

This will break user code that was using an internal API as the internal header files have been moved.
This will only break if the user was including the header file using a namespace (i.e #include "foo/bar.h" instead of #include "bar.h"
2019-08-02 12:23:47 +01:00
Evelyne Donnaes 050a338771 Addressed review comments, in particular:
* Fixed wrapper functions for IAR
* Fixed and renamed profile to minimal-printf.json
* Moved minimal-printf under platform
* Removed minimal-printf/mbed_lib.json
* Modified exporter template to work with partial profile
* Prevented optimization of printf to avoid compiler function substitution
2019-08-01 12:42:24 +01:00
Evelyne Donnaes 65ab34695e Integrated minimal-printf in mbed-os 2019-08-01 12:41:59 +01:00
Teemu Takaluoma 5b8b2c95b1 Debug-profile: Use -Og level for GCC_ARM optimization
This brings massive ROM savings, and allows to use debug builds
also with larger applications (for. ex. Mesh stack).

Diff. for mbed-cloud-client-example with Wi-Sun stack.

Total Static RAM memory (data + bss): 85120(-216) bytes
Total Flash memory (text + data): 592668(-329296) bytes
2019-07-31 07:51:33 +03:00
Teemu Takaluoma f30703af16 Debug profile: Change IAR profile to use -Ol instead of -On
Total Static RAM memory (data + bss): 71179(+0) bytes
Total Flash memory (text + data): 665394(-44680) bytes
2019-07-30 09:45:07 +03:00
Teemu Takaluoma 985f981b83 Debug profile: Change ARM and uARM profile to size-optimized 2019-07-30 09:44:49 +03:00
Seppo Takalo 6dfbe54389
Merge pull request #11069 from qVlad/add-sectors-for-stm32F446ZE
add defines sectors for STM32F446ZE
2019-07-23 12:02:18 +03:00
Seppo Takalo 25198ba056
Merge pull request #11070 from kjbracey-arm/iar_exception_warning
IAR: Suppress "exceptions are disabled" warning
2019-07-23 11:42:15 +03:00
Seppo Takalo a0e88ad330
Merge pull request #11059 from desowin/dwarf
GCC ARM: Increase develop and release debug level
2019-07-22 15:31:24 +03:00
Kevin Bracey 0bb4c050b7 SingletonPtr: API extensions, make constexpr
* Adjust definition to make the default constructor `constexpr`.
  This permits use in classes that want lazy initialization and their
  own `constexpr` constructor, such as `mstd::mutex`.

* Add `get_no_init()` method to allow an explicit optimisation for
  paths that know they won be the first call (such as
  `mstd::mutex::unlock`).

* Add `destroy()` method to permit destruction of the contained object.
  (`SingletonPtr`'s destructor does not call its destructor - a cheat
  to omit destructors of static objects). Needed if using in a class
  that needs proper destruction.
2019-07-18 20:02:04 +03:00
Kevin Bracey 2078575bae IAR: Suppress "exceptions are disabled" warning
IAR compiler is outputting lots of warnings about exceptions being
disabled whenever it sees a "noexcept" keyword. We know, we know.
2019-07-18 19:59:41 +03:00
Vladislav Talanov f548388566 add defines sectors for STM32F446ZE 2019-07-18 18:07:12 +03:00
Tomasz Moń 4e992cd901 GCC ARM: Increase develop and release debug level
Do not specify the debug level for develop and release profiles. Instead
rely on the compiler to choose sensible default (-g2). Note that -g1 is
minimal debugging information and does not include structure definitions
which quite heavily reduces debugging experience.

For develop and release profiles this results in elf file containing
structure definitions. This does not impact debug profile as it already
did use -g3 which is the highest debug level.

Compatible debuggers (eg. gdb, SEGGER Ozone) can use the extra information
to provide better debugging experience. For example, when compiled .elf is
loaded in gdb, this change makes it trivial to access internal RTX data.

Without this change on develop profile:
  (gdb) print osRtxInfo.thread.run
  'osRtxInfo' has unknown type; cast it to its declared type

With this change on develop profile:
  (gdb) print osRtxInfo.thread.run
  $1 = {curr = 0x20014F04, next = 0x20014F04}
2019-07-18 12:03:13 +02:00
Kevin Bracey 6fc767dc71 Make tools cope with no-extension headers
Treat files with no extension as headers, if they are in the cxxsupport
folder.
2019-07-18 11:50:13 +03:00
Kevin Bracey e5a3f976c2 Add TOOLCHAIN_ARMC5 label
We have some files that are needed for ARMC5 only.
2019-07-18 11:50:13 +03:00
Lin Gao 387bb666f4 Added CC3220 related changes to tools 2019-07-17 14:18:19 -05:00
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