Project ACRN hypervisor
Go to file
Zide Chen bfa67fa6a0 HV: Prepare cpu_secondary.S for AP trampoline code relocation
V1->V2: removed CONFIG_LOW_RAM_START and added ".org 0" to
cpu_secondary.S

The assumption is trampoline code is relocated while HV is not, so:

trampoline code is built at address 0, and CS register is updated
by SIPI to reflect the correct vector

in real mode part, added extra pointers for page tables and long jump buffer
so it's possible for HV code to patch the relocation offset

in long mode part, use absolute addressing when referring HV symbols,
and use relative addressing for symbols within trampoline code

Signed-off-by: Zheng, Gen <gen.zheng@intel.com>
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
Signed-off-by: Zide Chen <zide.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong>
Acked-by: Xu, Anthony <anthony.xu@intel.com>
2018-05-09 14:02:24 +08:00
.travis-dockerfiles Add 'findutils' to Fedora-based Docker images 2018-04-10 16:35:21 +08:00
arch/x86 HV: Prepare cpu_secondary.S for AP trampoline code relocation 2018-05-09 14:02:24 +08:00
boot ACPI: bug fix on address convertion 2018-04-17 11:33:30 +08:00
bsp HV: Prepare cpu_secondary.S for AP trampoline code relocation 2018-05-09 14:02:24 +08:00
common rename 'req_buf' field in 'struct vm_sw_info' 2018-05-07 14:33:06 +08:00
debug security: fix issues reported by Klocwork 2018-05-04 11:12:05 +08:00
Documentation UEFI: update acrn.conf and Document 2018-04-10 13:38:13 +08:00
include HV: Fix the missing list_head initializaiton 2018-05-08 14:47:11 +08:00
lib sprintf: bug fix in sprintf implemented code 2018-04-12 18:06:59 +08:00
.gitignore .gitignore: add 2 entries to ignore version.h file if present 2018-03-21 10:02:27 +08:00
.travis.yml Travis CI: enable Ubuntu 16.04 and Fedora 26 testing 2018-04-06 22:28:46 +08:00
license_header initial import 2018-03-07 21:05:38 +08:00
MAINTAINERS update home page information 2018-04-02 10:18:59 +08:00
Makefile hv: add build type and detail time to version string 2018-05-02 17:06:19 +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!