Commit Graph

8183 Commits (448205ac877f92817bb3fb5ea09b1554693cf203)

Author SHA1 Message Date
Christopher Haster c18e1786cd callback - Updated tests based on argument order 2016-09-29 16:55:49 -05:00
Christopher Haster f8917e1cd9 callback - Removed problematic callback overloads
Unfortunately, it is very difficult to infer the parameters of
function-objects generically in C++03 without any additional type
information. The current implementation fails to do so, and the compiler
simply bails with "unable to deduce template parameter".

Rather than leaving the user with a small novel of error messages, this
patch removes the problematic callback overloads, leaving only callback
overloads for the original pointer types.
2016-09-29 16:30:49 -05:00
Brian Daniels 69448d7d8d Copying main config json file for mbed lib builds 2016-09-29 16:08:16 -05:00
Bogdan Marinescu 0abd141bf9 A few improvements to the events documentation 2016-09-29 20:48:21 +03:00
Bogdan Marinescu 8545bf1212 Added initial documentation for the event loop 2016-09-29 19:47:32 +03:00
Bogdan Marinescu e7abc11f59 Added mbed-events library
Added mbed-events from https://github.com/ARMMbed/mbed-events. Changes
from upstream:

- the whole code is licensed under the Apache license. Sources and
  headers were updates with this information.
- removed the porting layers for Windows and FreeRTOS and the references
  to these porting layers in equeue_platform.h.
- moved the TESTS directory in mbed-events to the TESTS directory of
  mbed-os.
2016-09-29 18:44:09 +03:00
Jimmy Brisson 73e811a9a0 Fix style of implementation of toolchain profiles 2016-09-29 10:20:05 -05:00
Jimmy Brisson c86ad6646d Add documentation of the Toolchain Profile system 2016-09-29 10:20:05 -05:00
Jimmy Brisson fd04ea2125 Added property based regression test to travis 2016-09-29 10:20:05 -05:00
Jimmy Brisson d88852d150 Replace -o with profiles 2016-09-29 10:20:05 -05:00
Jimmy Brisson df32effd8a Add profiles for default, nanolib, and debug 2016-09-29 10:20:03 -05:00
Seppo Takalo bf8d8211fa Update Nanostack binaries to 5.0.6 2016-09-29 14:31:19 +03:00
Seppo Takalo cbce88d422 [ONME-2736] Macro Def. of 6LP-ND Security Mode
* Application has been using MBED_MESH_API_6LOWPAN_ND_SECURITY_MODE as the macro to define Secuity mode.
* The fall back mechanism, in case of absence of neo or yotta macro definition, was setting the macro to
  be yotta format which was not used at all in the application.
* The bug was fixed by changing YOTTA_CFG_MBED_MESH_API_6LOWPAN_ND_SECURITY_MODE to
  MBED_MESH_API_6LOWPAN_ND_SECURITY_MODE in the fall back mechanism.
2016-09-29 14:11:02 +03:00
Seppo Takalo 822567bfa1 Initialize mac_api only once. 2016-09-29 14:06:49 +03:00
Seppo Takalo f91d8eb4c3 Add Nanostack configurations 2016-09-29 13:52:15 +03:00
Seppo Takalo 1317eda555 Rename FEATURE_IPV6 to FEATURE_NANOSTACK 2016-09-29 13:50:32 +03:00
jeromecoutant 42f40f98ed Correct RTOS MBED OS2 tests for STM32F3 2016-09-29 12:01:11 +02:00
Vincent Coubard dcf03310d0 NRF5 - Fix usage of volatile variable in nordic critical section implementations. 2016-09-29 10:05:02 +01:00
svastm d37e4d876d STM32L4 - Rename RTC_LSI 2016-09-29 10:00:48 +02:00
svastm f361a430ef STM32L1 - Rename RTC_LSI 2016-09-29 10:00:45 +02:00
svastm da44e99a1c STM32L0 - Rename RTC_LSI 2016-09-29 10:00:41 +02:00
svastm 57208bb651 STM32F7 - Rename RTC_LSI 2016-09-29 10:00:38 +02:00
svastm a0fd0d39c1 STM32F4 - Rename RTC_LSI 2016-09-29 10:00:34 +02:00
svastm faae46385f STM32F3 - Rename RTC_LSI 2016-09-29 09:52:05 +02:00
svastm 574e7b7622 STM32F2 - Rename RTC_LSI 2016-09-29 09:52:05 +02:00
svastm a4db938b7a STM32F1 - Rename RTC_LSI 2016-09-29 09:52:05 +02:00
svastm 9053d3b9ea STM32F0 - Rename RTC_LSI 2016-09-29 09:52:05 +02:00
javier-moreno-tridonic-com c1f2691ded Reverted the my change on argument parsing 2016-09-29 08:34:10 +02:00
Sam Grove 2564a833c0 Merge pull request #2822 from anangl/master
TARGET_NRF5: Removed waiting for TX completed from 'serial_putc()'.
2016-09-28 15:37:58 -07:00
Sam Grove fbce4e18b2 Merge pull request #2853 from bridadan/examples-toolchain-filtering
[Tests] Example build toolchain filtering
2016-09-28 15:30:55 -07:00
Brian Daniels abb6d2681e Adding memap tests and adding to travis ci 2016-09-28 17:27:25 -05:00
Jimmy Brisson ceda396e18 Add simple build profiles to toolchains 2016-09-28 17:25:24 -05:00
Sam Grove 48ac4aec25 Merge pull request #2830 from jeromecoutant/PR_L073RZ
[STM32L073RZ] update OS5 RTOS tests
2016-09-28 15:00:27 -07:00
Sam Grove 9e1b53f6d3 Merge pull request #2851 from geky/callback-function-objects
callback - Add size-limited function-object overloads to Callback
2016-09-28 15:00:09 -07:00
Sam Grove 6856a892ef Merge pull request #2841 from javier-moreno-tridonic-com/fix-border-router-shudown-reconections
Fixed assert failure on reconections
2016-09-28 14:59:52 -07:00
Sam Grove ab3e77f50a Merge pull request #2826 from jeromecoutant/PR_F410RB_THREAD
[STM32F410RB] update OS5 RTOS thread test
2016-09-28 14:59:29 -07:00
Sam Grove 7608401f2b Merge pull request #2810 from toyowata/master
[LPC1347] Fix PwmOut prescaler for 16-bit timer
2016-09-28 14:58:55 -07:00
Sam Grove 28a4b3e03a Merge pull request #2781 from jeromecoutant/PR_RTOS_Tests_clean
Clean RTOS tests after PR #2648
2016-09-28 14:58:43 -07:00
Sam Grove 3d1531fcb1 Merge pull request #2767 from mikaleppanen/lwip_2_0
Replace lwIP 1.4.1 with lwIP 2.0
2016-09-28 14:58:22 -07:00
Sam Grove 3f9a04ceca Merge pull request #2760 from svastm/lp_timer_f4
STM32F4 - Add low power timer
2016-09-28 14:57:31 -07:00
Mike Fiore fdd267cadf resolve multiple STM32F411RE configurations in mbed_rtx.h 2016-09-28 14:57:46 -05:00
Brian Daniels 10534019b9 Making all toolchains print final compiler message.
This functionality was already present in the ARM toolchain script, but
this commit adds this across all toolchain scripts. Solves an issue that
cropped up where a build error wasn't being printed unless the verbose
flag was used. This should now print any existing error messages that have
been printed when the compiler output is being parsed.
2016-09-28 14:42:35 -05:00
Brian Daniels cadcc80371 Handling Exceptions better when building tests
Previously, when building tests with test.py, if an exception occurred, the
error message would be masked by the function 'build_tests'. This commit
handles NotSupportedExceptions and ToolExceptions, but lets all other
Exceptions propigate up to the caller function. In most cases, this is the
CLI scripts, which will print a traceback. This will allow us to better
debug the python tools if errors occur.
2016-09-28 14:13:23 -05:00
Brian Daniels 1448aa5770 Limiting uvisor example to just GCC_ARM toolchain 2016-09-28 13:09:11 -05:00
Brian Daniels 53ecfdb856 Adding the ability to filter examples by toolchains
This change was driven by the fact that certain
examples only support a subset of the toolchains.
2016-09-28 13:04:14 -05:00
Christopher Haster 161a2ec259 callback - Added size-limited function-object overloads to Callback
The callback class can now accept generalized function-objects:

    class Thing {
    public:
        int value;

        void operator()() {
            printf("hi! %d\n", value);
        }
    };

    Callback<void()> cb(Thing(2));

However, with the intention of avoiding implicit dynamic-memory
allocations, the Callback class is limited to a single word of storage.
Exceeding this size will eliminate the function-object type from the
overload set and fail to compile.

Effort was invested to make this situation very clear to the user. Here
is an example error message with noise removed:

    [ERROR] ./main.cpp: In function 'int main()':
    ./mbed-os/hal/api/Ticker.h:101:10: note:
        no known conversion for argument 1 from 'BigFunc' to 'mbed::Callback<void()>'

The real benefit of this change is the ability for users to hook into
the attributes of the Callback class. This mostly allows lifetime
management of the function-objects from third-party libraries (such as
the Event class from mbed-events).

Note: The convenient `callback` function may become ambiguous if
provided with a type that defines multiple incompatible `operator()`
member functions.
2016-09-28 12:23:29 -05:00
Christopher Haster 804a621231 callback - Moved internal dispatch mechanism to generated op-table
This allows additional attributes to be attached to the internally
generated type such as move and destructor operations with no increase
in RAM footprint.

The current overloads can't take advantage of this, but it does open
the possibility for more powerful overloads that can provide these
additional attributes.

Changes to mbed-os memory consumption:

        .text   .data   .bss
before  57887   2292    7692
after   57842   2292    7691
2016-09-28 12:23:24 -05:00
Sam Grove b481da44e9 Merge pull request #2843 from andresag01/update_mbedtls
Update feature/mbedtls with mbedtls' development HEAD
2016-09-28 06:48:24 -07:00
Vincent Coubard 597f104685 TARGET_NRF51822 - Override critical section enter/exit when Nordic SDK v10 is used.
This change is not located in the hal because SDK v10 is not available from this
place. It is safe to provide the implementation in BLE because the SDK V10 is
defined there. Default implementations of critical section enter/exit are safe
as long as the softdevice is not used.
2016-09-28 13:53:51 +01:00
Vincent Coubard c536392079 TARGET_NRF5 - Add critical section enter/exit overrides for NRF5 targets.
This change takes advantage of the reworked primitives of SDK v11.
2016-09-28 13:43:31 +01:00