Commit Graph

6825 Commits (f10cf7fe16fe4772fa90c0fcba42cacc0608167e)

Author SHA1 Message Date
Vincent Coubard f10cf7fe16 Merge remote-tracking branch 'mbed-nordic/epr_integration' into nrf52_nrf51_unified_integration 2016-07-21 14:50:37 +01:00
Vincent Coubard 6399ad17d6 Merge pull request #26 from pan-/nrf51_compatibility
Makes room for old NRF51 implementation.
2016-07-21 14:24:25 +01:00
Martin Kojtal db60d6a7f7 Merge pull request #2200 from pan-/ble_integration_from_mbed_os
Move ARMmbed/feature/FEATURE_BLE into mbedmicro/mbed.
2016-07-21 14:00:00 +01:00
Vincent Coubard 478a7fd4cd Remove files from unused targets. 2016-07-21 13:39:53 +01:00
Martin Kojtal dd010097ba Merge pull request #2159 from jeromecoutant/PR_dev_NUCLEO_F207ZG
New STM32 board : NUCLEO_F207ZG
2016-07-21 11:13:33 +01:00
Martin Kojtal 89d5583bde Merge pull request #2190 from geky/callback-const
[api] Fix handling of const objects in Callback class
2016-07-21 11:07:03 +01:00
Martin Kojtal c9d8690fa9 Merge pull request #2194 from zgoda/BLUEPILL_fix_int_handler
[BLUEPILL_F103C8] Fix interrupt handler
2016-07-21 10:56:21 +01:00
Christopher Haster 8e60fdd919 Added tests for cv-qualifier c-objects in Callback class 2016-07-20 19:27:38 -05:00
Christopher Haster e806b89df6 Fixed handling of const objects in Callback class
Before, the following results in a compilation error:

    const struct Object *obj;
    void obj_doit(const Object *obj);

    Callback<void()> cb(obj, obj_doit);

This is especially noticable when migrating from the old Thread
constructor, which previously _required_ const.

Short term fix for all cv qualifiers through a C cast:
void *_obj = (void*)obj;
2016-07-20 19:20:32 -05:00
Vincent Coubard a81b8b13dd Set correct compiler support for NRF51 and NRF52 based targets. 2016-07-21 00:10:52 +01:00
Vincent Coubard 406ac8f5f4 Makes room for old NRF51 implementation.
the unified target for NRF51 has been renamed MCU_NRF51_UNIFIED and
hal implementation has been moved from TARGET_MCU_NRF51822 to
TARGET_MCU_NRF51822_UNIFIED.

In the process, the only real taget kept for NRF51 based targets is
NRF51_DK.

It is too risky at this stage to switch NRF51822 (16K target) to the new
softdevice. The overhead of the RTOS is already too huge.
2016-07-21 00:02:44 +01:00
Vincent Coubard 2259e0d539 Move ARMmbed/feature/FEATURE_BLE into mbedmicro/mbed.
In the process, the path has been shortened and the unecessary ble
directory between FEATURE_BLE and the actual implementation has been
removed.

commit id of ARMmbed : 17728a824c7273e16b6b74fae871e2997c88ecd1
2016-07-20 22:10:36 +01:00
Sam Grove 48c1d2eb7a Merge pull request #2197 from bridadan/tests-and-frameworks
Adding test frameworks and test sources
2016-07-20 13:19:58 -05:00
Brian Daniels a9eb39dee4 Adding test frameworks and test sources
This commit adds the following test frameworks:

- `greentea-client` (https://github.com/ARMmbed/greentea-client)
  - This framework provides a key-value api for communicating with the
    greentea test tool (https://github.com/ARMmbed/greentea)
- `unity` (https://github.com/ARMmbed/unity)
  - This framework provides test assert macros that can be used when
    writing test cases
- `utest` (https://github.com/ARMmbed/utest)
  - This framework allows you to execute a series of test cases with
    reporting that works with the greentea test tool
    (https://github.com/ARMmbed/greentea)

The following changes were made when bringing these frameworks into the
tree:

- References to `mbed_drivers/mbed.h` within utest's tests were migrated
  to `mbed.h`
- The yotta file `module.json` was removed from `greentea-client` and
  `unity`
  - `coverage.json` was also removed from `greentea-client`
- `.gitignore` and `.gitattributes` were removed from `greentea-client`
- Apache 2.0 license files were removed from `greentea-client`

This also brings in a number of tests that have been newly written or ported from various sources:

- `TESTS/integration` - Very basic tests, used to check if testing frameworks are working correctly
- `TESTS/mbed_drivers` (Thanks @PrzemekWirkus!) - TESTS ported from mbed OS 3.0 (https://github.com/ARMmbed/mbed-drivers)
- `TESTS/mbedmicro-mbed` (Thanks @PrzemekWirkus!) - Tests that weren't covered by `TESTS/mbed_drivers` that currently live in `libraries/tests/mbed`
- `TESTS/mbedmicro-rtos-mbed` (Thanks @PrzemekWirkus!) - Ported tests that currently live in `libraries/tests/rtos/mbed`
- `TESTS/storage_abstraction` (Thanks @rgrover!) - Tests for the storage_abstraction hal
2016-07-20 12:41:26 -05:00
Vincent Coubard c3ddc9aaca Merge pull request #25 from pan-/armcc_support
Armcc support
2016-07-20 15:43:44 +01:00
Vincent Coubard 847d0f6764 Remove app_timer and dependencies instead of adding a dependency to RTX. 2016-07-20 15:39:44 +01:00
Bogdan Marinescu 51540d08d5 Merge pull request #2177 from mbedmicro/build_on_config_change
Rebuild sources if configuration is changed
2016-07-20 14:52:08 +03:00
Jarek Zgoda c005781063 [BLUEPILL] fix interrupt handler 2016-07-20 11:06:58 +02:00
Vincent Coubard 0bb2d3376f Merge pull request #24 from nvlsianpu/nrf5x_lf_clk_config
NRF5x LF clk config over mbed config system
2016-07-20 09:01:26 +01:00
Vincent Coubard ea0ae68c60 Update memory layout for nrf51 targets. 2016-07-19 23:39:52 +01:00
Sam Grove 518afae619 Merge pull request #2189 from geky/rtos-sema-default
[rtos] Add default constructor for Semaphore
2016-07-19 17:11:22 -05:00
Vincent Coubard 6d214eb76a ARM cc has difficulties to link binary with undefined symbols, even if
those symbols are not used.

bootloader and log are not needed in our case, just remove files causing
troubles.

define app_timer symbols with the RTX implementation.
2016-07-19 22:40:18 +01:00
Sam Grove d89c3c18f9 Merge pull request #2158 from c1728p9/singleton_support
Singleton support
2016-07-19 16:34:20 -05:00
Vincent Coubard 3368fa8b0d Merge pull request #22 from nvlsianpu/anpu_arm_cc_sandbox
fix nRF5x IAR build, files for keil build
2016-07-19 22:21:52 +01:00
Andrzej Puzdrowski fa5937fce8 Add configuration of LF clk source in targer.json for targets MCU_NRF51 & MCU_NRF52
Fix typo
2016-07-19 20:29:38 +02:00
Bogdan Marinescu fd757d3b84 Merge pull request #2180 from mbedmicro/online-build-system
[Tools] mbed Online Build System support and improvements
2016-07-19 16:30:48 +03:00
0xc0170 7fd0a9b875 Merge branch 'svastm-fix_int_handler' 2016-07-19 14:10:37 +01:00
0xc0170 c8fc07928a Merge branch 'fix_int_handler' of https://github.com/svastm/mbed into svastm-fix_int_handler
Conflicts:
	hal/targets/hal/TARGET_STM/TARGET_STM32F0/pwmout_api.c
	hal/targets/hal/TARGET_STM/TARGET_STM32F7/pwmout_api.c
2016-07-19 14:10:25 +01:00
Mihail Stoyanov ad87f9da34 Document code and mark which methods are used by the online build system 2016-07-19 11:16:05 +01:00
Mihail Stoyanov 74b7f9e923 mbed Online Build System support:
* added/improved global chroot support
* added RESPONSE_FILES flag to support optional response files (on linux the cmd param length is 2 megabytes). Default True
* added unified handling for archive and link response file (similar to includes)
* added COMPILE_C_AS_CPP flag to support compiling of c files as cpp. Default False
* added mbedToolchain.init() for post __init__ hooks
* added caching to mbedToolchain.need_update() to reduce IO hits
* added support to identify compiler warning/error column (supports ARMCC, GCC and IAR). Errors/warnings now report file@line,col
* added global TOOLCHAIN_PATHS which allows overriding/changing of the toolchain paths. Also simplified ARM-related paths
* added target.json to mbed library release (by @0xc0170)* migrated compile_worker() to utils.py for lightweight thread initialization
* improved run_cmd() performance by removing unnecessary check about the command being executed (should be checked once in the relevant toolchain instead)
* removed remnants of Goanna support (should be reimplemented as hooks to compile/link/archive instead)
* fixes for Python 2.7 compatibility (by @0xc0170)
* fixes for Exporters (by @0xc0170)
2016-07-19 11:14:42 +01:00
Martin Kojtal 5cd73170ba Merge pull request #2185 from yogpan01/master
Changing -O2 parameter to -Os
2016-07-19 10:42:34 +01:00
Andrzej Puzdrowski be4687540c startup configuraton of LF oscilator over mbed configuration system. 2016-07-19 10:50:10 +02:00
Andrzej Puzdrowski d99843745b lf clock config prove of concept 2016-07-19 10:49:53 +02:00
Bogdan Marinescu 8ab89c1131 Merge pull request #2175 from mbedmicro/release
Release v122
2016-07-19 11:34:15 +03:00
Bogdan Marinescu 474915c22c Merge pull request #2186 from 0xc0170/fix_issue2183
Fix issue2183
2016-07-19 11:31:35 +03:00
0xc0170 edf015ad92 Merge branch 'master' into release
Conflicts:
	tools/export/uvision4.py
	tools/export/uvision5.py
2016-07-19 08:44:34 +01:00
0xc0170 028f722868 uvision5 - remove init, not used 2016-07-19 08:30:35 +01:00
0xc0170 f80b62ed00 exporter - fix TARGETS property via descriptors
Fixes #2183 issue.
2016-07-19 08:30:21 +01:00
Martin Kojtal 9626ef3491 Merge pull request #2187 from 0xc0170/fix_issue2184
project - zip and src check if empty fix
2016-07-19 07:43:55 +01:00
Christopher Haster 0140dc2e80 Added default constructor for Semaphore
Currently Semaphore can not be instantiated without an explicit count
as a constructor argument. This limits where Semaphores can be declared
and requires explicit initialization in several annoying places, such
as in member variables and SingletonPtr targets.

This adds a default count of 0, which has shown to be the most common
initial value used for semaphores.
2016-07-18 14:51:38 -05:00
0xc0170 bf2ad16c69 project - zip and src check if empty fix
Regression from #2179. Fixes #2184.
2016-07-18 15:47:01 +01:00
Yogesh Pande e6043daa04 Changing -O2 parameter to -Os
This commit includes
- Changing build option parameter from -O2 to -Os to reduce flash size of the
  final binary pacakge.
  The original parameter of -O2 is kept to circumvent the error
  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46762 .
 But this error has been long fixed and released in latest 4.9.x GCC compiler.

 This change is necessary to reduce the generated binary size of mbed Client component to
avoid problem of getting images over 512 kB which is causing application to crash because of
Configuration Store problem https://github.com/ARMmbed/configuration-store/issues/21
2016-07-18 13:59:39 +03:00
Martin Kojtal 3ea625c8eb Merge pull request #2161 from PrzemekWirkus/devel_memap_summary_fields
[Tools] Replace in memap CSV report fields
2016-07-18 11:41:18 +01:00
Martin Kojtal 0d3ac5a007 Merge pull request #2178 from c1728p9/supress_warning
Suppress warnings about deprecated __ldrex/strex
2016-07-18 08:56:06 +01:00
Mihail Stoyanov 4e1ac4dba2 Merge pull request #2179 from sarahmarshy/progen_build_tests_v2
IDE build tests with progen
2016-07-16 17:54:46 +01:00
Martin Kojtal 7251a8ccae Merge pull request #2176 from 0xc0170/fix_#2171
Exporters - progen TARGETS lazy evaluated
2016-07-15 23:55:48 +01:00
Russ Butler 348b32c3c6 Create singleton class and update code to use it
Create the wrapper class SingletonPtr.  This provides a safe way to
declare and use singletons.  This class allows both the lazy
initialization of a singleton, and allows the singleton to be
garbage collected by the linker if it is never referenced.

This patch also updates the HAL to use SingletonPtr when declaring
singleton mutexes.
2016-07-15 14:37:43 -05:00
Russ Butler d4627176da Update ARMCC pre_main to be in C
Switch pre_main from assembly to C for ARMCC.  This function does not
need to be in assembly.
2016-07-15 14:12:37 -05:00
Sarah Marsh b969fa5bb1 IDE build tests with progen 2016-07-15 13:25:35 -05:00
Russ Butler 59e2f9621c Suppress warnings about deprecated __ldrex/strex
Suppress warnings about ARMCC warnings about the __ldrex and __strex
intrinsics to match CMSIS 5.
2016-07-15 11:10:38 -05:00