acrn-hypervisor/hypervisor/include/arch/x86
Binbin Wu 33e1149b29 hv: init: unify init logic for vm0 bsp
In current code, VM0 BSP start mode is hardcoded, in this patch VM0 BSP
start mode is decided by the boot context prepared by bootloader/BIOS.

In current code, VM0 BSP VMCS is override only on UEFI platform.
In this patch, VM0 BSP VMCS is override on both SBL & UEFI platforms.

Also restructure the code of guest init code.
In this patch, a vcpu run_context is initilaized first according to vcpu mode.
Then write the value to vmcs according to run_context value.

Signed-off-by: Binbin Wu <binbin.wu@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2018-08-09 16:43:58 +08:00
..
guest hv: init: unify init logic for vm0 bsp 2018-08-09 16:43:58 +08:00
apicreg.h hv: vioapic: remove EOI register support 2018-08-06 12:32:35 +08:00
assign.h hv: treewide: fix 'Function prototype/defn param type mismatch' 2018-08-01 15:53:29 +08:00
cpu.h add cpu_do_idle to handle idle 2018-08-08 10:00:51 +08:00
cpufeatures.h HV:CPU: Add 'U/UL' for unsigned const value 2018-07-09 10:27:21 +08:00
cpuid.h HV: Rename functions beginning with "_" 2018-07-30 10:11:54 +08:00
gdt.h HV:treewide:fix value outside range of underlying type 2018-08-06 16:07:41 +08:00
hob_parse.h HV: handle integral issues as MISRA-C report 2018-07-20 10:39:46 +08:00
host_pm.h hv: trap vm0 write/read pm1a/pm1b registers 2018-06-29 00:50:01 +08:00
hv_arch.h hv: softirq: move softirq.c to common directory 2018-08-01 11:36:27 +08:00
idt.h HV:treewide:transfer the struct member types to non-basic types 2018-06-29 15:48:19 +08:00
io.h hv: treewide: fix 'Potential side effect problem in expression' 2018-08-08 10:50:06 +08:00
ioapic.h HV:treewide:fix "Reference parameter to procedure is reassigned" 2018-07-27 12:17:12 +08:00
ioreq.h hv: treewide: fix 'Prototype and definition name mismatch' 2018-08-06 16:04:40 +08:00
irq.h hv: add more exception injection API 2018-08-09 14:46:13 +08:00
lapic.h hv: treewide: fix 'Prototype and definition name mismatch' 2018-08-06 16:04:40 +08:00
mmu.h HV: Rename functions, variables starting with "_" 2018-08-03 12:49:01 +08:00
msr.h HV:treewide:Fix type conversion in VMX, timer and MTTR module 2018-07-19 12:58:07 +08:00
mtrr.h HV: treewide: unify the type of bit-field members 2018-07-23 10:23:49 +08:00
multiboot.h hv: use macro instead of specify number 2018-07-31 11:17:11 +08:00
per_cpu.h HV: instr_emul: Rearrange logic of instr_emul* 2018-08-07 12:09:22 +08:00
pgtable_types.h hv: mmu: revisit mmu modify page table attributes 2018-07-19 11:11:32 +08:00
pgtable.h hv: mmu: reimplement mmu_add to add page table mapping 2018-07-26 12:46:34 +08:00
reboot.h hv: Add reboot shell command 2018-05-18 16:38:40 +08:00
timer.h hv: treewide: fix 'Procedure parameter has a type but no identifier' 2018-08-03 13:29:24 +08:00
trusty.h HV: trusty: new hypercall to save/restore context of secure world 2018-08-09 15:09:15 +08:00
vmexit.h HV:treewide:fix "Reference parameter to procedure is reassigned" 2018-07-27 12:17:12 +08:00
vmx.h vcpu: add get/set register APIs 2018-08-07 09:55:13 +08:00
vtd.h HV: logical and high level precedence expression needs brackets 2018-07-24 10:10:39 +08:00
zeropage.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00