Commit Graph

25113 Commits (aa9bd486d5ee90db3b8c5eb1c277e29497a46a7d)

Author SHA1 Message Date
toyowata f1628f0b8d Correct SPDX identifiers 2019-06-05 19:04:55 +09:00
Lingkai Dong 3373c5d24a NORDIC_CORDIC pal_crypto: check if cryptocell310 is enabled
The config "cryptocell310-acceleration" is set by MCU_NRF52840
but individual targets may have crytocell310 feature disabled.
2019-06-05 09:53:53 +01:00
Lingkai Dong 977eea4447 critical_section tests: do not check APP interrupts on NRF52
APP interrupts are masked on SoftDevice BLE stack only, but we
have switched to Cordio stack on NRF52 targets.
2019-06-05 09:53:53 +01:00
Lingkai Dong ffcceb0cb7 Default to Cordio BLE stack for NRF52* targets
The BLE stack from SoftDevice is not actively maintained and
has issues when used with Nordic SDK v15.
2019-06-05 09:53:53 +01:00
toyowata 9acf2c325c Fix device_name and add SPDX identifiers 2019-06-05 16:48:08 +09:00
toyowata f0a06b24ba Remove ARCH_MAX files from STM32F407xG 2019-06-05 14:51:06 +09:00
toyowata db2cac45f1 Move Seeed ARCH_MAX to TARGET_STM32F407xE MCU 2019-06-05 14:35:25 +09:00
Martin Kojtal fbc489e6a5
Merge pull request #10733 from pan-/fix-nrf52-memory-pools
Fix nrf52 memory pools
2019-06-04 21:01:15 +01:00
petroborys b2b8956a0a Merge branch 'master' of https://github.com/petroborys/mbed-os 2019-06-04 14:33:14 +00:00
petroborys 54fe348078 Add support I2C 3 (#ifdef I2C2) for target EFM32G11 2019-06-04 14:31:33 +00:00
petroborys c685b6e242 Add support I2C #3 (#ifdef I2C2) for target EFM32G11 2019-06-04 14:27:15 +00:00
Vincent Coubard 618e1e623e Cordio: Fix default COC parameters.
The stack doesn't cope with zero COC client or channel on IAR.
2019-06-04 14:45:45 +01:00
Maciej Bocianski 90fbab0419 hal_qspi_test: undo buggy code
Remove some buggy code introduced to hal_qspi_test by PR #10435
Added support for QSPI to Cypress Boards
a8570ffe6c
2019-06-04 14:14:21 +02:00
Martin Kojtal 04d0b0d1c8
Merge pull request #10654 from desowin/usbhost-msd
USBHostMSD: Implement BlockDevice get_type()
2019-06-04 12:56:52 +01:00
Martin Kojtal f174490b18
Merge pull request #10740 from kjbracey-arm/no-deprecated-register
ARMC6: Suppress "register deprecated" warning
2019-06-04 11:55:18 +01:00
Martin Kojtal 0ebf9617c4
Merge pull request #10698 from LMESTM/Timeout_test_do_not_call_sleep_from_thread
timeout_tests: do not call sleep from test thread
2019-06-04 10:54:56 +01:00
Martin Kojtal 6818554c66
Merge pull request #10747 from hennadiykytsun/pr/5.13.ARMC6-issue-10613
Cypress: Fix issue #10613
2019-06-04 10:44:01 +01:00
Martin Kojtal b050a9df64
Merge pull request #10722 from Patater/auto-enable-psa-entropy-injection
mbed-crypto: Automatically enable entropy injection
2019-06-04 09:47:15 +01:00
Antti Kauppila 9d8969daa7 Small fixes and doxygen update 2019-06-04 10:41:16 +03:00
Przemyslaw Stekiel 869585a196 Ticker common layer: run interrupt reschedule if the inserted event has already expired.
On some platforms, if low power ticker interrupt is set to very close value (e.g. timestamp < current tick + 3), then interrupt may not fire. This is one use case of lp ticker wrapper, but not all platforms use the wrapper. Some platforms cheat a bit and in this case, simply schedules interrupt a bit later. The problem has been found while working on the low-level lp ticker wrapper for ST boards which run lp ticker using LPTIM. These platforms have such limitation.

Failing test: tests-mbed_drivers-lp_timeout (Test Case: Zero delay)

In the test scenarion, the lp ticker callback is attached with 0.0 s delay in the loop. The new events are put in the front of the lp ticker event list and interrupt reschedule is performed. Usually, the new event is already expired, interrupt fires immediately and next event from the list is then scheduled (e.g. system tick). When the next event (e.g. system tick) is very close to the current time it might be scheduled a bit later (because of lp ticker limitation). Let's assume that system tick has been delayed by 3 ticks and while inserting new zero delay event, absolute system tick time on the event list has already expired. In this case, zero delay event may be added after the expired system tick event and no reschedule is performed (because the head of the list has not changed). Interrupt also didn't fire yet since it has been delayed, so after return from attach_callback(0) we are still waiting for the delayed interrupt and zero delay callback has not been called instantly.

This may also affect other platforms which use such delays (Cypress, NORDIC, etc.).

The proposition is to add extra condition while adding an event to the event list. If the inserted event is already expired, then perform reschedule immediately.
2019-06-04 08:50:22 +02:00
Teijo Kinnunen 728c01f9e3 STM32L0: Add DEVICE_SPI_COUNT to DISCO_L072CZ_LRWAN1 + MTB_MURATA_ABZ
Enables simultaneous use of both SPIs without interference.
2019-06-04 09:38:20 +03:00
Qinghao Shi 31fc1e56f2 Examples: enable more tests for examples 2019-06-03 18:30:42 +01:00
David Saada dcd2c292af PSA protected storage: Add encrypt & RB protect flags by default to set. 2019-06-03 16:32:55 +03:00
Hennadiy Kytsun 7447cac66c Cypress: Fix issue #10613 2019-06-03 16:26:52 +03:00
Teijo Kinnunen aade299c62 CThunk: Fix assertion when CThunk object is destroyed
In case the CThunk object is deleted without having called the
entry() function (and thus _entry is NULL), cthunk_free_real()
will fail with an assertion.
2019-06-03 13:11:07 +03:00
Kevin Bracey 18ce757c07 ARMC6: Suppress "register deprecated" warning
Lots of target code, STM in particular, uses the `register` keyword, so
it'll take a little while to clean up. In the interim, some builds are
producing a lot of warnings. Suppress the warning for now, as `register`
remains legal C++14 and C11, despite C++14 deprecating it.

C++17 removes `register`, so code will need to be cleaned before any
further C++ version update.
2019-06-03 12:19:58 +03:00
Martin Kojtal f18e3364e9
Merge pull request #10716 from kfnta/alzix/manifest-tool
Update requirement for manifest-tool
2019-06-03 09:19:47 +01:00
Vincent Veron 16475829f1 TARGET_STM: SPI: add pulse on master transmissions
Add a pulse when using hardware chip select for SPI transmissions.
CS is at low level when a transmission is on-going.

Be careful, this is not compatible with all modes. It will work only
if PHA is 0, ie spi mode is 0 or 2. See stm32xx reference manual,
chapter "NSS pulse mode" for more details.

Fix #10671

Signed-off-by: Vincent Veron <vincent.veron@st.com>
2019-06-03 10:00:06 +02:00
Martin Kojtal a93542bab5
Merge pull request #10683 from OpenNuvoton/nuvoton_wait-ns_weak
Export wait_ns to be overridable
2019-06-03 08:54:50 +01:00
Martin Kojtal 752101d041
Merge pull request #10696 from AriParkkila/cell-ublox-at-connect
Cellular: Fix socket connect on UBLOX_AT driver
2019-06-03 08:52:43 +01:00
Martin Kojtal 62698b903c
Merge pull request #10660 from mprse/fpga_ts_add_sckl_stats
Add SCLK and SIN stats to SPIMasterTester
2019-06-03 08:49:39 +01:00
Martin Kojtal 5d33fe1dfa
unsupported USBHAL: fix coding style 2019-06-03 08:44:41 +01:00
Martin Kojtal f0696417c5
Merge pull request #10647 from tymoteuszblochmobica/coverity
Fix LWIP warning issues found by Coverity scan

lwip_dns.c in function: dns_add_interface_server
CID 1399051 (#1 of 1): Buffer not null terminated (BUFFER_SIZE_WARNING)10. buffer_size_warning: Calling strncpy with a maximum size argument of 6 bytes on destination array new_interface_server->interface_name of size 6 bytes might leave the destination string unterminated.
line 434 strncpy(new_interface_server->interface_name, interface_name, INTERFACE_NAME_MAX_SIZE);

lwip_ip4_frag.c in function: ip_reass_free_complete_datagram

CID 1373164 (#1 of 1): Dereference after null check (FORWARD_NULL)7. var_deref_model: Passing null pointer prev to ip_reass_dequeue_datagram, which dereferences it. [show details]
line 209 ip_reass_dequeue_datagram(ipr, prev);

lwip_ip4_frag.c in function: ip_reass

CID 1373163 (#1-2 of 2): Dereference after null check (FORWARD_NULL)38. var_deref_model: Passing null pointer ipr_prev to ip_reass_dequeue_datagram, which dereferences it. [show details]
line 663 ip_reass_dequeue_datagram(ipr, ipr_prev);

lwip_api_msg.c in function: lwip_netconn_do_connected

CID 1373162 (#1 of 1): Explicit null dereferenced (FORWARD_NULL)10. var_deref_model: Passing null pointer op_completed_sem to sys_sem_signal, which dereferences it. [show details]
line 1336 sys_sem_signal(op_completed_sem);
2019-06-03 08:41:53 +01:00
Martin Kojtal 9a3c175e96
Merge pull request #10588 from AriParkkila/cell-bg96-power
Cell bg96 power
2019-06-03 08:38:58 +01:00
Martin Kojtal 93e4a8251c
Merge pull request #10697 from jeromecoutant/PR_H7FLASH
STM32H7: flash issue while erasing sector in Bank 1
2019-06-03 08:35:29 +01:00
Martin Kojtal 4f6035e6b1
Merge pull request #10501 from davidsaada/david_spif_driver_unlog
Remove excessive info and debug prints in SPIF driver
2019-06-03 08:33:19 +01:00
Chun-Chieh Li 010f4225a0 [M487] Fix wait_ns test failed 2019-06-03 11:28:26 +08:00
Antti Kauppila 7f199ceeef Added missing _cid handling 2019-06-02 18:55:50 +03:00
Vincent Coubard 11cb7f0119 BLE - tune Cordio LL default parameters to reduce the memory required. 2019-05-31 16:11:08 +01:00
Vincent Coubard 12bdc0ebdb BLE - Fix Cordio LL extended advertising size. 2019-05-31 16:10:02 +01:00
Vincent Coubard a74c4ce57f BLE - Set rx ACL buffer size to the minimum viable in cordio conf. 2019-05-31 16:09:28 +01:00
Vincent Coubard 0baf04dfb4 Disable l2cap connection oriented channels in Cordio default conf. 2019-05-31 16:08:37 +01:00
Chris Trowbridge cea7bbd815 Remove component 'QSPIF' for target 'EP_AGORA' 2019-05-31 09:58:23 -04:00
George Psimenos f82b7d8229 Improve type cast 2019-05-31 13:59:40 +01:00
Przemyslaw Stekiel 48fdd33db8 tests-mbed_drivers-lp_timeout: Rework "Zero delay" test case
Execute test case 100 times in loop since one run is not enough to catch possible failure.
2019-05-31 14:17:33 +02:00
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