Commit Graph

257 Commits (mbed-os-5.13.2)

Author SHA1 Message Date
Martin Kojtal 8de11211d7 Watchdog: remove VirtualWatchdog
We will provide documentation how to create your own VirtualWatchdog. It's simple,
create timeout and watchdog objects.

This class brought lot of discussion and questions. After our refactor we made this class
just a linked list of objects - something tickers can do as well (they already have linked list) and handling hw should be
done via Watchdog due to the limitations (timeout can be set only once per app!).
2019-07-11 11:55:29 +01:00
Filip Jagodzinski 95f38c3383 Watchdog: Fix unittests
Compare get_timeout against the last timeout successfully set.
Merge most of the test cases into one. Do not rely on the tests
execution order.
Fix the watchdog_api_stub to keep timeout value set by init function.
2019-07-11 11:55:29 +01:00
Martin Kojtal 8024e405f8 Watchdog: remove config value for timeout, set it dynamically
Use start method to set timeout
2019-07-11 11:55:29 +01:00
Martin Kojtal 1acd3d3db3 VirtualWatchdog: process fail test expects 0 as reset - no ticker running 2019-07-11 11:55:28 +01:00
Filip Jagodzinski db52d0068e Fix more unittest errors 2019-07-11 11:55:27 +01:00
Filip Jagodzinski 664c6ab82d Fix unittest errors 2019-07-11 11:55:27 +01:00
Martin Kojtal 90033869d9 unittest: add virtualwatchdog stub 2019-07-11 11:55:26 +01:00
Martin Kojtal b40258b1ef watchdog unittest: fix naming after refactor 2019-07-11 11:55:26 +01:00
Martin Kojtal d7e2943fbe unittest: remove platform watchdog (moved to drivers) 2019-07-11 11:55:26 +01:00
Martin Kojtal 45a16847df unittest: move watchdog files to drivers
Test VirtualWatchdog and Watchdog
2019-07-11 11:55:26 +01:00
Martin Kojtal f30558bb37 unittest: rename watchdog to VirtualWatchdog 2019-07-11 11:55:26 +01:00
Martin Kojtal bc8fc539b6 Watchdog: update unittests 2019-07-11 11:55:25 +01:00
Martin Kojtal 2a26e1af4b watchdog: fix copyright 2019-07-11 11:55:18 +01:00
Rajkumar Kanagaraj 11b09a489a Fixed the unittest case failure 2019-07-11 11:55:15 +01:00
Rajkumar Kanagaraj 5150b37aea Update Watchdog
- Changed the process into static method
 - used the singletonptr for creating the low power ticker instance
 - Added the mbed stub into cmake build for cellularnonipsocket,loramacrypto
2019-07-11 11:55:15 +01:00
Rajkumar Kanagaraj 0a5ca29273 Incorporated the Reivew Comments 2019-07-11 11:55:15 +01:00
Rajkumar Kanagaraj 7cdbc3dccf Incorporated the Reivew Comments 2019-07-11 11:55:15 +01:00
Rajkumar Kanagaraj a644886d5d Fix for the Ci build issue 2019-07-11 11:55:14 +01:00
Rajkumar Kanagaraj 16b340ea60 SW watchdog unittest cases
-Added the mock class function to mock mbed_assert_internal
  -Added the unit test case to test start,kick,stop
  -Modified the interface api name from is_alive to process
  -added the unit test cases for process
2019-07-11 11:55:14 +01:00
Rajkumar Kanagaraj 563e3a328a Hw Watchdog UnitTest cases
-Added the unit test case for testing Hw watchdog
    -Added the supported stubs files
2019-07-11 11:55:14 +01:00
Antti Kauppila cd1c7863b7 Fixed unittests 2019-07-11 11:40:54 +01:00
Teppo Järvelin c87a7798a9 Cellular: AT_CellularContext disconnect in non-blocking mode
Disconnect was supporting only blocking mode.
2019-07-11 11:39:48 +01: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
Teppo Järvelin d559338b3b Cellular: fix unit test valgrind warnings
Stub files did have some memory leaks and using
unintialized variables.
2019-05-21 14:23:21 +03:00
Martin Kojtal 26aa16ff39
Merge pull request #10557 from jarvte/fix_cellularcontext_init
Cellular: Initialize CellularContext member variables in correct class
2019-05-15 08:48:54 +01:00
Martin Kojtal 3ea1c56124
Merge pull request #10147 from kjbracey-arm/atomic_bitwise
Assembler atomics
2019-05-13 14:18:05 +01:00
Teppo Järvelin e4ee870b2e Cellular: Initialize CellularContext member variables in correct class
CellularContext member variables were initialized in inheriting class.
Now in base class where they should be initialized so that every inheriting
class don't have to init them.
2019-05-10 11:43:48 +03:00
Ari Parkkila 830b4234e9 Cellular: Fix setting of statemachine timeout 2019-05-09 04:42:30 -07:00
Martin Kojtal 6d1b7596e6
Merge pull request #10490 from mirelachirica/at_read_string_stop_tag_ut
Cellular: Added UT for case when read_string buff size hits middle of…
2019-04-29 13:31:35 +01:00
Kevin Bracey 87396e0bf6 Assembler atomics
Reimplement atomic code in inline assembly. This can improve
optimisation, and avoids potential architectural problems with using
LDREX/STREX intrinsics.

API further extended:
* Bitwise operations (fetch_and/fetch_or/fetch_xor)
* fetch_add and fetch_sub (like incr/decr, but returning old value -
  aligning with C++11)
* compare_exchange_weak
* Explicit memory order specification
* Basic freestanding template overloads for C++

This gives our existing C implementation essentially all the functionality
needed by C++11.

An actual Atomic<T> template based upon these C functions could follow.
2019-04-26 13:12:35 +03:00
Mirela Chirica 4d58e58b6b Cellular: Added UT for case when read_string buff size hits middle of stop tag 2019-04-26 12:48:26 +03:00
Teppo Järvelin 9d67a8b61c Cellular: send disconnect to correct ctx
Disconnect was sent to all CellularContext classes even it concerned
one specific context. Some disconnect events are still sent to all
context classes. These event are coming from network and ment for all
context classes or event did not specify cid.
2019-04-17 13:53:40 +03:00
Martin Kojtal 5e73a83332
Merge pull request #10391 from lorjala/unittesting-example
Update the writing example in unit testing README
2019-04-16 09:09:09 +01:00
Amanda Butler 1d1e78cac5
Edit README.md
Edit file for consistent person.
2019-04-15 15:56:26 -05:00
Lari-Matias Orjala a4308426da add a code independent unit test writing example 2019-04-12 15:28:01 +03:00
Ari Parkkila e0f8b2116a Cellular: Fix CellularStateMachine timeout configurations 2019-04-09 22:02:38 -07:00
Cruz Monrreal d1672d0200
Merge pull request #10341 from mirelachirica/check_urc_resp_stop_1
Cellular: Check for URC during AT response stop
2019-04-09 11:05:56 -05:00
Teppo Järvelin 2470a3611c Cellular: new state machine state and better info from stm
Added new state (signal quality) and more information about progress
so application/driver can build recovery logic.
2019-04-09 13:44:45 +03:00
Mirela Chirica f100cd59c8 Cellular: Check for URC during AT response stop 2019-04-09 11:15:28 +03:00
Teppo Järvelin fe5f97895b Cellular: Fix deleting of state machine to correct class 2019-04-08 12:50:29 +03:00
Martin Kojtal 2369c12dea
Merge pull request #10269 from TeemuKultala/cellular_valgrind_fix
cellular: valgrind defect fix
2019-04-03 13:49:26 +02:00
Teemu Kultala 453d7b86af cellular: valgrind defect fix
at_cellulardevicetest.cpp: fix potential memory leak
at_cellularsmstest.cpp: fix potential memory leak, uninitialized memory conditional
athandlertest.cpp: fix potential memory leak, uninitialized memory conditional,
uninitialized memory read
ATHandler_stub.cpp, ATHandler_stub.h: fix potential memory leak, uninitialized memory conditional
2019-04-03 10:35:15 +03:00
Teppo Järvelin c6e5595cec Cellular: retry logic for CellularContext connect
State machine has retry logic until device is attached to network.
After this CellularContext does the context activation e.g. connect.
There was no retry logic for context activation. Added logic to
CellularContext level so it's available for at and (upcoming)ril layers.
2019-03-29 14:12:23 -05:00
Cruz Monrreal 4af3c38078
Merge pull request #10210 from jarvte/cellulardevice_from_context
Cellular: CellularContext must provide access to CellularDevice
2019-03-28 17:09:48 -05:00
Hasnain Virk cd3a032d2a Unit test fix for RX TOA change
The change had an impact on unittests and we needed to adjust the test
cases a little to accomodate the change.
2019-03-27 10:23:43 +02:00
Teppo Järvelin b0ee22c96b Cellular: CellularContext must provide access to CellularDevice
When using NetworkInterface::get_default_instance() application gets handle
to CellularInterface which is actually CellularContext derived from CellularInterface.
Application needs also handle to CellularDevice to open other interfaces.
2019-03-26 07:29:11 +02:00
Hasnain Virk 4c1b8a8816 Unit test fix LoRaPHY_stub
get_rx_window_params() API is changed. To reflect that changing the
stub.
2019-03-22 15:45:45 +02:00
Teppo Järvelin dba3d42362 Cellular: call AT+CGEREP after sim is ready
Current implementation did call AT+CGEREP before sim was ready
and it was failing in most modems.
2019-03-18 08:10:09 +02:00
Cruz Monrreal 6c4b4a5212
Merge pull request #10084 from mirelachirica/info_resp_issue_8829
Cellular: AT information response to return false on empty prefix
2019-03-16 22:59:24 -05:00
Cruz Monrreal dbb33ef423
Merge pull request #9801 from vmedcy/fix-eventqueue-h
Correctly include EventQueue.h
2019-03-16 22:52:40 -05:00