Commit Graph

868 Commits (01088647b91b6ace5b70ce153c09748e2195e4ff)

Author SHA1 Message Date
Hasnain Virk 01088647b9 Finalizing the public API for Cellular
* state machine corrections
* adding various standard API methods
* Addition/revision/enhancement of the nsapi_ppp glue layer
* Turning off debug by default
2017-05-31 15:02:11 +03:00
Hasnain Virk f602c936ff Redirecting LWIP debug trace to mbed-trace
This piece of code redirects LWIP debug trace to mbed-trace if configured.
This enables us to have universal traces.
2017-05-31 15:02:11 +03:00
Hasnain Virk 3b44f4758d Adding support for APN lookup
Mainly reutilizing code from ublox C027 support lib.
As we are using external PDP context, i.e., an external IP stack,
we will pass username and password to underlying stack running PPP.
We only support CHAP as the authentication protocol.
2017-05-31 15:02:11 +03:00
Hasnain Virk 93f436ebe0 Using DCD line to invoke poll() HUP
POSIX poll() provides a mechanism to attach a POLL_HUP event
if the modem or device hangs up on you. POLL_HUP and POLL_OUT are
mutually exclusive. We poll in the PPP_input() routine if the modem
hung up. If it did we stop the data consumption, close PPP and go back
to the driver for reserruction of AT parser and subsequent retries or
application specific actions.
This is achieved by attaching an interrupt to the DCD line of the modem.
When DCD line goes high (off), we have lost the carrier. So we record an
POLLHUP event using _poll_change().
2017-05-31 15:02:11 +03:00
Hasnain Virk 87a4580e5f Bug fixes & state machine corrections
In case of carrier lost, we would like to inform PPP data pump.
That involved setting up link status flag down semaphores.
mbed_lwip_bringup() and mbed_lwip_bringdown() had been Ethernet specific only.
We extend these routines to support PPP as well. Currently we support only one interface
at a time. However, future enhancement to multi interface support should be trivial.
2017-05-31 15:02:11 +03:00
Kevin Bracey 7e3c529d21 Unify LWIP Ethernet and PPP initialisation 2017-05-31 15:02:11 +03:00
Hasnain Virk 2abb078f27 Adding PPP link status callback
mbed_ppp_init() is extended to take a function ptr.
ppp_lwip will call this callback upon a change in ppp link status.
in the beginning, the Ublox driver waits until the PPP link is established properly.
2017-05-31 15:02:11 +03:00
Hasnain Virk 091396defe Adding mbed_trace to ppp_lwip
We introduce here mbed_trace to ppp_lwip shim layer.
If for some reason, FEATURE_COMMON_PAL is not included in the build,
dummies for trace functions are provided.
2017-05-31 15:02:11 +03:00
Kevin Bracey be00c1720b Separate LWIP core and Ethernet interface initialisation
Will allow LWIP to be initialised for PPP use.
2017-05-31 15:02:11 +03:00
Kevin Bracey ae7fd61d65 RAM optimizations
Trying to save RAM wherever possible for Ublox C027 platform
2017-05-31 15:02:11 +03:00
Kevin Bracey f37f265ed5 Add more LWIP JSON configuration, including PPP
Add configuration to control Ethernet, PPP and TCP support.

Replaces LWIP_TRANSPORT_ETHERNET/PPP defines formerly used by targets.

Ethernet and PPP can be enabled simultaneously.

DHCPv4 is now only enabled if IPv4 and Ethernet are both enabled - we
assume PPP uses IPCP for configuration.

PPP configuration adjusted to cope with LWIP 2.0 changes, and
optimised for RAM a little.
2017-05-31 15:02:11 +03:00
Kevin Bracey d0820d1ed3 Cope with different LWIP configurations 2017-05-31 15:02:11 +03:00
Kevin Bracey 7f136d5a35 PPP Interface for LWIP using FileHandle stream
This is a glue layer between LWIP PPP implementation and a device type FileHandle
stream. This enables an external interface which has a FileHandle, utilize LWIP network
stack via PPP, e.g., Cellular device, WiFi chips etc.
Its totally transparent to external device. Only thing this layer is interested in, is a
FileHandle. Similar is true for for the external device, it just hands over its stream to this
PPP layer and rest of the magic is done by this layer.
2017-05-31 15:02:11 +03:00
Kevin Bracey 533910cb87 Correct return type of FileHandle::size()
File size should be off_t, not size_t.
2017-05-31 15:02:11 +03:00
Sam Grove f438251aa3 Merge pull request #3936 from geky/bd-mbr
bd: Add MBR block device for standard storage partitioning
2017-05-30 13:04:50 -05:00
Sam Grove 3122abee84 Merge pull request #4230 from jamike/USBHostMSD_BockDevice
Usb host msd block device
2017-05-26 17:19:07 -05:00
Sam Grove 92e661b3c0 Merge pull request #4328 from nvlsianpu/remove_nrfsdk13_ble
Remove unwanted (and unused anymore) NRF5_SDK13 BLE port
2017-05-26 17:10:24 -05:00
Sam Grove ede77621d4 Merge pull request #4332 from yogpan01/master
Fix for blockwise observation failure
2017-05-26 17:03:17 -05:00
Sam Grove ef7ab92cb8 Merge pull request #4345 from ARMmbed/nanostack_update
Nanostack update
2017-05-26 17:01:29 -05:00
Sam Grove d11289b576 Merge pull request #4165 from adustm/can_init
fix #3863 Add an mbed API that allows the init of the CAN at the bus frequency
2017-05-26 10:45:19 -05:00
Sam Grove cb61fc5f81 Merge pull request #4333 from artokin/thread_interface_timeout
Adjust Thread interface connect timeout
2017-05-26 10:23:28 -05:00
Sam Grove 6a2d1bf870 Merge pull request #4340 from karsev/thread_med_support
Thread med support
2017-05-26 10:22:10 -05:00
Christopher Haster 3ee77e36f7 FAT: Fixed volume count check when formatted without MBR
This saves 64 blocks (32KB when used with 512B blocks) and drops
the minimum storage size from 64KB to 32KB.
2017-05-25 14:24:17 -05:00
Christopher Haster 3f92a15960 FAT: Added support for multiple active filesystems
- Increased _VOLUMES to 4
- Fixed a few issues in the FATFileSystem's _fsid
- Added tests for multiple partitions of fatfs
2017-05-24 11:18:47 -05:00
Christopher Haster d1468a68ab FAT: Removed implicit MBR from FAT filesystem during format
- Implicit MBR still allowed during mount
  - maintains storage compatibility
- Not needed
  - MBR utility is not exposed through the FAT filesystem,
    so the only used partition was always the first. Omitting
    the MBR is functionally equivalent
  - Saves a few blocks on storage for MBR + offset
    for FAT alignment
- Duplicated with MBRBlockDevice
  - The implicit MBR actually prevents nesting a FAT filesystem
    in the MBRBlockDevice
2017-05-23 11:56:00 -05:00
Christopher Haster 590a40d9bf bd: Added MBRBlockDevice for handling a master boot record on a block device 2017-05-23 11:55:57 -05:00
Jimmy Brisson a56f874510 Reduce size of heap block device test
to fit into smaller targets
2017-05-22 10:47:36 -05:00
Kari Severinkangas 4a438b6ab2 Thread minimal end device operating mode added 2017-05-19 11:30:11 +03:00
Sam Grove 8e8174ac66 Merge pull request #4274 from kjbracey-arm/dns_query_garbage
NSAPI - Don't send trailing garbage in DNS queries
2017-05-18 09:29:59 -05:00
Sam Grove 6a96481d4d Merge pull request #4311 from kjbracey-arm/lwip_cksum
Disable lwIP checksum-on-copy
2017-05-18 09:28:10 -05:00
Seppo Takalo 3126c3abf1 Update Nanostack to v6.1.0 2017-05-18 11:51:14 +03:00
Seppo Takalo ad094fc5b6 Merge commit 'dcfe6c8f37971fa8a587eb488aca0437ead84f29' as 'features/FEATURE_COMMON_PAL/sal-stack-nanostack-eventloop' 2017-05-18 11:45:57 +03:00
Seppo Takalo 92c284e85d Remove event-loop, to be added as a subtree 2017-05-18 11:15:02 +03:00
Arto Kinnunen 28a6fa1819 Adjust Thread interface connect timeout
Thread device needs to wait for connectivity:
-routers will create new network and get local connectivity
-end device will get connectivity once attached to existing network
-devices without network settings gets connectivity once
 commissioned and attached to network
2017-05-17 12:45:52 +03:00
Yogesh Pande 8062837848 Initialize remove_from_list flag to true 2017-05-17 02:32:14 -07:00
Martin Kojtal 8f295177ce Merge pull request #4317 from c1728p9/reduce_test_overhead
Reduce test overhead in preperation for CMSIS 5
2017-05-17 10:13:25 +01:00
Michel Jaouen 6401d48c17 USBHost : modify USB_10 since USBHostMSD inherits BlockDevice class 2017-05-17 09:04:39 +02:00
Michel Jaouen edbba13640 USBHostMSD : fix possible race condition during connection 2017-05-17 08:58:34 +02:00
Michel Jaouen d30a9a63d8 USHostMSD: rely on BlockDevice 2017-05-17 08:58:33 +02:00
Yogesh Pande 95b657bfee Fix for blockwise observation failure
This commit includes
 - Fix for https://github.com/ARMmbed/mbed-client/issues/481
 - Detailed Changelog available here https://github.com/ARMmbed/mbed-coap/compare/v4.0.3...v4.0.4
2017-05-16 22:04:53 -07:00
Andrzej Puzdrowski 64f2a9d467 remove unwanted (and unused anymore) NRF5_SDK13 BLE port. It was omited in https://github.com/ARMmbed/mbed-os/pull/4245. 2017-05-16 11:46:35 +02:00
Bartek Szatkowski 4f3aabc029 Reshuffled memory usage for heap block device tests on small targets
Revert removal of printfs. Make the block device size smaller.
2017-05-16 10:45:18 +01:00
Martin Kojtal c732739897 Merge pull request #4291 from jamike/USBHost_fix_target_stm_build
USBHost : fix build for TARGET_STM
2017-05-15 16:18:36 +01:00
Martin Kojtal 27a6965842 Merge pull request #4284 from mikaleppanen/lwip_randlib
LWIP random library and TCP sequence number improvements
2017-05-15 16:15:39 +01:00
Martin Kojtal ef56d9569b Merge pull request #4245 from nvlsianpu/merge_nrf52840_to_nrf5
[NRF5 + NRF52840]: Merge nrf52840 to [NRF5] sources
2017-05-15 16:10:32 +01:00
Martin Kojtal 07c8b214f6 Merge pull request #4235 from ARMmbed/nanostack-libservice
Nanostack libservice
2017-05-15 16:05:34 +01:00
Martin Kojtal d98da4089a Merge pull request #4231 from jamike/USBH0ST_TARGET_STM_HUB_SUPPORT
USBHOST hub support for TARGET_STM
2017-05-15 16:01:34 +01:00
adustm cd15589c45 Add header to the test main.cpp 2017-05-15 14:27:22 +02:00
jeromecoutant f027cf429b Add new CAN API test MBED_A30 2017-05-15 14:27:22 +02:00
Bartek Szatkowski 6a0fcd3c58 Reduce test overhead in preparation for CMSIS 5
Reduce RAM consumption so all tests can still be built when using
CMSIS/RTX5. Also reduce clutter by removing the per target stack size
defines in the tests.
2017-05-14 19:25:19 -05:00