Commit Graph

25704 Commits (0bb4c050b731b6fae4d972427e1dc3d118f7600c)

Author SHA1 Message Date
Przemyslaw Stekiel 874ff1fe22 tests-mbed_hal-sleep: add exception for STM LPTIM targets.
On some targets like STM family boards with LPTIM enabled an interrupt is triggered on counter rollover.
We need special handling for cases when next_match_timestamp < start_timestamp (interrupt is to be fired after rollover).
In such case after first wake-up we need to reset interrupt and go back to sleep waiting for the valid one.

On some targets like STM family boards with LPTIM enabled there is a required delay (~100 us) before we are able to reprogram LPTIM_COMPARE register back to back.
This is handled by the low level lp ticker wrapper which uses LPTIM_CMPOK interrupt. CMPOK fires when LPTIM_COMPARE register can be safely reprogrammed again.
This means that on these platforms we have additional interrupt (CMPOK) fired always ~100 us after programming lp ticker.
Since this interrupt wake-ups the board from the sleep we need to go to sleep after CMPOK is handled.

Background:
There is an errata in LPTIM specification that explains that CMP Flag
condition is not an exact match (COUNTER = MATCH) but rather a
comparison (COUNTER >= MATCH).

As a consequence the interrupt is firing early than expected when
programing a timestamp after the 0xFFFF wrap-around.

In order to
work-around this issue, we implement the below work-around.
In case timestamp is after the work-around, let's decide to program the
CMP value to 0xFFFF, which is the wrap-around value. There would anyway be
a wake-up at the time of wrap-around to let the OS update the system time.
When the wrap-around interrupt happen, OS will check the current time and
program again the timestamp to the proper value.
2019-05-31 14:16:34 +02:00
Martin Kojtal a8444bd6ff
Merge pull request #10651 from desowin/usbhost-set-address-wait
USBHost: Wait for device to implement SET ADDRESS
2019-05-31 12:37:19 +01:00
Martin Kojtal 523ad23a30
Merge pull request #10656 from jarvte/fix_cellularctx_destr
Cellular: AT_CellularContext disconnect in non-blocking mode
2019-05-31 12:35:59 +01:00
Martin Kojtal 8a5f25c2ea
Merge pull request #10663 from vmedcy/psoc6-cmsis
PSOC6: move cmsis.h and device.h out from psoc6pdl directory
2019-05-31 12:35:26 +01:00
Martin Kojtal 8aeba87f25
Merge pull request #10674 from ThunderSoft123/master
TARGET_TT: adding switches to PinNames
2019-05-31 12:35:10 +01:00
Martin Kojtal 7ebadbfac3
Merge pull request #10676 from jeromecoutant/PR_COMMON_CMSIS
STM32: common cmsis.h and device.h files
2019-05-31 12:34:53 +01:00
Martin Kojtal 34b4564371
Merge pull request #10680 from artokin/allow_compilation_withoout_nanostack
Add compilation flags to rf_configuration
2019-05-31 12:34:37 +01:00
Martin Kojtal 99b19098b8
Merge pull request #10686 from ale87jan/master
MAX32630.sct fix
2019-05-31 12:34:01 +01:00
Jaeden Amero 4feb15c76a mbed-crypto: Automatically enable entropy injection
Automatically enable entropy injection when the NV Seed feature is
requested on PSA targets. Add a warning note describing the state of the
current implementation of the entropy injection API.

Fixes #10720
2019-05-31 09:11:58 +01:00
Alexander Zilberkant d356ab84b2 Update requirement for manifest-tool
Set to version 1.5.2
2019-05-31 02:53:49 +03:00
Chris Trowbridge 7531c2bb56 Remove unneeded custom_board.h file 2019-05-30 14:16:29 -04:00
Mirela Chirica b57d978bbd Cellular: Added IPV6 and IPV4V6 as supported properties for BG96 2019-05-30 14:07:33 +03:00
Mirela Chirica ff2061aba4 Cellular: Fix requested socket id in socket_connect routines of BG96 and M26 2019-05-30 14:07:33 +03:00
Kevin Bracey f88cd3fbca Add C++14 sized delete operators
Correct C++14 operation of the alloc wrappers requires us to define
custom sized delete operators.

Their presence won't cause any problem for people compiling as C++03 or
C++11.
2019-05-30 10:07:21 +03:00
Antti Kauppila 83d62fbb9c astyle fixes 2019-05-29 20:13:22 +03:00
Kevin Bracey 03f1ac3ffd Atomics: GCC fix for M23 (ARMv8-M baseline)
Add unified syntax directives to make the atomic assembler work when GCC
is building for M23.

GCC actually uses unified syntax when compiling C code, but puts
`.syntax divided` before each piece of inline assembly when targetting
Thumb-1 type devices like M0 and M23 for backwards compatibility. We can
overcome this with our own `.syntax unified`.  The command-line option
`-masm-syntax-unified` intended to override this globally has been
broken from GCC 6 to 8.0.
2019-05-29 16:48:41 +03:00
Hugues Kamba e12889d8e1 microlib support: Fix build with Arm Compiler 6 and MicroLib
Building binaries with MicroLib and Arm compiler 6 has been failing
because of a bug in Arm compiler 6. The compiler introduces a
symbol, `__scanf_mbtowc`, which is not present in MicroLib C library.

The present commit adds a weak reference to the symbol to allow a
successful linkage. This is a temporary fix until the bug in the
compiler is fixed. It should be removed after the compiler bug is fixed.
2019-05-29 14:42:28 +01:00
Antti Kauppila 77e8374058 Cellular: Removed boiler plate code 2019-05-29 16:17:08 +03:00
Laurent Meunier 6f46fd3476 Add extra idle debug stack size in case all STATS are enabled 2019-05-29 13:19:25 +02:00
Ari Parkkila 73164710af Cellular: Fix socket connect on UBLOX_AT driver 2019-05-29 03:19:07 -07:00
Laurent Meunier 19b843d530 timeout_tests: do not call sleep from test thread
This is up to scheduler to call sleep when threads are inactive.
So the thread should simply wait for the semaphore for ever (or test timeout).
2019-05-29 11:48:36 +02:00
Filip Jagodzinski f4e6966e14 Remove RESET_REASON from MCU_NRF52840 2019-05-29 10:25:51 +02:00
ccli8 b4e5a53f48 Exclude mbed-hal-spm test for TrustZone chips
This is because for TrustZone chips like M23/M33, SecureFault is implemented in
secure-side and cannot pass on to non-secure side.
2019-05-29 16:09:03 +08:00
jeromecoutant 58994d88cd STM32H7: flash issue while erasing sector in Bank 1 2019-05-29 09:31:30 +02:00
Teppo Järvelin 8922eeb014 Cellular: add method to set authentication type to CellularContext
Authentication type must be able to set. It was hard coded to CHAP.
Added unit tests for CellularContext to be able to add test for new function.
2019-05-29 09:46:15 +03:00
Ronny Liu 8dabdd7bed bootloader support for GD32_F450ZI 2019-05-29 14:40:03 +08:00
Martin Kojtal 9cc1caa031
Merge pull request #10596 from kjbracey-arm/sem_acquire
Introduce Semaphore::acquire methods
2019-05-29 06:22:30 +01:00
Martin Kojtal cc491812a8
Merge pull request #10427 from kjbracey-arm/new_standards
Set compilers to C++14 and C11
2019-05-28 20:34:00 +01:00
Martin Kojtal 8fc2a3c92a
Merge pull request #10675 from 0xc0170/update-mbedtls-2.18.0-rc1
Update mbedtls 2.18.0 rc1
2019-05-28 20:24:18 +01:00
George Psimenos 9f66347bd3 Make buffer parameter const 2019-05-28 15:58:19 +01:00
George Beckstein af99f5ae1e Removed incorrect comment 2019-05-28 10:48:09 -04:00
aglass0fmilk 67cc3b0faf Added spdx identifiers and fixed indentation in targets.json 2019-05-28 10:48:09 -04:00
George Beckstein cd3d939b5d Astyle fixed USBPhy_Nordic.cpp 2019-05-28 10:48:09 -04:00
George Beckstein 5386b87693 Removing systick edit from sdk_config.h 2019-05-28 10:48:09 -04:00
George Beckstein d8fbdfcac3 Disabling systick 2019-05-28 10:48:09 -04:00
George Beckstein 058060711d Revert adding USB to STM32F407VG target 2019-05-28 10:48:09 -04:00
George Beckstein 002df471e0 Changed formatting, check if endpoint is stalled in unstall. Added errata header 2019-05-28 10:48:09 -04:00
aglass0fmilk 457691f392 Fixed failure on endpoint test data toggle reset (under Windows): "Data toggle not reset when calling ClearFeature(ENDPOINT_HALT) on an endpoint that has not been halted." 2019-05-28 10:48:09 -04:00
George Beckstein 57de05c54b Added in code to fix deepsleep underflow. Nullify event handler member variable. 2019-05-28 10:48:09 -04:00
George Beckstein cc4d8e6d75 Lock sleep when USB is initialized
Added logic to lock deep sleep when USB is initialized to prevent malfunctioning. This is consistent with the other drivers. See PR ARMmbed/mbed-os#9879
2019-05-28 10:48:09 -04:00
George Beckstein e006666527 Autoformatted with astyle 2019-05-28 10:48:09 -04:00
George Beckstein 911c799de0 Fixed some comments 2019-05-28 10:48:09 -04:00
George Beckstein 0fd7dcaa4e Fixed IRQ_ENABLE call to IRQ_DISABLE (oops). 2019-05-28 10:48:09 -04:00
George Beckstein 1ab27aff1f Finished compatibility changes for nrfx renaming 2019-05-28 10:48:09 -04:00
George Beckstein 2bd024d174 Fixing compatibilities with new nrfx drivers 2019-05-28 10:48:09 -04:00
George Beckstein 5d86c3b36f Removed redundant virtual status transfer notifications. 2019-05-28 10:48:09 -04:00
George Beckstein 40ee528479 Added workaround for "unloading" IN endpoints after unstalling. Disable and then reenable when USBPhyHw::endpoint_unhalt() is called. 2019-05-28 10:48:09 -04:00
George Beckstein 7e15a5b54a Removed unnecessary logic and changed round robin DMA scheduling 2019-05-28 10:48:09 -04:00
George Beckstein 8c176c34ef Added in flag for preventing double IRQ triggering and added asserts for Nordic driver calls 2019-05-28 10:48:09 -04:00
George Beckstein 9e61bbc4e3 Ignore events that happen when an endpoint is stalled/halted 2019-05-28 10:48:09 -04:00