Project ACRN hypervisor
Go to file
Qi Yadong 74929d7fe5 trusty: Simulate Secure Monitor Call(SMC) by Hypercall
For ARM, The SMC instruction is used to generate a synchronous
exception that is handled by Secure Monitor code running in EL3.
In the ARM architecture, synchronous control is transferred between
the normal Non-secure state and the Secure state through Secure
Monitor Call exceptions. SMC exceptions are generated by the SMC
instruction, and handled by the Secure Monitor.The operation of
the Secure Monitor is determined by the parameters that are passed
in through registers.

For ACRN, Hypervisor will simulate SMC by hypercall to switch vCPU
State between Normal World and Secure World.
There are 4 registers(RDI, RSI, RDX, RBX) reserved for paramters
passing between Normal World and Secure World.

Signed-off-by: Qi Yadong <yadong.qi@intel.com>
2018-03-29 14:54:23 +08:00
arch/x86 trusty: Simulate Secure Monitor Call(SMC) by Hypercall 2018-03-29 14:54:23 +08:00
boot vm load: fix bug in loading kernel 2018-03-20 15:52:53 +08:00
bsp Fix compiler warnings when building for UEFI 2018-03-28 09:28:24 +08:00
common trusty: Simulate Secure Monitor Call(SMC) by Hypercall 2018-03-29 14:54:23 +08:00
debug Move s[n]printf to lib for release 2018-03-21 15:02:31 +08:00
Documentation Update typo and add full name of UOSloader 2018-03-19 16:33:23 +08:00
include trusty: Simulate Secure Monitor Call(SMC) by Hypercall 2018-03-29 14:54:23 +08:00
lib Remove redefine macro 2018-03-22 14:15:08 -07:00
.gitignore .gitignore: add 2 entries to ignore version.h file if present 2018-03-21 10:02:27 +08:00
.travis.yml Update .travis.yml 2018-03-23 10:10:57 +00:00
license_header initial import 2018-03-07 21:05:38 +08:00
MAINTAINERS update Maintainer list 2018-03-08 09:07:55 +08:00
Makefile trusty: Simulate Secure Monitor Call(SMC) by Hypercall 2018-03-29 14:54:23 +08:00
README.rst initial import 2018-03-07 21:05:38 +08:00

Embedded-Hypervisor
###################

This open source embedded hypervisor defines a software architecture for
running multiple software subsystems managed securely on a consolidated
system (by means of a virtual machine manager), and defines a reference
framework Device Model implementation for devices emulation

This embedded hypervisor is type-1 reference hypervisor, running
directly on the system hardware. It can be used for building software
defined cockpit (SDC) or In-Vehicle Experience (IVE) solutions running
on Intel Architecture Apollo Lake platforms. As a reference
implementation, it provides the basis for embedded hypervisor vendors to
build solutions with an open source reference I/O mediation solution,
and provides auto makers a reference software stack for SDC usage.

This embedded hypervisor is able to support both Linux* and Android* as
a Guest OS, managed by the hypervisor, where applications can run.

This embedded hypervisor is a partitioning hypervisor reference stack,
also suitable for non-automotive IoT & embedded device solutions. It
will be addressing the gap that currently exists between datacenter
hypervisors, hard partitioning hypervisors, and select industrial
applications.  Extending the scope of this open source embedded
hypervisor relies on the involvement of community developers like you!