Commit Graph

156 Commits (9c6fe22ea2c3a53275d478a3c82d857228daa1f6)

Author SHA1 Message Date
Debdeep Saha b0c2443ec1 Typo fixed. 2020-09-02 13:49:01 +03:00
Debdeep Saha 72c28ee497 Resolving comments 2020-09-02 13:49:01 +03:00
Debdeep Saha c5386c0cee Updating mbed-mesh-api.
-Adding new parameters for Wi-SUN interface information.
2020-09-02 13:49:01 +03:00
Debdeep Saha a69af3f848 Added APIs for Device min sense and CCA threshold table.
-Added get, set and validate API for device min sens.
-Added get API for CCA threshold table.
2020-09-02 15:26:38 +05:30
Arto Kinnunen 22c3c35996 Follow Mbed OS coding style 2020-09-02 12:41:14 +03:00
Arto Kinnunen 207250fe84 Update WisunBorderRouter class
Add set_dns_query_result to WisunBorderRouter.
2020-09-02 12:41:14 +03:00
Mika Leppänen a327210fd0 RADIUS shared secret .json parameter set correction 2020-09-01 12:18:00 +03:00
fred.li a219f8a581 Add WiSun network size configs in JSON 2020-08-26 10:52:53 +03:00
Mika Leppänen befd783e59 Added support for RADIUS configuration options to Wi-SUN
Added support for external RADIUS server configuration to Wi-SUN Border Router.
Added configuration functions and .json configuration options for:
- external RADIUS server IPv6 address
- RADIUS shared secret.
2020-08-20 11:43:01 +03:00
Debdeep Saha 0e64f7de8a Typo fixed. 2020-08-19 15:24:04 +05:30
Debdeep Saha 2b11de8629 Resolving comments 2020-08-19 15:24:04 +05:30
Debdeep Saha 80c9b270cd Updating mbed-mesh-api.
-Adding new parameters for Wi-SUN interface information.
2020-08-19 15:24:04 +05:30
Arto Kinnunen 3ab72c71b7
Merge pull request #13134 from fredlee12001/WiSun_Size
Add WiSun network size configs in JSON
2020-07-03 10:12:11 +03:00
Arto Kinnunen c77b2f4beb
Merge pull request #13132 from debdeep-arm/fix-routing-table-get-api
[feature-wisun] Fix routing_table_get API
2020-06-22 16:51:41 +03:00
Debdeep Saha 3f69826bd4 [mbed-os-5.15] Added Wi-SUN Interface APIs
-info_get for Wi-SUN router.
-info_get for Wi-SUN BR.
-routing_table_get for Wi-SUN BR.
2020-06-18 16:40:30 +05:30
fred.li b728321721 Add WiSun network size configs in JSON 2020-06-18 18:59:31 +08:00
Debdeep Saha 7b1ff34b50 [feature-wisun] Fix routing_table_get API
-Return value is modified.
2020-06-17 16:48:06 +05:30
Arto Kinnunen cef4dde453 Merge remote-tracking branch 'upstream/mbed-os-5.15' into feature-wisun
* upstream/mbed-os-5.15: (47 commits)
  Update mbed version to 5.15.4
  Squashed 'features/nanostack/sal-stack-nanostack/' changes from cc03296c27..b3fe5744d1
  Squashed 'features/frameworks/nanostack-libservice/' changes from 9a61e73787..c6cae6992a
  802.15.4 MCR20A RF driver update
  802.15.4 Atmel RF driver update
  802.15.4 STM S2LP driver update
  Added Wi-SUN statistics interface
  Allowed to set Wi-SUN certificates in DISCONNECTED state
  Change unrecognised features to a warning, rather than error
  Fix assertation ordering in tests
  Define mbedtls_ecc_group_to_psa inline for NS world
  Remove references to mbed-crypto
  Move Mbed Crypto Greentea tests to Mbed TLS
  Update Mbed TLS to latest version
  Adjust Mbed TLS importer and config script
  tls: Remove apache-2.0.txt from importer script
  tools: Fix grammar in feature error message
  M2351: Enable non-PSA minimal secure build
  Cellular: Enable tac info for ALT1250
  Nuvoton: Change WDT clock source to LXT
  ...
2020-06-17 12:21:07 +03:00
Anna Bridge 0515ed1f9f
Merge pull request #13072 from mikter/ws_certificate_set_change_5.15
[mbed-os-5.15] Allowed to set Wi-SUN certificates in DISCONNECTED state
2020-06-12 14:48:23 +01:00
Anna Bridge cc8bb4596f
Merge pull request #13084 from debdeep-arm/wisun-interface-api-add
[feature-wisun] Added Wi-SUN interface and Border Router API.
2020-06-11 12:04:22 +01:00
Debdeep Saha 16e807e2f5 Adding check for RPL instance count. 2020-06-10 20:43:03 +05:30
Mika Tervonen 782141bf98
Allowed to set Wi-SUN certificates in DISCONNECTED state (#13071)
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-10 17:16:22 +03:00
Debdeep Saha 466a57ada4 resolved astyle - coding format. 2020-06-10 18:26:07 +05:30
Debdeep Saha 0387254ebd Resolved comments.
Rebased with ARMmbed feature-wisun branch.
2020-06-10 18:01:50 +05:30
Debdeep Saha 4c6dd9334a Fixed coding style. 2020-06-09 18:54:00 +05:30
Debdeep Saha 64851eb5d9 Added Wi-SUN interface and Border Router API.
-Taken modification for adding IID in BR info structure.
-Added API to get RPL info for Wi-SUN router and BR.
-Added API to get routing table info from BR.
2020-06-09 18:54:00 +05:30
Mika Leppänen 7b6ee061ba Added Wi-SUN statistics interface
Added network and MAC statistics to Wi-SUN interface.
2020-06-08 13:07:09 +03:00
Martin Kojtal a3fdbc7944
Merge pull request #12894 from mikaleppanen/fea_wisun_nanostack_device_type_config_5_15
Nanostack: Add config for Wi-SUN device type (Mbed OS 5.15)
2020-06-08 09:04:37 +02:00
Martin Kojtal 014c926c3b
Merge pull request #12892 from mikaleppanen/new_wisun_conf_param_5_15
Add new configuration parameters to Wi-SUN network interface and Border Router class (Mbed OS 5.15)
2020-06-08 08:59:02 +02:00
Mika Tervonen bd00cf19e9 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-05 12:49:50 +03:00
Juha Heiskanen e1c9c586d9 Add possibility to configure Mesh MAC neighbourtable size.
Accepted values are 5-255. MAC neighbour table size is limited to 8-bit number so thats why 255 is max value.
2020-05-06 14:30:05 +03:00
Juha Heiskanen fe26e15c52 Add possibility to configure Mesh MAC neighbourtable size.
Accepted values are 5-255. MAC neighbour table size is limited to 8-bit number so thats why 255 is max value.
2020-05-06 11:07:28 +03:00
Arto Kinnunen f5bd0a521b Nanostack: Add config for Wi-SUN device type
Add configuration option for Wi-SUN device types.
2020-04-30 09:44:21 +03:00
Mika Leppänen 754861d201 Added Wi-SUN Border Router class 2020-04-30 09:12:45 +03:00
Mika Leppänen 3ad3ebef85 Added new configuration parameters to Wi-SUN interface 2020-04-30 09:12:25 +03:00
Mika Leppänen 7709193140 Added Wi-SUN Border Router class 2020-04-27 09:43:22 +03:00
Mika Leppänen 6219d75e64 Added new configuration parameters to Wi-SUN interface 2020-04-27 09:17:40 +03:00
Mika Leppänen f28b8cbdf0 Added Wi-SUN statistics interface
Added network and MAC statistics to Wi-SUN interface.
2020-04-14 10:04:44 +03:00
Arto Kinnunen 0051c0ee74 Nanostack: Add config for Wi-SUN device type
Add configuration option for Wi-SUN device types.
2020-03-19 17:02:47 +02:00
Martin Kojtal 9f34b255be
Merge pull request #11958 from mikaleppanen/ws_rf_ch_conf
Add support for Wi-SUN RF channel configuration
2019-11-29 09:47:05 +01:00
Michal Paszta ea04c4f85e Remove internal usage of deprecated APIs in IPCore
Updated:
* netsocket classes,
* unittests, stubs and mocks,
* greentea tests
2019-11-27 20:02:20 +02:00
Mika Leppänen 2a908b51ff Added support for Wi-SUN RF channel configuration
Added support to Wi-SUN tasklet for following mbed-mesh-api .json configuration options:

       wisun-uc-channel-function
       wisun-bc-channel-function
       wisun-uc-fixed-channel
       wisun-bc-fixed-channel
       wisun-bc-interval
       wisun-bc-dwell-interval
       wisun-uc-dwell-interval

This allows e.g. enabling single channel configuration for testing.

This pull request does not change existing functionality since when
defaults from mbed-mesh-api .json are used, no new or changed
ws_management_* interface calls are made.
2019-11-27 14:04:25 +02:00
Michal Paszta fd5b4b9119 Deprecate string-based APIs in IPCore
MBED_DEPRECATE macros is added to string-based APIs.
New, non-string-based APIs are added in their place.
Wiced binaries rebuilt
Any existing stubs or mocks are adjusted to compile and run with the newly added non-string based functions.
2019-11-22 11:31:12 +02:00
Mika Leppänen 47e5dd74e2 Enabled DER coded certificate support to Wi-SUN mesh API
Wi-SUN mesh API uses now nanostack certificate interface with length parameters.
This enables that either PEM or DER formatted certificates can be used. Using
the length configuration for certificates and keys is optional, so existing
applications using the PEM certificates do not require changes.
2019-09-20 13:15:28 +03:00
Jarkko Paso da0fe81bfd Mesh API, Wi-SUN: Initialize Wi-SUN settings with values from json 2019-09-04 15:53:21 +03:00
Arto Kinnunen f8289ec0ac mbed-mesh-api: Add API set_file_system_root_path 2019-08-28 09:34:30 +03:00
Arto Kinnunen 774162dd83 mbed-mesh-api: Add new Wi-SUN certificate API
Add new API for setting Wi-SUN:
-Setting own/trusted certificates
-Removing own/trusted certificates
2019-08-28 09:34:30 +03:00
Arto Kinnunen c0f3cb7568 mbed-mesh-api: Add new Wi-SUN API
Add new API for setting Wi-SUN:
 -network name
 -regulatory domain, operating mode and operating class
2019-08-28 09:34:30 +03:00
Mika Leppänen ab3a4699c9 Added missing header to wisun interface 2019-08-20 13:37:12 +03:00
Mika Leppänen a2df462f65 Nanostack changes for PPP service
Created PPP interface for PPP service. Re-used the ethernet tasklet
and PHY driver structure for PPP.
2019-08-20 13:37:12 +03:00
Kevin Bracey 2fbbd9d2ca Introduce Semaphore::acquire methods
Deprecate wait() in favour of acquire(), try_acquire(),
try_acquire_for() and try_acquire_until().

Brings Semaphore more into line with CMSIS-RTOS 2 (which uses "acquire"),
itself (as it has "release"), and other classes having "try", "try for"
and "try until".

Also steps away from vague "wait" term - the primary operation here is
to acquire the semaphore, and this will of course sleep.
2019-05-28 17:02:06 +03:00
Mika Leppänen 9e22354f63 Corrected json and added check to ensure that needed json options are set 2019-05-17 10:42:26 +03:00
Mika Leppänen 5fbbfee201 Added Wi-Sun certificate options to mesh api configuration json
Added possibility to configure Wi-Sun root certificate, own certificate
and own certificate keys to mesh api.
2019-05-16 15:04:03 +03:00
Anna Bridge 1647282de9
Merge pull request #10462 from michalpasztamobica/nanostack_semaphore_release_connecting
Nanostack: release connect_semaphore only when it is pending
2019-04-26 13:37:53 +01:00
Anna Bridge 016ce322b4
Merge pull request #10434 from michalpasztamobica/nanostack_network_handler_fix
Nanostack network handle does not always call status cb for BOOTSTRAP events
2019-04-26 13:33:46 +01:00
Michal Paszta 2b26a62cc7 Nanostack: release connect_semaphore only when it is pending
Only release if the current _connect_status is CONNECTING. If the semaphore is released many times for each connect, then the next connect will not wait(), as it will be able to decrement the semaphore imediatelly.
2019-04-24 11:31:16 +03:00
Michal Paszta 8d1edc7db8 Nanostack network handle does not always call status cb for BOOTSTRAP events
UBLOX_EVK_ODIN_W2 advertises more events than we expect.
1) When disconnecting first network connectivity is lost and then an
actual disconnection event arrives. The first one is unexpected.
2) When reconnecting MESH_BOOTSTRAP_START_FAILED shows up, but the board
eventually manages to connect
2019-04-17 19:31:36 +03:00
Kevin Bracey 69c6cc341b Networking: Fix some ARMC6 warnings
Some int-versus-long and signed-versus-unsigned format string
mismatches, and missing `class` keyword.
2019-04-17 16:03:44 +03:00
Cruz Monrreal 9c381f27ec
Merge pull request #10243 from michalpasztamobica/nanostack_bringdown_blocking
Nanostack::EthernetInterface::bringdown() can handle blocking mode
2019-03-29 10:20:47 -05:00
Michal Paszta ccc83f7e3b Nanostack::EthernetInterface::bringdown() can handle blocking mode
This let the tests-network-interface test pass for nanostack.
2019-03-27 16:34:46 +02:00
Kari Haapalehto d9448364da Correct thread status callback functionality.
At the start-up, there was 2 NSAPI_STATUS_CONNECTING callbacks,
so extra one removed from ThreadInterface.cpp.
At the network lost case, there was NSAPI_STATUS_DISCONNECTED and
NSAPI_STATUS_LOCAL_UP callbacks. NSAPI_STATUS_DISCONNECTED has been removed,
since the NSAPI_STATUS_LOCAL_UP is enought.
2019-03-12 13:13:55 +02:00
Kari Haapalehto 31c40130d6 enet_tasklet_disconnect() should generate event to tasklet.
enet_tasklet_disconnect() is now generating event to ethernet_tasklet,
which will then handle it.
2019-02-13 13:57:03 +02:00
Martin Kojtal 272bc14cde
Merge pull request #9546 from jarlamsa/mesh_api_fixes
Mesh api fixes
2019-01-31 11:19:55 +01:00
Michal Paszta 53a82faa5a Prevent double attempt to connect mesh api
Socket network interface tests were failing due to DICONNECTED event
being advertised, where GLOBAL_UP was expected. It turned out that
nanostack receives two events: APPL_EVENT_CONNECT and
APPL_BACKHAUL_INTERFACE_PHY_UP. The second attempt to connect obviously
returns errors, but it also causes events to be sent out to the
application. The second attempt should not take place in case the
bootstrap is already started.

I also fixed two reports being sent with DISCONNECT status, while they
are actually something else.
2019-01-30 15:08:11 +02:00
Jarno Lamsa 740488d061 Set tasklet parameters before connecting
Set tasklet parameters before connecting to prevent the parameters to be set to 0.
The tasklet parameters are reset to 0 when wisun_tasklet_connect gets called,
thus those need to be set in the wisun_tasklet_configure_and_connect_to_network
before they are used. This is also done this way in other tasklets.
2019-01-30 13:06:17 +02:00
Kari Haapalehto 7068e456dd Correcting the error-case trace from mesh-api interfaces 2019-01-07 10:48:46 +02:00
Antti Kauppila 02b0f79e15 mbed.h includes removed 2018-12-28 14:36:10 +02:00
Cruz Monrreal 8bd9772d5d
Merge pull request #8975 from KariHaapalehto/fix_valid_mac_address
Initialize the interface at the construction
2018-12-18 13:22:30 -06:00
Alastair D'Silva d527585394 Align prototype & implementation of enet_tasklet_disconnect & friends
Rework of #8698

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
2018-12-14 22:19:39 +11:00
Mel W 8de7a36061
Capitalization and punctuation 2018-12-12 11:38:10 +02:00
Kari Haapalehto 7e7af773ea Modify enet_tasklet.h
Change enet_tasklet_network_init() and enet_tasklet_disconnect()
declarations to match code. Also add document enet_tasklet.h functions
2018-12-10 15:49:47 +02:00
Kari Haapalehto f7de4a4a0f Initialize the interface at the construction and make sure
that it's done only once.
2018-12-05 14:44:27 +02:00
Kari Haapalehto 6d8320fd8c Coverity fixes.
These issues has been found by coverity.
2018-12-04 15:32:02 +02:00
Martin Kojtal bf36ff77c1
Merge pull request #8855 from michalpasztamobica/warnings_fix
Fix compilation warnings (apart from nanostack)
2018-12-03 13:31:55 +01:00
Cruz Monrreal 92a0e48435
Merge pull request #8817 from KariHaapalehto/ethernet_cable_status_callback_correction
Correct network status callbacks with ethernet and nanostack
2018-11-30 17:55:15 -06:00
Michal Paszta e101943cce Fix compilation warnings (apart from nanostack) 2018-11-26 14:27:48 +01:00
Martin Kojtal f1f64266c0
Merge pull request #8600 from KariHaapalehto/wisuninterface_created
Wi-SUN interface implementation.
2018-11-22 10:55:58 +01:00
Kari Haapalehto 26beb983d4 Correct network status callbacks with Nanostack.
Ethernet-tasklet needs to be registered for emac link state changes.
Ethernet-tasklet will then handle ethernet cable connection/disconnection events.
2018-11-21 10:27:52 +02:00
Martin Kojtal 3aab38140a nanostack mesh: fix coding style 2018-11-15 07:20:12 +00:00
Kari Haapalehto 6163e6f425 Review changes corrected 2018-11-08 14:50:54 +02:00
Cruz Monrreal II 75368766f7 Merge branch 'fix_compile_warning' of ssh://github.com/KariHaapalehto/mbed-os into rollup 2018-11-06 21:29:08 -06:00
Kari Haapalehto 4aaf013b0e Fix memory leak 2018-11-05 13:09:56 +02:00
Kari Haapalehto c7afb91f62 Fix compile warning about initializing and variable order 2018-11-05 12:45:53 +02:00
Kari Haapalehto 4440612d42 This is a initial version of Wi-Sun interface implementation.
To get Wi-Sun mesh network working, also nanostack with Wi-Sun support
is needed. ws_empty_functions.c and ws_management_api.h are temporary
included here, so that wisun_tasklet will compiled without problems.
They will replaced with the official versions with next nanostack release.
2018-10-31 15:48:33 +02:00
Cruz Monrreal 8054060bf2
Merge pull request #8439 from KariHaapalehto/connection_status
Correct mesh network connection status callback functionality.
2018-10-17 17:41:46 -05:00
Kari Haapalehto 1b1f5e7c0d Correct mesh network connection status callback functionality.
Now the status callback is only called if the status changed.
2018-10-17 08:30:58 +03:00
Deepika 9db31d299b Resolve build issues in test
mbed.h was added in test, via greentea and utest header files. 'mbed.h' is removed
from header files and required header file and namespace is added to CPP/C files
2018-10-16 11:50:16 -05:00
Deepika a47c6b8139 Nanostack: Add required header file and namespace element instead add all 2018-10-15 10:57:21 -05:00
Cruz Monrreal 06a98e7dcf
Merge pull request #7778 from SeppoTakalo/provide_default_mesh
Fix MeshInterface::get_default_instance()
2018-08-30 16:11:00 -05:00
Seppo Takalo 488632bc79 Fix LoWPANInterface to provide ::get_target_default()
LoWPANInterface should provide target default, instead of default.
2018-08-28 18:50:59 +03:00
Martin Kojtal b2a05511d0
Merge pull request #7818 from kjbracey-arm/eui64_get_early
Allow ThreadInterface::device_eui64_get() before connect()
2018-08-28 12:11:47 +02:00
Seppo Takalo c5064a8e33 Fix *MeshInterface::get_default_instance()
This was returning object, instead of pointer.
Also it was trying to call lowpan(reference), instad of lowpan(ptr).
2018-08-28 11:02:58 +03:00
Mika Leppänen 1250ceb82c Corrected thread tasklet during interface disconnect/connect
Added check for valid interface ID to network scan timer start so that it
is not triggered after disconnect. Added variable for mac api so that it
is not tried to set again after re-connecting.
2018-08-27 15:08:48 +03:00
Mika Leppänen 68f5739e09 Corrected 6lowpan tasklet during interface disconnect/connect
Removed main tasklet ID and used instead tasklet id. Added check
for valid interface ID to network scan timer start so that it
is not triggered after disconnect. Added small delay to re-connect
so that stack has time to send its status events to application
after disconnect.
2018-08-27 15:08:48 +03:00
Kevin Bracey e014104258 Allow ThreadInterface::device_eui64_get() before connect()
Perform necessary driver initialisation so that we can read
the EUI-64 before connecting.

Fixes #7391.
2018-08-17 16:41:23 +03:00
Kevin Bracey 3a238bd7bd Streamline Nanostack interface initialisation
Can unify quite a log of the setup here, and that would be useful to
allow initialisation other than in "connect".
2018-08-17 16:41:23 +03:00
Kari Haapalehto de1d9c45b6 Update mesh_system_heap_error_handler to use new error codes and mbed_error call 2018-08-13 14:39:49 +03:00
Mika Leppänen 46bcbf2a28 Added json options for nanostack heap statictics
Added configuration options to mbed-mesh-api mbed_lib.json to enable
nanostack nsdynmemLIB heap statistics.
2018-07-04 10:35:35 +03:00
Cruz Monrreal 093a6066c2
Merge pull request #7158 from kjbracey-arm/thread-eui64
Add API to read Thread EUI-64
2018-06-11 10:21:22 -05:00
Kevin Bracey fc5c2fa84b Add API to read Thread EUI-64
Previously get_mac_address on a ThreadInterface returned the EUI-64
reported by the radio driver. This was required for commissioning, but
was inconsistent with other interfaces, and the API concept.

5.9.0 inadvertently changed this so that get_mac_address returned the
actual MAC address used by the radio, which is a hash result of the
EUI-64 for Thread.

The original "return the EUI-64" form was somewhat faulty, as
get_mac_address would not return the EUI-64 set by set_device_eui64() or
another mechanism before connect() was called.

Rather than revert to old behaviour, add a new API to get the device
EUI-64 to ThreadInterface, alongside the existing set API.
2018-06-07 12:17:03 +03:00