Expression needed to init to zero a simple POD struct
Before (valid in C99/C++11/G++): (nsapi_addr_t){}
After (valid in C++03, invalid in C): nsapi_addr_t()
This release brings the support of Keil RTX with uVisor on mbed OS, plus
several other improvements.
**New features**
* Integration in Keil RTX in mbed OS.
* Secure dynamic allocation APIs.
* Box initialization routines.
* Register gateway.
* vMPU recovery generalized for both Kinetis and ARMv7-M MPUs.
* APIs for per-box interrupts disablement and re-enablement.
**Work in progress**
* Remote Procedure Call (RPC). New API signatures have been published.
* The alpha-level implementation will follow soon.
**Deprecated features**
* Secure gateway. Cross-box communication will be implemented with RPC
* gateways.
**Bugfixes**
* Several ARMv7-M-specific bug fixes.
* Fixed a bug that sent the device into lock-up after a hard fault.
* Fixed checks on revision numbers for Cortex-M devices.
**Miscellaneous improvements**
* Optimized memory protection for ARMv7-M devices with shared SRAM.
* Build artifacts are grouped into the target/build
* option/configuration-specific folder.
* Documents have been grouped into API vs. core documents.
* Improved style and consistency.
Beetle board is built to optimize power consumption therefore does not
provide on-board LEDs.
This patch adds a comment in PinNames in order to clarify that the
Emulated LEDs are provided for compatibility reasons with the MBED test
suite.
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
With this change, we check for all-1s before executing erase. This means that
the cost of erasing a range is now proportional to the amount of sectors which
have been programmed. This should result in latency improvements in our use of
containers based on flash storage.
The RWW fix is controversial because it requires holding off interrupts for
periods of around 5ms at a time. But there were still some minor improvements
around that change which could be retained. This commit contains these
changes.
Globally declared C++ classes with vtables are not gced by current
toolchains, even if the C++ class contains no member variables and
no constructor. This causes all of lwip to be dragged into resulting
binaries, even if lwip is not accessed.
Adoption of the SingletonPtr class in lwip allows us to workaround
this issue.
- lwip socket api did not provide signaling mechanism compatible with
mutliple stacks
- lwip raw api did not support multiple threads
The netconn api provides the necessary signalling mechanism while still
supporting multiple threads. The netconn api also shares several design
similarities to the current socket api.
Additionally, the move to a higher-level api reduced implementation
complexity significantly and will hopefully reduce integration
difficulties