Commit Graph

55 Commits (cde5e6edd4b2cc3af4f19f268f46e76abf76172a)

Author SHA1 Message Date
Michael Schwarcz a5a1d1170e Upgrade uvisor to v0.31.1 2018-06-06 15:18:24 +03:00
Oren Cohen a4f323c4a6
Update uvisor_deprecation.h 2018-05-31 16:56:44 +03:00
Oren Cohen 2cba4cc585 Edit warning about FEATURE_UVISOR being deprecated 2018-05-31 15:37:48 +03:00
Cruz Monrreal a348b4583d
Merge pull request #7000 from kfnta/uvisor_depr
Add warning about FEATURE_UVISOR being deprecated
2018-05-25 08:24:26 -05:00
Cruz Monrreal 25fb8e3cf0
Picking a deprecation warning and moving forward 2018-05-24 19:49:35 -05:00
Danny Shavit aa38778a58 Add warning about FEATURE_UVISOR being deprecated 2018-05-24 13:46:30 +03:00
Oren Cohen 076cd42b7c Update uvisor-tests.txt 2018-05-22 17:57:43 +01:00
Oren Cohen b6be492751 Update uvisor-tests.txt to disable EFM32 in Jenkins 2018-02-06 18:41:19 +02:00
Alexander Zilberkant fb9fd5b50b uVisor: Upgrade to v0.31.0 2017-10-16 07:26:46 -07:00
Jaeden Amero 46f9d46341 uVisor: Import v0.30.0 2017-08-16 14:57:04 +01:00
Jaeden Amero 0e63cd56de uVisor: importer: Add Nuvoton M480 targets 2017-08-16 14:57:03 +01:00
Jaeden Amero 6f1bb67b55 uVisor: Import v0.29.0 2017-07-13 16:47:47 +01:00
Jaeden Amero f080a0ea6c uVisor: importer: Copy uvisor-tests pointer
This enables mbed-os and uvisor-tests to stay synchronized.
2017-07-13 16:47:43 +01:00
Jaeden Amero 3ef7845baa uVisor: Import uVisor v0.28.1 2017-06-04 14:42:00 +01:00
Niklas Hauser 9f63d3f603 uVisor: Remove process_malloc.h from uvisor-lib.h 2017-06-04 14:42:00 +01:00
Bartek Szatkowski b01f13d1a0 Make sure all system threads and mutexes have clear names 2017-05-30 18:55:55 +01:00
Jaeden Amero 0016bd4639 uVisor: Re-import RTX5-capable uVisor
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.
2017-05-30 18:55:53 +01:00
Jaeden Amero 6be9e47a07 uVisor: Import RTX5-capable uVisor
Imported from 20170407_v7-M tag, commit e33f2739e961 "Make function in
transition macro match target".
2017-05-30 18:55:53 +01:00
Alessandro Angelino 8bc81e0efd uVisor: Fix copy of quick-start doc in exporter script 2017-04-12 14:28:43 +01:00
Ricardo Silva 5b059821d4 uVisor: Fix 'publish' and core libs dependencies
The 'TARGET_M%' rules depend on files generated by the 'rsync' target,
so make this dependency explicit by setting 'rsync' as a pre-requisite
of 'TARGET_M%'. The 'rsync' dependency was removed from 'publish' to
avoid the case where make would select one of the 'TARGET' rules before
completing 'rsync', which would cause the build to fail.

Additionally, also moved the core libs selection in the 'TARGET_M%'
pattern rule from the pre-requisites into the rule's recipe. This is
required because when the wildcard expression used before as a
pre-requisite is expanded (make's 1st phase), it won't find any files
(not built yet via 'rsync' target), so it won't create the associated
'TARGET_M%' rules, finally causing the 'publish' target building to fail
due to missing rules for 'TARGET_M3' and 'TARGET_M4'.

With this change and the previous one, it is ensured that 'rsync' is
done before executing the recipe for 'TARGET_M%', so the required core
libs are already available and can be used from withing the recipe. The
same wildcard pattern is used as before.

The issues being fixed are visible with GNU Make 4.2.1, but not seen
with GNU Make 3.81.

Fixes issue #3905.
2017-03-08 00:49:53 +00:00
Alessandro Angelino ad436c4c92 uVisor: Update to version 0.27.0
* 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.
2017-02-21 13:24:23 +00:00
Alessandro Angelino e18c1186b8 uVisor: Add header file copy to importer script
The core_cmSecureAccess.h file contains secure-access APIs that are a
good candidate for a proposal to CMSIS. At the moment we maintain these
APIs ourselves in ARMmbed/uvisor, and will push updates to
ARMmbed/mbed-os when running our usual importer script.
2017-02-21 13:09:31 +00:00
Brian Daniels bca993a602 Fixing uvisor defines to fix build issues 2017-02-08 09:49:47 -06:00
Alessandro Angelino 5f1c04745a uVisor: Update to v0.26.2
* Add support for uVisor own SRAM.
    * This enables targets where uVisor sits in a TCM.
* Distinguish between uVisor and public SRAMs.
2017-01-10 13:15:54 +00:00
Alessandro Angelino 1321e12eca uVisor: Update to v0.26.1 2016-11-22 17:24:05 +00:00
Milosch Meriac 5d6c316597 uVisor: Enforce thread switch atomicity
The system hook thread_switch gets called both through the SVC and
though the PendSV, which can get interrupted by the SVC.
Since calls to the uVisor API are not re-entrant, we need to wrap this
function in an atomic section to prevent faults.
2016-09-26 23:09:36 -07:00
Alessandro Angelino 2a42255bba uVisor: Update to v0.25.0
The update includes:

* Fixes to the ARMv7-M MPU driver.
* RPC APIs implementation.
* NVIC_SystemReset virtualization.
2016-09-21 18:16:33 +01:00
Alessandro Angelino 8c5200c37f uVisor: Fix the core selection pattern 2016-09-21 17:16:47 +01:00
Milosch Meriac 2ca40955a6 uVisor: Debug Box & ENET DMA-support for default box
- 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
2016-09-19 11:38:06 +01:00
Vincenzo Frascino 08e6f4121c [BEETLE] Add platform to uvisor importer
This patch adds Beetle platform to uvisor importer.

Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
2016-09-12 10:54:33 +01:00
Milosch Meriac 9cb6d6099e Update uVisor page allocator 2016-08-26 17:18:45 +01:00
Alessandro Angelino 1cca020ec6 uVisor: Minor fix in the README 2016-08-24 09:51:21 +01:00
Alessandro Angelino 2cbccba2e7 uVisor: Update to v0.20.1-alpha 2016-08-24 09:51:00 +01:00
Alessandro Angelino 69101b84d4 uVisor: Update the RPC header files
This follows:

ARMmbed/uvisor#02ecf05 - "Remove unused TFN_RPC_Callback"
ARMmbed/uvisor#483ddda - "rpc: Add `rpc_fncall_wait`"
ARMmbed/uvisor#fdb7dce - "rpc: Add missing UVISOR_EXTERN to
                          rpc_fncall_waitfor declaration"
2016-08-08 12:43:23 +01:00
Alessandro Angelino 2f2fbc49a5 uVisor: Update README
Note: The README is auto-generated by the importer script, which copies
the QUICKSTART.md guide from ARMmbed/uvisor.
2016-08-08 12:39:47 +01:00
Alessandro Angelino bb12868ce5 uVisor: Update to v0.20.0-alpha
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.
2016-07-22 15:54:47 +00:00
Alessandro Angelino 99ea8a3649 uVisor: Add RPC API header files 2016-07-22 15:54:19 +00:00
Alessandro Angelino a5d2127e0c uVisor importer: Update the path of QUICKSTART.md 2016-07-22 15:51:42 +00:00
Alessandro Angelino e6effc2540 uVisor importer: Point to the master branch 2016-07-22 15:50:48 +00:00
Alessandro Angelino 5b488f345f uVisor: Add a quick-start guide to use uVisor in mbed OS 2016-07-06 14:54:43 +01:00
Alessandro Angelino 238fc2787a uVisor importer script: Add command to copy the docs 2016-07-06 14:54:42 +01:00
Alessandro Angelino c4b08cf830 uVisor: Update the release libraries
Changelog:

* No feature changed.
* The libraries have been built using the ARMmbed/uvisor@dev branch
2016-07-06 14:54:42 +01:00
Alessandro Angelino acb6e08e28 uVisor importer script: Point to the dev branch 2016-07-06 14:54:31 +01:00
Alessandro Angelino 0392b7dea8 uVisor: Fix K64F vMPU bug in release mode
This commit updates the uVisor libraries following the following fix:

* ARMmbed/uvisor@767e794 "K64F vMPU: Use the MPU fault address"

The bug made some release builds of the uVisor example halt because of
an imprecise bus fault not correctly handled by uVisor internally.

The change only affects targets where `FEATURE_UVISOR` and
`UVISOR_SUPPORTED` are defined.
2016-07-01 13:16:38 +01:00
Milosch Meriac 7e006c769e Update uVisor page allocator and box initialization 2016-06-28 16:49:02 +00:00
Niklas Hauser 2a7f02033d Copy page_allocator_config.h file in importer 2016-06-28 16:49:00 +00:00
Milosch Meriac 3fdb44c586 Re-import uVisor library 2016-06-16 17:46:24 +00:00
Alessandro Angelino 88382007aa Add configuration file for when FEATURE_UVISOR is set
The configuration file at the moment only contains the CMSIS NVIC
virtualization macros. When FEATURE_UVISOR is set, we turn on CMSIS NVIC
virtualization automatically.

This removes the need for users to specify the macros themselves.

If UVISOR_SUPPORTED is set as well, the NVIC macros are turned into vIRQ
ones, otherwise they stay NVIC as usual, thanks to the fallback
implementation provided by `unsupported.h`.
2016-06-16 17:46:23 +00:00
Milosch Meriac 6fcf168bd1 Import box initialization code from uvisor repository 2016-06-16 17:38:53 +00:00
Milosch Meriac 3e56d7d941 Temporarily switch to unstable branch 2016-06-16 17:38:53 +00:00