Commit Graph

151 Commits (922452d8d0bc0a846a4261de749cd01fcb423833)

Author SHA1 Message Date
Kimmo Vaisanen a66f15dc4b Testing: Fix buffer overflow in ATHandler_read_bytes UT test
Fixes issue #12390
2020-02-10 09:52:39 +02:00
Martin Kojtal d847f9f164
Merge pull request #12305 from kivaisan/remove_multi_athandler_support_v2
Cellular: Remove support for multiple ATHandlers
2020-02-07 11:00:41 +00:00
Martin Kojtal 8dc15ee6e1
Merge pull request #12293 from mirelachirica/remove_empty_api
Cellular: Remove API's empty default implemetations
2020-02-06 09:05:40 +00:00
Kimmo Vaisanen bd0f939277 Cellular: Remove support for multiple ATHandlers
Major changes:
- Dependency to FileHandle removed from base classes
- AT_CellularDevice owns the default FileHandle and shares it with AT -classes
- Hang-up -detection moved as CellularContext::configure_hup(). Cannot be configured via CellularDevice any more.

Result on NRF52840_DK + BG96:
GCC:
Total Static RAM memory (data + bss): 29360(+296) bytes
Total Flash memory (text + data): 130660(-832) bytes

ARM:
Total Static RAM memory (data + bss): 261554(+8) bytes
Total Flash memory (text + data): 127573(-1193) bytes

IAR:
Total Static RAM memory (data + bss): 25479(+296) bytes
Total Flash memory (text + data): 102418(-527) bytes

RAM increase is because now ATHandler is no longer created with new -operator but is now member of AT_CellularDevice,
so image tool is able to count it. Actually total RAM consumption has decreased due to removed variables.
2020-01-23 09:27:44 +02:00
Mirela Chirica e2048b06b2 Cellular: Remove API's empty default implemetations 2020-01-21 10:45:09 +02:00
Ari Parkkila 2871721e08 Cellular: Refactor socket_stack_init() from generic to modem specific 2020-01-20 00:56:09 -08:00
Martin Kojtal ecf4d62dc5
Merge pull request #12265 from AriParkkila/cell-fea-refactor
Refactor unnecessary functions from cellular driver
2020-01-17 13:57:06 +00:00
Ari Parkkila f9eef97ead Cellular Refactor get_send_delay() into CellularProperty 2020-01-17 00:28:41 -08:00
Hugues Kamba 9e11e5b43d Cellular: Replace UARTSerial references with BufferedSerial
`BufferedSerial` is `UARTSerial` renamed to convey the original purpose
of the class. It is the recommended buffered I/O serial class.
2020-01-16 16:22:07 +00:00
Ari Parkkila ceea992b40 Cellular: Refactor is_protocol_supported() into CellularProperty 2020-01-15 23:04:00 -08:00
Ari Parkkila e2cb18061e Cellular: Refactor get_max_socket_count() into CellularProperty 2020-01-15 23:04:00 -08:00
Kimmo Vaisanen 0d525fff29 Cellular: Remove deprecated CellularDevice::stop()
CellularDevice::shutdown() should be used instead.
2020-01-14 10:47:05 +02:00
Martin Kojtal 1fb9dd7ddd
Merge pull request #12122 from AnttiKauppila/visibility_fixes
ATHandler refactoring
2020-01-09 12:05:08 +01:00
Kimmo Vaisanen 0d7cc428b1 Cellular: Move string_to_pdp_type method to CellularContext
string_to_pdp_type is only used in CellularContext classes and by having
the conversion method in CellularContext it can be used to check also
the non-standard Non-IP PDP type string.
2020-01-08 12:15:51 +02:00
Antti Kauppila 5553d0acd3 ATHandler class refactor
Refactored ATHandler class to have clear private and public elements
Also removed virtuality from ATHandler
Unittests updated to reflect changes
2020-01-07 17:15:27 +02:00
Antti Kauppila 36ca4d6516 ATHandler relocated
ATHandler is part of our API so header file was moved under API folder and .cpp file was moved under device/ folder
ATHandler is used in both AT and PPP mode so it has been in slightly wrong place at the beginning.
2020-01-07 17:15:27 +02:00
Martin Kojtal 3e790cc9ab
Merge pull request #12065 from AriParkkila/cell-fea-nidd
Non-IP socket implementation for NIDD over CP
2020-01-07 15:55:15 +01:00
Ari Parkkila 913cbd96a6 Cellular: Change 3GPP TS 27.007 NIDD to async
Add a missing license header.
Remove semaphores and add +CRTDCP to support async operation.
Fix delete context and disconnect to execute just once.
Add support for NONIP PPD type.
Change CellularNetwork::clear() to virtual so it can be overridden.
2020-01-06 22:35:18 -08:00
Kimmo Vaisanen 6c647104c7 Cellular: Move cellular event queue thread ownership to CellularDevice
Earlier CellularDevice has owned event queue used by cellular (state machine and ATHandler for example),
but the thread used to dispatch the queue has been owned by state machine.

This commit moves the event queue thread to CellularDevice so now the ownership of cellular event queue
is in one place.
2020-01-07 08:28:30 +02:00
Antti Kauppila 40fcdb731b Unittest cleanup made
CellularDevice still had the old way of defining built time defines and is now removed.
Other unittests needed some minor fixes after this.
2019-12-11 12:05:02 +02:00
Antti Kauppila bda2d37bda Unittests fixed
PRs 12051 and 11996 were merged simultaneously without running tests in between.
This caused unittests to brake and those are fixed with this commit.
2019-12-10 18:02:14 +02:00
Martin Kojtal f10e4ac04b
Merge pull request #11996 from ARMmbed/feature-cellular
Feature cellular
2019-12-10 14:54:57 +01:00
Antti Kauppila e51230c5e4 Remove CellularBase and AT_CellularBase
Removed CellularBase and AT_CellularBase from cellular stack and updated both code and unittests accordingly.

Moved property handling into AT_CellularDevice
2019-12-09 15:25:22 +02:00
Antti Kauppila aac3437a22 Cleaned up athandlertest.cpp 2019-12-09 14:09:42 +02:00
Antti Kauppila d6706d1a5f Unittest configuration mechanism improved
Earlier all unittests ended up having all flags in common from all unittest targets.
This is now improved by using googletest provided mechanism to set build time compile options
All cmake files have been modified to reflect changes (when needed)

Could not figure out a syntax for {0x00, 0x00, ..., 0x00} intitializer list yet,
so those needs to be setup by updating C/CXX flags.
2019-12-09 13:11:56 +02:00
Martin Kojtal ffdd54315f
Merge pull request #11941 from michalpasztamobica/remove_internal_string_apis
Remove string-based API usage within mbed-os
2019-11-28 14:26:03 +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
Martin Kojtal 58d6f5f39f
Merge pull request #11873 from AnttiKauppila/disable_sms
Make SMS configurable in Cellular stack
2019-11-27 09:03:55 +01:00
Antti Kauppila 353782bf63 Disable SMS by default from Cellular stack
Put SMS behind configuration flag to save some memory (4,5kB) for Cellular users not needing SMS features.
UBlox N2XX target is also updated
2019-11-25 11:38:06 +02:00
Seppo Takalo c54d76eddf Allow MBED_ASSERT to throw errors in unittests, so we can verify it.
GoogleTest allows you to check whether certain function throws errors.
For example:
ASSERT_ANY_THROW(mbed::HeapBlockDevice one(3050, 100));
or
ASSERT_NO_THROW(bd.init());

As MBED_ERROR is now only function that can throw errors, there is
no need to check the type of thrown object.
2019-11-22 13:10:46 +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
Martin Kojtal fe940924cc
Merge pull request #11683 from AnttiKauppila/baremetal_support
Baremetal profile fixes
2019-11-04 15:53:57 +01:00
Mirela Chirica c484fc88f9 Cellular: Added set routine for baud rate 2019-11-01 17:21:31 +02:00
Antti Kauppila ac0b0f1f2c Unittests fixed 2019-11-01 15:22:28 +02:00
Anna Bridge ad891d9658
Merge pull request #11548 from AriParkkila/cell-dns-ip
Cellular: Fix resolving of DNS server IPv4/6 address
2019-10-07 16:46:47 +01:00
Ari Parkkila 8054b8eef8 Cellular: Fix resolving of DNS server IPv4/6 address 2019-09-25 03:16:45 -07:00
Kimmo Vaisanen 6ba0efc969 Cellular: Use more specific error codes for socket open and connect
- When calling socket APIs when socket is not open, NSAPI_ERROR_NO_SOCKET will be
  returned instead of generic NSAPI_ERROR_DEVICE_ERROR

- If socket_send() is called when connection is not open, NSAPI_ERROR_NO_CONNECTION
  will be returned instead of generic NSAPI_ERROR_DEVICE_ERROR
2019-09-25 09:25:33 +03:00
Martin Kojtal d91ed5fa42
Merge pull request #11495 from kivaisan/improve_cellular_ut
Improve cellular unittests
2019-09-24 16:37:02 +02:00
Martin Kojtal 1afece7f1b
Merge pull request #11488 from kivaisan/fix_cellular_get_interface_name
Cellular: Fix get_interface_name to not include leading zero
2019-09-19 12:43:45 +02:00
Kimmo Vaisanen da77cdc52e UT for CellularDevice get/set timeouts methods 2019-09-17 12:56:47 +03:00
Kimmo Vaisanen b6ecce0bfb Add UT for AT_CellularNetwork::is_active_context 2019-09-17 12:56:47 +03:00
Kimmo Vaisanen 02de20acb6 Add UT for CEREG URC handler 2019-09-17 12:56:47 +03:00
Kimmo Vaisanen d83f52a2a1 Improve UT for cellular properties 2019-09-17 12:15:18 +03:00
Kimmo Vaisanen e824714cd8 Add UT for CellularUtil::hex_to_char and ::hex_str_to_char_str
Also added checks for pointer validity.
2019-09-17 12:15:03 +03:00
Kimmo Vaisanen 0b9e80f76e Unittests for CellularList 2019-09-17 10:45:01 +03:00
Ari Parkkila 823993e7b1 Cellular: Add flow control (IFC) in BG96 AT driver 2019-09-16 03:16:36 -07:00
Kimmo Vaisanen ab71b2dba8 Cellular: Fix get_interface_name to not include leading zero
Multihoming documentation about interface name:
"Two character name string is concatenated with 8 bit value containing index which is incremented on each netif addition"

Cellular uses context id as index and to follow LWIP (LWIP::Interface::get_interface_name), index does not include leading zeros.
2019-09-16 09:59:31 +03:00
Ari Parkkila cb20277701 Cellular: Fix BG96 power on and connect 2019-09-04 03:24:11 -07:00
Teppo Järvelin 753ba8ceb6 Cellular: fix ATHandler destructor possible crash on delete
In some multithread cases there is possibility that process_oob function
was called after ATHandler was deleted. Fix is to wait if oob processing
is ongoing.
2019-09-03 09:09:05 +03:00
Martin Kojtal 5c09ff12ac
Merge pull request #11220 from jarvte/fix_cellular_dns_test
Fix cellular dns test with IAR compiled binary
2019-08-22 10:57:22 +02:00