Commit Graph

24750 Commits (3343022f70098e948480263eed3ccfce47d2728c)

Author SHA1 Message Date
Andrew Chong 058f07452a
Allow application to override LWIP_RAW 2019-04-27 00:22:00 +09:00
Laurent Meunier 1922937292 STM32F303RE: Activate FLASHIAP 2019-04-26 15:13:08 +02:00
Anna Bridge f28b82b831
Merge pull request #10475 from kivaisan/ns_eventloop_tick_timer
Implement nanostack eventloop tick timer
2019-04-26 13:38:17 +01:00
Anna Bridge 1647282de9
Merge pull request #10462 from michalpasztamobica/nanostack_semaphore_release_connecting
Nanostack: release connect_semaphore only when it is pending
2019-04-26 13:37:53 +01:00
Anna Bridge 1b63aadb5e
Merge pull request #10461 from caixue1102/mbed-os-rda
Update wifi driver for rda target UNO_91H
2019-04-26 13:37:28 +01:00
Anna Bridge a98157a387
Merge pull request #10453 from hasnainvirk/minor_doc_update
Cellular: Minor doc update for CellualrSocket object
2019-04-26 13:37:01 +01:00
Anna Bridge c180b1c5f4
Merge pull request #10451 from NXPmicro/Add_IAR_Support
MIMXRT1050: Readd IAR support
2019-04-26 13:35:01 +01:00
Anna Bridge 9a581732b0
Merge pull request #10438 from OpenNuvoton/nuvoton_psa_pass_tfm-lvl_linker
PSA: Pass TFM_LVL macro to linker files
2019-04-26 13:34:35 +01:00
Anna Bridge 4020c6d19d
Merge pull request #10436 from OpenNuvoton/nuvoton_nuc472_fix_power-down
NUC472: Workaround for unknown error with power-down
2019-04-26 13:34:12 +01:00
Anna Bridge 016ce322b4
Merge pull request #10434 from michalpasztamobica/nanostack_network_handler_fix
Nanostack network handle does not always call status cb for BOOTSTRAP events
2019-04-26 13:33:46 +01:00
Anna Bridge a5f1a125f1
Merge pull request #10426 from michalpasztamobica/udp_echo_error_handling
UDPSOCKET_ECHOTEST fails if a packet of every size was not sent
2019-04-26 13:33:25 +01:00
Anna Bridge 9f18456114
Merge pull request #10410 from michalpasztamobica/nanostack_translate_sendmsg_errors
Nanostack: translate errors from sendmsg
2019-04-26 13:32:59 +01:00
Anna Bridge c0feb1a659
Merge pull request #10390 from kjbracey-arm/armc6_fpu_sel
Correct some CPU selections in tools
2019-04-26 13:32:29 +01:00
Anna Bridge 1cd709f6b6
Merge pull request #10322 from kjbracey-arm/gcc_builtins
GCC: remove `-fno-builtin` option
2019-04-26 13:32:02 +01:00
Anna Bridge b1cd3dab16
Merge pull request #10258 from davidsaada/david_remove_feature_storage
Remove FEATURE_STORAGE and all underlying deprecated features
2019-04-26 13:31:37 +01:00
Anna Bridge 23af842715
Merge pull request #10078 from OpenNuvoton/nuvoton_fix-heap-in-rtosless
Fix heap init error in rtos-less code
2019-04-26 13:31:10 +01:00
Anna Bridge 536da479dc
Merge pull request #10018 from deepikabhavnani/stm32_heap_armc6
STM: Update linker script for using SRAM1 and SRAM2 in ARM
2019-04-26 13:30:42 +01:00
Kevin Bracey 2bb40450ec Add non-volatile atomic loads and stores
Volatile makes no real difference when we're using assembler, or locked
functions, but leaving it off could be more efficient for the basic
loads and stores. So add non-volatile overloads in C++ for them.
2019-04-26 13:12:35 +03:00
Kevin Bracey 4fe06e0949 Critical tests: use atomics
Get rid of a volatile, and use atomics to synchronise with the interrupt
routine instead.

Useful as a non-RTOS basic compilation check for the atomics - the
fuller atomic test relies on the RTOS.
2019-04-26 13:12:35 +03:00
Kevin Bracey 0fabf37564 Add some atomic tests
These are platform tests, but rely on the RTOS to run multiple threads
to exercise it.

(The atomics are still useful in non-RTOS, to protect against interrupt
handlers, but testing versus other threads is easier. The implementation
is the same either way, so doesn't seem worth testing non-RTOS
specifically).
2019-04-26 13:12:35 +03: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
Kimmo Vaisanen 38aa56efa8 Cellular: Add description for CellularProperty 2019-04-26 12:37:52 +03:00
Steven Cooreman b16adea258 Remove sleep lock/unlock from HAL
The sleep locking/unlocking is taken care of by the layer above (driver).
2019-04-26 09:54:24 +02:00
Mirela Chirica 948f8b52d0 Cellular: Added WISE-1570 handling for socket closing URC 2019-04-26 10:12:12 +03:00
Malavika Sajikumar f11f63ddcf AWAKE signal turned on at system init for SDP-K1 board.
- Setting AWAKE signal high in the SystemInit() to ensure VIO supply to daughter boards through SDP and Arduino connectors.
2019-04-25 23:49:19 -07:00
Malavika Sajikumar 869e48dad0 Improvements made to PinNames.h of SDP-K1 board.
PinNames.h:
- Removing definition of Status LED.
- Redefining SPI and I2C pin names using Arduino pins names.
2019-04-25 23:49:19 -07:00
Janne Kiiskila 300c3e767c NVStore.cpp compiler warning removal (os_ret)
One gets this compiler warning from nvstore.cpp:

```
Compile [ 48.6%]: nvstore.cpp
[Warning] nvstore.cpp@814,9: variable 'os_ret' set but not used [-Wunused-but-set-variable]
```

Turns out it's caused by the fact that the variable is only used
with MBED_ASSERTs, which get optimized out or not, depending on your
build profile. In reality we do not need a separate variable for that
in my opinion though, so we can just use the ret-variable instead
and drop the os_ret variable completely and thus avoid this
compiler warning.
2019-04-25 22:55:29 +03:00
Kevin Bracey 3fbad10337 SPI: Prime asynch transaction buffer on construction
SPI peripherals' asynch transaction buffers are now wrapped by
SingletonPtr, which needs to take the singleton_lock Mutex when first
accessed. If it was first accessed by an asynch transaction started from
IRQ, that would not be possible.

Add a SingletonPtr::get() call to the SPI construction process so that
the peripheral's buffer is fully constructed before any SPI methods can
be called, meaning asynch methods won't fail from IRQ.

(Other pre-existing synchronisation issues with async remain, but this
avoids a new trap in Mbed OS 5.12).
2019-04-25 17:19:01 +03:00
Veijo Pesonen 7a942fd083 Wi-SUN: adds greentea test config 2019-04-25 14:21:57 +03:00
Maciej Bocianski 0b336ed23b fix usb msd test python dependencies 2019-04-25 11:07:12 +02:00
Kimmo Vaisanen 7349bc8a47 Implement nanostack eventloop tick timer
Nanostack eventloop tick timer can be used in case high resolution
platform timer is not needed. One usecase for that is Pelion
Cloud client when using for example cellular connectivity. This enables
PDMC application to enter deep sleep state.
2019-04-25 12:01:52 +03:00
Teppo Järvelin 1abf600d03 Cellular: fix calls to ATHandler::read_string(...) give correct size
ATHandler::read_string(...) buffer size param was changed a long time ago
to include also NULL. Some calls still gave wrong size after this change.
2019-04-25 11:20:05 +03:00
fred.li 38e088eadd remove blank line 2019-04-25 09:56:52 +08:00
ccli8 63d9cde507 KVStore: Support block device out of mbed-os tree
To support block device out of mbed-os tree in KVStore, user needs to:
1. Configure blockdevice to "other".
2. Override get_other_blockdevice() to provide block device out of mbed-os tree.
2019-04-25 09:56:20 +08:00
Russ Butler 3a891f9bfe Fix USB control transfers using small size
Fix support for wMaxPacketSize values other than 64 for endpoint 0.
2019-04-24 11:12:40 -05:00
Michal Paszta 2b26a62cc7 Nanostack: release connect_semaphore only when it is pending
Only release if the current _connect_status is CONNECTING. If the semaphore is released many times for each connect, then the next connect will not wait(), as it will be able to decrement the semaphore imediatelly.
2019-04-24 11:31:16 +03:00
蔡雪 (Xue Cai) d6730f5afc Update wifi driver for rda target UNO_91H 2019-04-24 11:29:50 +08:00
Volodymyr Medvid c98f91e375 PSOC6: move mbed_sdk_init to mbed_overrides.c
Purposes:
* Remove MbedOS-specific code from system_psoc6_{cm4,cm0plus}.c
  to simplify updates to new PDL version (startup code is part of PDL).
* Unify mbed_sdk_init initialization sequence for both CPU cores.
  This change is non-functional, sequence itself is not changed for any
  of the PSoC 6 M4/M0 PSA/non-PSA targets.
2019-04-23 14:44:56 +03:00
Juho Eskeli 443974b864 STM32L4xx: IAR linker file updated to better use available memory 2019-04-23 12:53:53 +03:00
Hasnain Virk 4eaffb4b03 Minor doc update
Socket ID is usually spitted out by the modem, however there are cases
when the modem is actully taken in as an input argument, e.g., in the
case of QUECTEL M26 modem. This minor knit clarifies that the
CellularSocket::id can be an input argument.
2019-04-23 12:36:29 +03:00
Kevin Bracey 20ac1c9266 KW24D: Use default ARM compiler (ARMC6)
KW24D was set to ARMC5 because the ARMC6 tooling didn't correctly handle
Cortex-M4 without floating-point. Now fixed.
2019-04-23 12:04:20 +03:00
Kevin Bracey 744e2ccfa7 Tools: Add "Cortex-M33E" option
There was a gap in our pattern - we didn't offer M33 with DSP Extension
but no floating-point.
2019-04-23 12:04:20 +03:00
Kevin Bracey 56e2d339c8 Correct some CPU selections in tools
* For ARMC6, core types `Cortex-M4` and `Cortex-M7` did not explicitly
  add `--fpu=none`, so it defaulted to assuming FPU present. This would
  cause a compilation error if the target's cmsis.h had `__FPU_PRESENT`
  defined to 0.

* For GCC, `Cortex-M33FE` did not include `+dsp` in the architecture
  selection.

* For ARMC5 and ARMC6, `Cortex-M0+` did not pass `M0plus` to the
  non-Clang tools.
2019-04-23 12:04:20 +03:00
Mahesh Mahadevan 7cd8ee1599 MIMXRT1050: Readd IAR support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2019-04-22 11:47:23 -05:00
fred.li 417051244d PDMC support for ARMCC and IAR 2019-04-22 21:06:42 +08:00
fred.li 4d52639e3d Remove invalid device_name 2019-04-22 15:23:17 +08:00
fred.li 784f2a070a Add configuration to support PDMC compile
Configurable flash size for UNO_91H
2019-04-22 14:30:36 +08:00
fred.li 7941d34e35 Size should be calculate after confirm the start address 2019-04-22 11:53:15 +08:00
Brian Daniels 03f5ffd6b6 Fix for downloading the wrong binary in the online compiler 2019-04-18 16:45:39 -05:00