Commit Graph

3076 Commits (mbed-os-5.9.7)

Author SHA1 Message Date
Mika Leppänen 787ea51bad K64F, K66F: Update the ENET PHY driver
PHY init and autonegotation is split into own functions.
2018-06-29 17:10:17 +01:00
Mika Leppänen f1416c76fa Added delay to K64F/K66F ethernet TX when all descriptors are in use
Currently, if all TX descriptors are in use and IP stack calls K64F/K66F
ethernet driver link out, link out drops the packet. Added 10ms delay
to link out to wait for a descriptor to become available before dropping
the packet.
2018-06-29 17:10:17 +01:00
Mika Leppänen 9d062c0352 Non-blocking K64F/K66F ethernet power up
Changed K64F/K66F power up to return without waiting for link up i.e. for
the ethernet cable to be connected. This is needed for non-blocking use
of driver e.g. for using the driver from event queue.
2018-06-29 17:10:17 +01:00
Hasnain Virk 600efe9906 Remaining style fixes 2018-06-29 17:10:17 +01:00
Hasnain Virk e8f9f4d9f2 Adding valid frequency check for RXParamSetup cmd
We must check for a valid value of a frequency being sent
by the network server.
2018-06-29 17:10:17 +01:00
Hasnain Virk 6ab0c0b688 Adding port in trace & streamlining continuous RX2 2018-06-29 17:10:17 +01:00
Hasnain Virk 2db1b9a01d Queuing the automatic uplink
If the automatic uplink is sent directly the call-stack becomes larger than 1K
which may cause serious problems in debug builds. Just to have a respite between
RX and TX we queue an event for the automatic uplink rather than directly undergoing
an automatic uplink.
2018-06-29 17:10:17 +01:00
Hasnain Virk d10dee1449 Adding precise timing for receive delays
RX1 and 2 delays needed to be more precise and aggregate tx time was
drifiting because of timing difference between actual tx interrupt and
our processing of that interrupt ever so slightly.

We now take a timestamp of the tx interrupt and take a time diff while
instantiating delay timers. The timestamp is then used to update the aggregate
tx time.

Two new methods are introduced in the LoRaMac class which provide current
timing and current receive slot. These functions are used by LoRaWANStack
for its processing.
2018-06-29 17:10:17 +01:00
Teppo Järvelin 2cadd9d05c Cellular: fixed unit tests after rebase with latest changes. 2018-06-29 17:10:17 +01:00
Teppo Järvelin 33461805cb Cellular: Added power and sim greentea and unit tests. 2018-06-29 17:10:17 +01:00
Seppo Takalo cfe9225e4f Fix typo: WifiInterface -> WiFiInterface and add missing return.
Default WiFiInterface did not even build. And when it was fixed to build,
it was always returning NULL.
2018-06-29 17:10:17 +01:00
Seppo Takalo ecef1f55f7 Fix default interface selection by using correct macro names.
Code was written using MBED_CONF_DEFAULT_* but the mbed_lib.json file
that created these values is prefixed with "nsapi" and therefore
final macros are MBED_CONF_NSAPI_DEFAULT_*
2018-06-29 17:10:17 +01:00
Mika Leppänen 3bc03e3f5d Changed DNS global class definitions to singletons
This saves memory on platforms without network interface.
2018-06-29 17:10:17 +01:00
Mika Leppänen 50a79a6705 Disabled STM ethernet driver hardware checksum calculation
No need for driver level hardware IPv4/TCP/UDP/ICMP checksum insertion
since LWIP and nanostack handles those already.

Related to issue: https://github.com/ARMmbed/mbed-os/issues/7227
2018-06-29 17:10:17 +01:00
Vincent Coubard 8f29bf5b9e Nordic BLE: Accept connection parameter update
A peer device that sends a connection parameter update may get block if it doesn't receive a response.

This patch accept the peer request unconditionnally. At some point this event will be managed by the application.
2018-06-29 17:10:17 +01:00
David Saada dc3092fd9a Support erasing of more than one erase unit in the exhaustible block device 2018-06-29 17:10:17 +01:00
Kevin Bracey 1fde01c243 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-29 17:10:17 +01:00
Antti Yli-Tokola b60abe1c3b Update mbed-coap to version 4.4.4
Fixes one error: IOTCLT-2638 Hardfault during reconnection retry with Thread
2018-06-29 17:10:17 +01:00
Mika Leppänen 92a4cb2bc8 Added missing license to header of the file 2018-06-15 13:34:21 +01:00
Mika Leppänen dbbfdbc312 Added UBLOX_C027/ARCH_PRO memory configurations 2018-06-15 13:34:21 +01:00
Mika Leppänen eee607b51a Corrected TX buffer reclaim error
When all TX descriptors were reserved in a row so that TX buffer
reclaim interrupt did not happen during reservation sequence, after
the interrupt occurred, TX buffer reclaim did no longer free buffers.

This happened because when all descriptors were in use, last free
index pointed to consumed index.
2018-06-15 13:34:21 +01:00
Mika Leppänen b744b50dca Ported NXP LPCxx ethernet driver to unified EMAC 2018-06-15 13:34:21 +01:00
Teppo Järvelin 77b0fc371b Cellular: Semaphore wasn't released in easycellular release build. 2018-06-15 13:30:56 +01:00
Mika Leppänen f94b2ea263 Increased LWIP main worker thread stack size for debug builds
LWIP stack is configured to be 1200 as default. Without debug enabled,
maximum stack size used for asynchronous DNS operations is 880 bytes. With
debug enabled maximum used stack size is 1248. Added configuration
to LWIP to increase stack size by 25 percent when debug is enabled on build.
2018-06-15 13:30:56 +01:00
Teppo Järvelin 97cdbf769d Cellular: release resources in state machine. Made sure that athandler does not try process urc's after switch to data mode. 2018-06-15 13:30:56 +01:00
Yoshihiro TSUBOI 7bc411eedb Changed suggested things
Removed context check from do_user_authentication.
2018-06-15 13:30:56 +01:00
Yoshihiro TSUBOI b3ebb5229a Changed suggested points
Changed accessibility cellular features member functions, fixed minor target issues
2018-06-15 13:30:56 +01:00
ytsuboi 4b1d0875b7 Adding platform 2018-06-15 13:30:56 +01:00
Teppo Järvelin a771f0458a Cellular: fixed unit tests to compile after rebasing to latest. 2018-06-15 13:30:56 +01:00
Teppo Järvelin 64e8363d69 Cellular: added more unit tests for CellularDevice. 2018-06-15 13:30:56 +01:00
Teppo Järvelin d5a6baf5cd Cellular: added greentea test for cellular device. 2018-06-15 13:30:56 +01:00
paul-szczepanek-arm bf6407e3b7 check that flags have the IRK stored before retrieving it 2018-06-15 13:30:56 +01:00
paul-szczepanek-arm d07d966d0f missing return
function would potentially send a reject and accept at the same time
2018-06-15 13:30:56 +01:00
Kevin Bracey 172c69ec0d Correct PPPCellularInterface::get_gateway()
Two cascading copy-paste errors stopped this working:

  * PPPCellularInterface::get_gateway() called
    nsapi_ppp_get_ip_address();
  * nsapi_ppp_get_gateway() called the interface's get_netmask().

First bug has always been there - second one was introduced in 5.9.

AT_CellularNetwork currently lacks calls to get both netmask and gateway
- this patch would be needed for that when added.
2018-06-15 13:30:56 +01:00
Ari Parkkila 09e14567fe Cellular: Disable Greentea tracing to consume less memory 2018-06-15 13:30:56 +01:00
Kevin Bracey 0e676883c8 NSAPI: Use IPv6 conversion routines from frameworks
Share IPv6 conversion code with mbed_trace, Nanostack and
mbed client.

Output formatting is better, being conformant to RFC 5952.
2018-06-15 13:30:56 +01:00
Russ Butler 607f78213d Fix USB on Kinetis devices
Set correct SYSMPU register for proper USB operation.  This bug was
introduced when the SYSMPU register names and defines were updated
in the commit:
"K64F: Updated the SYSMPU SDK driver"
93f8cfed05
2018-06-15 13:30:56 +01:00
Ari Parkkila 0aff4e836b Cellular: Enable AT debug also when mbed-trace is disabled 2018-06-15 13:30:56 +01:00
Teemu Kultala 80464502fa more effective port randomisation 2018-06-15 13:30:56 +01:00
Teemu Kultala 394b2f157d random socket port number 2018-06-15 13:30:56 +01:00
Teppo Järvelin 33653e89e3 Review fix: - set ppp_active false if close fails in ppp disconnect. - unset sigio in ppp disconnect - take ownership of filehandle in CellularNetwork::disconnect even in case of failure 2018-06-15 13:30:56 +01:00
Teppo Järvelin 7a53ed276e Fixed ppp disconnect hangs when connection failure. 2018-06-15 13:30:56 +01:00
Amanda Butler 0d8b331eb0 Copy edit README.md
Tweak bullet's phrasing to clarify meaning
2018-06-15 13:30:56 +01:00
David Saada 4d7a15e0f1 Fix NVStore README file (changed APIs) 2018-06-15 13:30:56 +01:00
Kimmo Vaisanen 58230e0786 Lora: Check for valid ABP params
Check that ABP dev_addr and nwk_id is non-zero and keys are not null.
2018-06-15 13:30:56 +01:00
Hasnain Virk e6e3993d4a dr_range bitfield should be unsigned integer
If the value is an integer, the 4th bit is used for sign, so you can store
values upto 7 only whereas the datarate values could go upto 15. That's why
we need to turn this to an unsigned integer so that the last bit can also be used.
2018-06-15 13:30:56 +01:00
Hasnain Virk 1a074acbb5 Style changes only
Travis astyle check pointed out some of the style mismatches in the code.
Not all of them are worth changing as they make the code unreadable and
some of them are semantically wrong.

So in this commit, we have attempted to pick the most important style
mismatches and rectify.
2018-06-15 13:30:56 +01:00
Hasnain Virk c705f94e49 Moving missing public data structures
A few of the structures were missing from the storage space which is
visible topublic APIs. Suc structures are now being added.
2018-06-15 13:30:56 +01:00
Kimmo Vaisanen 05ee60f8cb Lora: All API methods should check if stack has been initialized 2018-06-15 13:30:56 +01:00
cyliangtw 790d24740a Support default tz_module for event loop & lwip 2018-06-15 13:30:56 +01:00
Kevin Bracey cfed8228eb Nanostack EMAC - avoid initialisation race
Hard fault was possible if packet reception occurred during
initialisation. Adjust start-up ordering and add NULL check to
avoid.
2018-06-15 13:30:56 +01:00
Kevin Bracey b2a6e94cd8 Kinetis EMAC: Correct TX ring pointer array size
TX pointer array was using RX ring length in its declaration.
Wasted memory if RX ring > TX ring, as is the default, but would
be broken if RX ring < TX ring.
2018-06-15 13:30:56 +01:00
Kevin Bracey cedccc7daf Kinetis EMAC: Make number of buffers configurable
16 RX buffers and 8 TX buffers is probably excessive. Nanostack
version of driver successfully used 4+4, and data pump should be
broadly equivalent.

This means that switching K64F devices from Nanostack to EMAC increases
base heap usage by 18K - observed in Nanostack border router builds.

Add a config option to make it possible to lower the number of buffers.
Defer consideration of lowering the default to later.
2018-06-15 13:30:56 +01:00
Michael Schwarcz 4a4c9069f7 Upgrade uvisor to v0.31.1 2018-06-15 13:30:56 +01:00
Kevin Bracey 7c3c8c9d01 Make Nanostack C++ constructor initialise Nanostack
Nanostack object constructor didn't actually initialise Nanostack.
Nanostack initialisation was deferred until an interface was actually
attached to the stack, which generally happened at first interface
connect.

Not normally a problem, unless you're trying to make direct Nanostack
setup calls prior to connect - some applications do this, and were
relying on ThreadInterface::initialise to do Nanostack
initialisation.

Unfortunately in 5.9 ThreadInterface::initialise no longer does
initialise Nanostack immediately, because the mesh interfaces were
aligned and integrated with the Ethernet interfaces, which did
initialisation on connect().

Make the Nanostack object constructor initialise Nanostack (as the LWIP
constructor does for lwIP), so calling Nanostack::get_instance() is the
5.9 API for Nanostack initialisation.

For future work, APIs like ns_file_system_set_root_path should be
exposed as methods of Nanostack, so everything happens with a single
Nanostack::get_instance().file_system_set_root_path().
2018-06-15 13:30:56 +01:00
Mika Leppänen f0bea4b0a9 Fixed DNS resolution in case all sendto operations fail
DNS resolver now counts how many sendto operations are successful
during one DNS server attempt cycle (attempting to contact DNS
servers from 0 to last index, including stack specific ones). If all
socket sendto operations fail, DNS resolution is aborted.

If one or more are successful, DNS resolution is continued until
total network attempts count is reached or all sendto operations
fails during a cycle.
2018-06-15 13:30:56 +01:00
Andrew Leech 5d751dfb8f Move mbed_lib.json from targets folder to feature_ble folder The functionality added all affects BLE features in use so this location is a better fit. 2018-06-15 13:30:56 +01:00
Andrew Leech c0341fa363 Allow configuration (via defines) of some of the key settings for the NRF51 softdevice. * CENTRAL_LINK_COUNT * PERIPHERAL_LINK_COUNT * gatts_enable_params.attr_tab_size * gatts_enable_params.service_changed * common_enable_params.vs_uuid_count
These settings control the range of functionality enabled in the softdevice as well as ram consumption.
In particular reducing these values is critical to enable usage of 16K nrf51 devices.
2018-06-15 13:30:56 +01:00
Yossi Levy 57ea7e188f Fixing some coverity issues. 2018-06-15 13:30:56 +01:00
Andrew Leech 2ba88ba8f6 Redirect NRF asserts to mbed error() in TARGET_NRF5x and SDK 14.2 Add related details to TARGET_NRF5x Readme's 2018-06-15 13:30:56 +01:00
Andrew Leech 97ba13b773 Enable ASSERTS's in nrf sdk to catch coding errors.
These will now flow through to mbed standard error handling.
2018-06-15 13:30:56 +01:00
Donatien Garnier d55cc644ab Cordio H4: Added some comments explaining the use of RawSerial as opposed to using Serial 2018-06-15 13:30:56 +01:00
Donatien Garnier 88e06862c3 BLE: Replace Serial with RawSerial in Cordio H4 Transport Driver 2018-06-15 13:30:56 +01:00
Mirela Chirica 51a3be6caf Cellular: BC95 socket creation to fail on missing socket id in the response 2018-06-15 13:30:56 +01:00
Veijo Pesonen 35f980ba4f gethostbyname won't accept empty name
Considers both versions - synchronous and asynchronous. Earlier the
underlying stack was trusted to do this check.
2018-06-15 13:30:56 +01:00
Mika Leppänen e703861333 Corrected asynchronous DNS functionality
- Set network stack to store event queue so that mbed::mbed_event_queue() call
  is not needed every time call_in() is called
- Added dns state variables and enum (states are: created, initiated and cancelled)
- Corrected DNS response handling so that if DNS server returns that host name is
  unknown the DNS query is not tried again
- Reorder mutexes in nsapi_dns_query_multiple_async()
- Created nsapi_dns_query_async_initiate_next() function to initiate the next
  DNS query from the queue after delete of previous query
- Added dsn_timer_running variable to supervise DNS timer start/stop
- Changed cancel function to only mark query as deleted and moved deletion
  to timer function. This allows to run socket close on DNS thread
- Added new nsapi error NSAPI_ERROR_TIMEOUT for DNS (and other) timeouts
2018-06-15 13:30:56 +01:00
Ari Parkkila 5cd450ce70 Cellular: Fix AT URC handler not to dismiss incoming chars 2018-06-15 13:30:56 +01:00
Kari Haapalehto a4ff62e145 Add check for _interface 2018-06-15 13:30:56 +01:00
Mirela Chirica 2b2f53e92f Cellular: Added ENOTTY define in mbed_retarget stub 2018-06-15 13:30:56 +01:00
Mirela Chirica ca0ba7727a Cellular: Added missing copyrights 2018-06-15 13:30:56 +01:00
Mirela Chirica 3586af6da7 Cellular: Unit tests fixes 2018-06-15 13:30:56 +01:00
Teppo Järvelin 7944db6411 Cellular: review fixes. 2018-06-15 13:30:56 +01:00
Teppo Järvelin 79739de1aa Cellular: review changes. 2018-06-15 13:30:56 +01:00
Teppo Järvelin 0c23935cae Cellular: Fixed connect-disconnect sequence can now be called multiple times. 2018-06-15 13:30:56 +01:00
Krzysztof Stachowiak e5b59ab945 Update Mbed TLS after corrections for the import procedure 2018-06-08 09:23:59 +01:00
Krzysztof Stachowiak 1a6028b60d Update MbedTLS to 2.10.0 (from an RC) 2018-06-08 09:23:59 +01:00
Krzysztof Stachowiak 1394b03e64 Update Mbed TLS do version 2.10.0-rc1 2018-06-08 09:23:59 +01:00
Krzysztof Stachowiak 9f71d5fcb5 Improve the documenting comment in a config adjustment script 2018-06-08 09:23:59 +01:00
Krzysztof Stachowiak 4b3f8d5869 Add configuration options to enable CMAC in mbedtls by default 2018-06-08 09:23:59 +01:00
Vincent Coubard f4089a0d74 BLE Nordic: Initialize and teardown tls platform context 2018-06-05 15:05:18 +01:00
paul-szczepanek-arm bf4a8040f0 fix erroneous assert 2018-06-05 15:05:18 +01:00
paul-szczepanek-arm ab51109a9c check for invalid param 2018-06-05 15:05:18 +01:00
paul-szczepanek-arm 5aaca082f0 fix not updating size of array 2018-06-05 15:05:18 +01:00
Oren Cohen ac03c12eed Update uvisor_deprecation.h 2018-06-05 15:05:18 +01:00
Oren Cohen 78de5c3950 Edit warning about FEATURE_UVISOR being deprecated 2018-06-05 15:05:18 +01:00
Ron Eldor 54e2bae638 Remove redundant Cryptocell libraries
Remove additional redundant libraries, that were accidently added in merges
2018-06-05 15:05:18 +01:00
Martin Kojtal 5d8570be39
Merge pull request #7030 from kjbracey-arm/emac_ppp_fix
Fix lwIP PPP glue
2018-05-28 15:19:12 +02:00
Martin Kojtal 501a7b6949
Merge pull request #7009 from bulislaw/merge_feature_branches_for_5.9
Bring in improved HAL APIs to master
2018-05-28 12:31:14 +02:00
Kevin Bracey cedbf72a3b Fix lwIP PPP glue
EMAC changes broke PPP glue - fix it up. In particular, PPP steals
the netif->state pointer, so we can't use it as a back pointer to
our LWIP::Interface.
2018-05-28 10:30:42 +03:00
Cruz Monrreal e3aa140aaa
Merge pull request #6981 from yogpan01/master
Remove ns_event_loop_thread_start() from NDInterface and ThreadInterface connect()
2018-05-25 16:51:04 -05:00
Cruz Monrreal 5709c04cae
Merge pull request #7019 from mikaleppanen/lwip_lpc_mem_conf
Made lwip memory configuration more specific for NXP targets
2018-05-25 12:47:29 -05:00
Bartek Szatkowski a92ff94904 Fix rebase error 2018-05-25 12:20:10 -05:00
Cruz Monrreal c0895cb832
Merge pull request #6910 from hasnainvirk/metadata
LoRaWAN: Adding acquisition of metadata, backoff and a cancel_send() API
2018-05-25 11:11:50 -05:00
Martin Kojtal 7031ab1c1f
Merge pull request #7015 from SeppoTakalo/fix_odin
Fix build for MBT_ODIN_W2 and MBED_CONNECT_ODIN when using WiFi
2018-05-25 16:29:54 +02:00
Cruz Monrreal 61eb0e170d
Merge pull request #7012 from ARMmbed/AnotherButler-patch-1
Enable DeviceKey class reference for Doxygen
2018-05-25 08:25:17 -05:00
Cruz Monrreal a348b4583d
Merge pull request #7000 from kfnta/uvisor_depr
Add warning about FEATURE_UVISOR being deprecated
2018-05-25 08:24:26 -05:00
Mika Leppänen 7a1703de23 Made lwip memory configuration more specific for NXP targets
There is a configuration problem with UBLOX_C027 cellular because of missing
LWIP memory configuration for the target.

Added configuration for LPC1768, LPC4088, LPC4088_DM targets and changed
NXP to more specific LPC546XX.
2018-05-25 12:48:35 +03:00
Seppo Takalo f989f6838b Fix build for MBT_ODIN_W2 and MBED_CONNECT_ODIN when using WiFi
Odin WiFi driver was only supplied for EVK board.
These all are just the same module, so using the main target name
that all inherit.
2018-05-25 10:54:09 +03:00
Cruz Monrreal 25fb8e3cf0
Picking a deprecation warning and moving forward 2018-05-24 19:49:35 -05:00
Amanda Butler 44dc8624d5
Enable DeviceKey class reference for Doxygen
Add conditional, so Doxygen renders properly.
2018-05-24 18:59:12 -05:00
Cruz Monrreal 5ce26b1306
Merge pull request #6927 from AriParkkila/cellular-debug
Cellular: AT debugging improved
2018-05-24 12:35:06 -05:00
Cruz Monrreal 527f9a12fd
Merge pull request #6983 from SenRamakri/sen_ErrorHandling_Push2
Standardized Error Handling and Error Codes
2018-05-24 10:57:00 -05:00
Cruz Monrreal 791620c428
Merge pull request #6932 from paul-szczepanek-arm/security-manager-dev
BLE privacy, signing, persistent security database
2018-05-24 10:07:06 -05:00
Cruz Monrreal 06180e89f7
Merge pull request #6642 from yossi2le/yossi-device-key-driver
Device key implementation
2018-05-24 10:06:14 -05:00
Cruz Monrreal 2f86c152f0
Merge pull request #6794 from RonEld/cc310_porting
Cryptocell 310 support
2018-05-24 10:05:46 -05:00
Kevin Bracey 13dcef63e3
Merge pull request #6847 from ARMmbed/feature-emac
Merge feature-emac branch into master
2018-05-24 16:47:04 +03:00
Hasnain Virk 9973eb3e79 Stability improvements & CRYPTO_ERROR addition
General stability improvements are performed.
A flag is added if a Class C RX2 window is open.
We shouldn't open it again if its already opened.

TX_CRYPTO_ERROR is renamed to CRYPTO_ERROR.
Keeping TX_CRYPTO_ERROR for backwards compatibility.
2018-05-24 15:59:07 +03:00
Hasnain Virk 0feb0efb89 Adding checks for stack initialization
Metadata APIs should return an error if the stack is not initialized yet.
2018-05-24 15:54:32 +03:00
Hasnain Virk 3020d658bf Travis astyle corrections
The scope of style corrections is local to this PR only.
2018-05-24 15:54:32 +03:00
Hasnain Virk 2bc8e4e847 Adding ack expiry handling for class C
In Class C, rx timeout does not take place for RX2 windows, so if we have
not received anything, we would be retrying but if the no. of retries are
maxed out, and we have not recieved anything yet, we need a mechanism to
tell the upper layer that this has happened.
2018-05-24 15:54:32 +03:00
Hasnain Virk b0ce443f5b Doing away with rx_abort()
rx_abort() was sort of dead code as it was doing essentially nothing.
It might have actually meddled with the state machine if it was hit by
invoking on_ack_timeout_timer_event().

State machine and corresponding processors now take care of the ack timeout,
retries and all other bits, so we don't need abort_rx().
2018-05-24 15:54:32 +03:00
Hasnain Virk 375e1b711d Adding useful trace and setting no. of retries
MCPS confirmation should be filled with the current number of retries
if the ack is not recieved for a CONFIRMED message.

Ack retry number needs to be incremented after the retry is made not before
that.

A few traces are added at the crucial junctions of the code just to tally with
the conceptual flow for debug purposes.
2018-05-24 15:54:32 +03:00
Hasnain Virk 26b28f78af Adding ability to cancel outgoing transmission
Application can use cancel_sending() API to stop any outstanding, outgoing
transmission (a TX which is not already queued for transmission). This can
potentially enable use cases where the application could cancel a transmission
and go to sleep if the backoff period is long enough rather than waiting for
the transmission to happen.
2018-05-24 15:54:32 +03:00
Hasnain Virk 8363311c7a Adding acquisition of backoff time value
This API enables the application to get hold of remaining time after which
the transmission will take place. User can query the backoff time whenever
there is a packet in the TX pipe. If the event for the backoff expiry is
already queued, the stack does not provide backoff metadata.
2018-05-24 15:54:32 +03:00
Hasnain Virk 387f56c738 Adding acquisition of RX meta data
User can now inquire about any RX meta data available after a
successful reception.
2018-05-24 15:54:32 +03:00
Hasnain Virk 555d945a42 Adding acquisition of TX Meta-data
An API is added to fetch any meta-data available after a succesful
transmission. The stack will make the meta data available after the
TX interrupt is processed. User can get the tx meta data after receiving
TX_DONE event.
2018-05-24 15:54:32 +03:00
Danny Shavit aa38778a58 Add warning about FEATURE_UVISOR being deprecated 2018-05-24 13:46:30 +03:00
Martin Kojtal d8cb72a0a2
Merge pull request #6273 from bulislaw/update_cmsis_5.3
Update cmsis/rtx to version 5.3
2018-05-24 09:37:40 +02:00
Cruz Monrreal 863259e48b
Merge pull request #6960 from hasnainvirk/msg_flags
LoRaWAN: Message flags correction
2018-05-23 22:22:53 -05:00
Senthil Ramakrishnan 5ef6728c08 Splitting MBED_ERROR macros to support ones with/without error value argument 2018-05-23 12:21:28 -05:00
Senthil Ramakrishnan 693a6c40bb Refactor error reporting 2018-05-23 12:21:11 -05:00
Senthil Ramakrishnan d4fe75731d Adding mbed prefixes to all macros and functions to avoid namespace conflicts 2018-05-23 12:21:10 -05:00
Senthil Ramakrishnan 147d9cac4e Test application/cases optimization for some low memory targets, macro changes and test fixes 2018-05-23 12:21:10 -05:00
Senthil Ramakrishnan 2e28dd95e1 Change set_error/set_error_fatal to warning/error, add itm support and other changes 2018-05-23 12:21:08 -05:00
Senthil Ramakrishnan 9041b475c6 Error handling/logging implementation and tests 2018-05-23 12:21:07 -05:00
Donatien Garnier f08ac2e9b2
Merge pull request #52 from pan-/fix-privacy-nrf52
Fix privacy nrf52
2018-05-23 11:50:28 -05:00
Vincent Coubard db4d14c89d BLE NRF52: Fix advertising filtering when no bonds are present. 2018-05-23 17:27:18 +01:00
Vincent Coubard ef208912a6 BLE NRF52: Report correct own address type for connection
The function that gets the address doesn't work when privacy is enabled; report own address as private resolvable.
2018-05-23 17:27:18 +01:00
Vincent Coubard 30dac7cd8c BLE NRF52: Fix identity address flag in connection request. 2018-05-23 17:27:07 +01:00
Vincent Coubard 1ba5a112f4 BLE: Fix wrong macro name for IAR 2018-05-23 17:11:26 +01:00
Cruz Monrreal eb9435b52e
Merge pull request #6772 from ARMmbed/g-littlefs-eilseq
littlefs: Map LFS_ERR_CORRUPT to EILSEQ
2018-05-23 10:12:19 -05:00
paul-szczepanek-arm de41355c5c Fix not processing all advertising reports if one is filtered out
filtering out individual reports instead of all
2018-05-23 14:24:54 +01:00
Paul Szczepanek f4b7f32793
Merge pull request #49 from pan-/fix-privacy-backward-compatibility
Fix privacy backward compatibility
2018-05-23 14:20:49 +01:00
Asif Rizwan 657ac3f643 WIFI_EMAC class renamed to OdinWiFiEMAC, Formatting
Revert "in ODIN emac initialization required before connection"
2018-05-23 12:25:21 +03:00
Kevin Bracey 7e4eb5c24b LPC546XX: Correct Ethernet length calculations
Subtract 4 from the received packet length - the buffer contains the
CRC, which we shouldn't pass up.

Ensure we allocate receive buffers of a size corresponding to the
rounded-up size we tell the hardware - the hardware was overrunning the
allocation by a couple of bytes.
2018-05-23 12:25:21 +03:00
Mahesh Mahadevan fc0ce8cb72 Add memory configuration for LPC546XX
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-23 12:25:20 +03:00
Mahesh Mahadevan 91ac8356ba LPC546XX: Add ENET support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-23 12:25:20 +03:00
Asif Rizwan 0b14f1277e EMAC adaption added, updated ODIN drivers to v2.5.0 RC1 2018-05-23 12:25:18 +03:00
Mika Leppänen ede07217df Corrected lwip netif flags to be set before power up
This enables that link up status callback can be called inside
power up function.
2018-05-23 12:25:17 +03:00
Kevin Bracey f3ec0dacd5 Add NetworkInterface::get_default_instance()
Provide an initial framework to make it easier to find a default network
interface.
2018-05-23 12:25:17 +03:00
Mika Leppänen e481c5ef75 Added memory manager set to add_ethernet_interface() of test stack
This allows that EMAC memory manager can be used to allocate EMAC driver
memory already after the add_ethernet_interface() call.
2018-05-23 12:24:11 +03:00
Mika Leppänen 31b8f73de7 Changed mutexes, delete and DNS call in callback set
- Changed mutexes to platform mutexes
- Removed not needed null check from delete
- Changed nsapi_dns_call_in_set() to use call_in_callback_cb_t and
added prototype to header
2018-05-23 12:24:10 +03:00
Mika Leppänen c4424ff0a1 Corrected more defects
- Serialized the sending of multiple async DNS queries since limits on event
message box sizes
- Added timer function that supervises the total time used to make DNS query
and triggers socket timeouts
- Changed nsapi_error_t to new nsapi_value_or_error_t on interface headers
- Corrected wording of gethostbyname_async return values
- Clarified .json options
- Added a new data type for socket callback that can be used from interrupts
- Corrected variable limits to use INT32_MAX etc. defines
- Changed mallocs to new
- Optimized variable sizes on DNS_QUERY definition
2018-05-23 12:24:10 +03:00
Mika Leppänen 1c01f5dda4 Corrected defects
- Changed call_in/call methods of the stack to callback provided by the stack
- Specified what are limitations for operations that are made in callback
- Added pure virtual class DNS that defines DNS operations
- Added cancel operation and unique ID to DNS request used in cancel
- Added DNS configuration options to netsocket/mbed_lib.json for retries,
  response wait time and cache size
- Changed host name to use dynamic memory in DNS query list and cache,
  set maximum length for the name to 255 bytes.
- Added mutex to asynchronous DNS
- Reworked retries: there is now total retry count and a server specific count
- Ignores invalid incoming UDP socket messages (DNS header is not valid), and retries DNS query
- Reworked DNS module asynchronous operation functions
- Corrected other review issues (nothrow new, missing free, missing mutex unlock etc.)
2018-05-23 12:24:10 +03:00
Mika Leppänen b7e8400c2c Added non-blocking DNS functionality to network interface
- Added non-blocking DNS interface to network interface and
  network stack.
- Added caching of DNS replies.
- Added a network stack function to get DNS addresses from stack.
- Added call and call_in hooks to onboard network stack to
  allow calling functions from onboard stack context.
- Added support to call and call_in functions to LWIP and
  Nanostack.
- Disabled LWIP DNS translator with the exception of DNS
  address storage used in DNS address get.
2018-05-23 12:24:10 +03:00
TomoYamanaka bad530ab0d Implementation of unified EMAC driver for Renesas mbed boards
Implementation of unified EMAC driver for Renesas mbed boards

Based on the driver so far, Renesas implemented the emac driver for GR-PEACH and VK-RZ/A1H.
The mainly changes is below.
- Add the connection part with LWIP according to the unified emac specification.
- Add three new multicast functions(add, remove, set_all).

The Greentea test netsocket and emac test passed.
2018-05-23 12:24:09 +03:00
cyliangtw 7bfa362492 [M487/NUC472] Fix tx frame length and remove GPL license 2018-05-23 12:24:09 +03:00
cyliangtw 401f09c479 [M487/NUC472] Support DHCP & TCP sample, also remove legacy emac 2018-05-23 12:24:09 +03:00
cyliangtw 89209b6cd5 [M487/NUC472] Support new EMAC feature, built OK 2018-05-23 12:24:08 +03:00
Mahesh Mahadevan 82b2a27a1c Kinetis EMAC: Renamed K64F files to Kinetis
This driver is used by more SoC's than K64F

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-05-23 12:24:07 +03:00