Use a newer version of uVisor that doesn't change the box main thread
function type. Previously, we required all box main thread definitions
to change from taking a `const void *` to a `void *` when moving to
RTX5. We now are backwards compatibile.
* Updated docs
* Re-factored vMPU drivers
* Non-backwards-compatible API change: uvisor_ctx is now called
__uvisor_ctx and requires the user to explicitly cast it to their own
private context structure.
This only affects applications with uVisor enabled.
* Use "public box" instead of main box for box 0.
- Enhanced Debug Box
- Allow hw-specific ACL extensions per region
- Reduce background region rights to debugger and core
- Added Beetle SoC uVisor support
- MPU code restructured
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.