Commit Graph

30195 Commits (e9b1df671e552e61d12ef2477d3b39f2fdac6e2c)

Author SHA1 Message Date
Paul Szczeanek fff0247ae5 fix infinite recursive call 2020-06-03 17:29:20 +01:00
Paul Szczeanek 05f7685a79 store local csrk and identity in the security db 2020-06-03 17:27:26 +01:00
Paul Szczeanek 94a6cac838 expose identity address used by controller 2020-06-03 17:24:11 +01:00
Paul Szczeanek d6a5bd2825 make number of db entries configurable 2020-06-03 17:07:47 +01:00
Paul Szczeanek dd615f7943 Add direct advertising support.
To start direct connectable advertising on the cordio stack, the programmer should call the function DmConnAccept instead of the function DmAdvStart .
This functions expect the target address and address type as parameter, which are passed to the controller when the programmer sets the advertising parameters and not known when advertising_enable is called.
Therefore, this information should be kept in memory when advertising parameters are set and retrieved when advertising is enable to choose the right call to start (or stop) advertising.
Timeout of direct advertising is also handled in an uncommon way, a connection timeout is received. Similarly, DmConnClose should be called to stop connectable direct advertising.

The state is kept in an array of direct_adv_cb_t. Each items contains a peer address, the peer address type, the connection handle and the advertising handle as well as a state which indicate if the advertising is running, pending or not used.
When advertising parameters are set, the state is updated to match the target address or disable direct advertising management for the advertising set being configured.
When advertising is enabled, the pal dispatch the operation to the right calls (DmAdvStart/DmConnAccept or DmAdvStop/DmConnClose).
When an advertising timeout happen or a connection is made, the pal cleans any direct advertising state of this advertising set
2020-06-03 16:25:23 +01:00
Paul Szczeanek fbe93123a5 Add rf tester commands to cordio hci driver. This adds commands that allow you to send the HCI commands HCI_LE_Receiver_Test, HCI_LE_Transmitter_Test and HCI_LE_Test_End. The results of the test are obtained by the command complete command for HCI_LE_Test_End and passed to the user by the callback register in the test start calls. 2020-06-03 15:21:32 +01:00
Paul Szczeanek 51d1a30b8e Route unhandled cmd cmpl events to mbed. Cordio ignores command complete events for all commands that it doesn't have a specific handler for. This adds a catch-all handler that allows the user application to handle any command complete that isn't already handled by the stack. This involves adding a new type of event and routing the event through the stack to the device where it's forwarded to the existing event handling in mbed-os. 2020-06-03 15:21:05 +01:00
Paul Szczeanek 0affb73747 Fix bounds check using a define instead of table size. The bounds check was incorrectly picking a define that wasn't even the last in the table. It now uses the size of the table. 2020-06-03 15:19:39 +01:00
Martin Kojtal 165be79392
Merge pull request #13054 from ARMmbed/update_version
Update mbed version number
2020-06-02 15:47:21 +02:00
adbridge 782fa9bb18 Update mbed version number 2020-06-02 11:38:04 +01:00
Paul Szczeanek 8285ecdefb connection update handled elsewhere 2020-06-02 10:01:10 +01:00
Paul Szczeanek 157c54bfc7 fix inverted meaning of _user_manage_connection_parameter_requests 2020-06-02 09:39:07 +01:00
pea-pod 5fb87eb0b0 Simplify MBED_STATIC_ASSERT for C11 and C++14 2020-06-02 00:16:49 -05:00
Anna Bridge ced3b1cf8e
Merge pull request #13003 from dgreen-arm/add-feature-experimental
Mark PSA as an experimental API
2020-06-01 16:38:30 +01:00
Hugues Kamba 5d94fd4d73 ST boards: Fix sleep tracing
Prevent singleton lock if the RTOS is not yet ready.

lp_ticker is used during the RTOS initialization process.
ST lp_ticker implementation calls sleep functions
which in turn attempts to print to the console when sleep tracing
is enabled. Console initialization attempts to lock the singleton mutex.
2020-06-01 15:31:09 +01:00
Hugues Kamba 1beb8d3810 Ensure all overridden virtual functions are marked with `override`
This also removes warnings.
2020-06-01 10:39:42 +01:00
Hugues Kamba 488f06b7e1 NRF: Migrate ARM Compiler 5 feature re-locate zero initialized variables
ARM Compiler 6 does not support placing a zero-initialized variable in a
zero-initialized section with a given name.
The migration path for this feature is what is as done in this commit.
The name of the section is what comes after `.bss.` (`nvictable` in this
case).
Also simplify pre-processor directive to test for Arm compiler.
2020-06-01 10:35:13 +01:00
Hugues Kamba 992133be50 NRF: fix implicit declarations
As a result removes warnings
2020-06-01 10:26:51 +01:00
Mika Tervonen ad6ed89e10 Allowed to set Wi-SUN certificates in DISCONNECTED state
Before certificates were able to set only once.
Now after disconnect those can be set Again

Also those can be set when stack is active
2020-06-01 11:47:12 +03:00
Kyle Kearney 7ad94db586 CYESKIT_064B0S2_4343W: Remove parentheses from arduino pins
Avoid build failures when arduino pin names collide with C++ template
argument names.
Addresses issue #13027
2020-05-29 17:17:05 -07:00
Hugues Kamba f6d6d44346 NRF serial: Use nrf_uarte_event_t enum to avoid implicit conversion 2020-05-29 20:20:12 +01:00
Hugues Kamba 4d939ccdbe Cordio: put parentheses to correct order of precedence in ternary expressions
Also remove extraneous parentheses in comparison.
2020-05-29 19:11:25 +01:00
Vincent Coubard 2bbc8a0bae BLE: remove limitation in the Cordio to update adv payload
Nothing in the Bluetooth standard prevents update of advertising payload while advertising is active.
This limitation wasn't present in previous version of the stack and is not present for extended advertising.
2020-05-29 17:52:05 +01:00
Vincent Coubard 23e39a1dbd Fix capacity check when service data are added to BLE advertising payload. 2020-05-29 15:06:38 +01:00
Darryl Green e5f8dd8798 Move import to after TARGET_PSA define check
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:12 +01:00
Darryl Green a62b3591d9 Fix astyle issues
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:12 +01:00
Darryl Green fcf60ec683 Move frameworks/TARGET_PSA to TARGET_EXPERIMENTAL_API 2020-05-29 13:19:12 +01:00
Darryl Green 0e07dff0a4 Move TARGET_MBED_PSA_SRV to FEATURE_EXPERIMENTAL_API
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:12 +01:00
Darryl Green 5fa5176727 Move mbedtls/platform/TARGET_PSA to FEATURE_EXPERIMENTAL_API/TARGET_PSA
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:12 +01:00
Darryl Green ccdb76d34f Move components/TARGET_PSA under FEATURE_EXPERIMENTAL_API
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:11 +01:00
Darryl Green 10e9946b16 Move FEATURE_PSA under FEATURE_EXPERIMENTAL_API
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:11 +01:00
Jaeden Amero aa7a02f0a9 musca: Mark Musca targets as experimental
TF-M and PSA have experimental APIs. Musca targets must initialize the
tfm_ns_lock, via the experimental API tfm_ns_lock_init(), as part of
their ordinary initialization procedure. Therefore, Musca targets must
have experimental APIs present in order to function. Add the
experimental API feature to Musca targets by default to ease usability
of the Musca targets, rather than requiring all users and CI to manually
enable experimental APIs when using these targets.
2020-05-29 13:19:11 +01:00
Darryl Green 7aadee9ab7 Add experimental feature folder
Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:11 +01:00
Jaeden Amero b44a263729 psa: Put Mbed PSA implementation into MBED_PSA_SRV
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-05-29 13:19:11 +01:00
Jaeden Amero 8b5a2ff2d9 psa: Fix style in psa_hrng.c 2020-05-29 13:19:11 +01:00
Jaeden Amero 5d6ec71171 crypto: Move PSA Crypto headers to MBED_PSA_SRV
TF-M provides its own PSA headers for TF-M targets. Single v7-M targets
need to get PSA crypto from Mbed Crypto.

Note that we don't yet move crypto_struct.h to its new location. This is
to avoid breaking v8-M targets for the time being. When TF-M provides
the PSA implementation on v8-M, we will add crypto_struct.h to the
correct place.

Likewise, none of the PSA-implementing source is moved out of
COMPONENT_PSA_SRV_IMPL yet, as still must not be built for PSA NS
targets. When PSA NS targets switch to using TF-M provided
implementations rather than MBED_PSA_SRV, we can take the source out of
COMPONENT_PSA_SRV_IMPL.

Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
2020-05-29 13:19:11 +01:00
Jaeden Amero 295ff531a4 psa: Pick up code from MBED_PSA_SRV
Make single Armv7-M PSA targets pick up files under TARGET_MBED_PSA_SRV.
We'll be moving the Mbed implementation of PSA to TARGET_MBED_PSA_SRV
folders soon.

Targets (dual-core and Armv8-M) that expect to use TF-M for their PSA
implementation also have MBED_PSA_SRV labels added to them so that they
continue working with the Mbed PSA implementation for the time being.
2020-05-29 13:19:11 +01:00
Darryl Green cf17d7a178 Change unrecognised features to a warning, rather than error
Give a warning rather than error if an unrecognised feature is used.
This will help compatibility when new features are added.

Signed-off-by: Darryl Green <darryl.green@arm.com>
2020-05-29 13:19:11 +01:00
Kevin Bracey 922b656d39 Fix ThisThread::get_name definition 2020-05-29 11:46:58 +03:00
Rajkumar Kanagaraj 7229e64381 Documentation update about MBRBlockDevice::partition type parameter 2020-05-28 14:04:12 +01:00
Jaeden Amero 4e47c38701 tools: Fix grammar in feature error message
Use "not a supported feature" instead of "not a supported features".
2020-05-27 16:37:59 +01:00
jeromecoutant 76135d0820 STM32: add weak TargetBSP_Init function 2020-05-27 16:49:54 +02:00
Martin Kojtal c7759fe505
Merge pull request #13008 from Patater/armc5-usage-warning-compat
tools: Warn when ARMC5 is no longer supported
2020-05-27 10:57:36 +02:00
Martin Kojtal a802ab89e8
Merge pull request #13007 from Patater/default-lib-c-compat
tools: Support default_lib and c_lib
2020-05-27 10:57:23 +02:00
Jaeden Amero 5e65cf7f4d tools: Support default_lib and c_lib
For backwards compatibility reasons, since the latest Mbed OS tools must
be able to build any previous online-compiler-supported version of Mbed
OS, allow targets to use `default_lib` or `c_lib`. This should enable
the tools to work with Mbed OS 5 style targets.json.
2020-05-26 10:47:13 +01:00
jeromecoutant ccfb099255 tests-mbed_hal-rtc patch to match IAR compilation issue 2020-05-26 10:26:45 +02:00
jeromecoutant d8fc1e9121 Force callback non-trivial for IAR 2020-05-25 15:29:27 +02:00
jeromecoutant 876125ad49 DISCO_H747I_CM4 is supporting now hex format
- minimum STLink version: V3J7M2
2020-05-25 11:34:40 +02:00
Ari Parkkila de765a41f0 Cellular: Fix packet data registration after CREG 2020-05-25 11:17:59 +03:00
rogeryou de9b283abe modify the div value when calling octo controller.
For ST OSPI controller driver(stm32l4xx_hal_ospi.c), the frequency it has be subtracted 1, so "div = div - 1;" should be removed.
2020-05-25 12:07:24 +08:00