mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2026-01-13 11:33:58 +00:00
hv: add default handlers for PIO/MMIO access
Add the default handlers for PIO and MMIO access which returns all FFs on read and discards write. These default handlers are registered when SOS VM or pre-launched VM is created. v3 -> v4: - use single layer if in hv_emulate_pio - change the implementation of pio_default_read v2 -> v3: - use runtime vm type instead of CONFIG_PARTITION_MODE - revise the pio/mmio emulation functions - revise the pio/mmio default read functions according to MISRA C - revise the commit message v1 -> v2: - add default handlers members in struct acrn_vm and add interfaces to register default handlers for PIO and MMIO. Tracked-On: #2860 Signed-off-by: Jian Jun Chen <jian.jun.chen@intel.com> Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
@@ -339,6 +339,12 @@ int32_t create_vm(uint16_t vm_id, struct acrn_vm_config *vm_config, struct acrn_
|
||||
vm->arch_vm.nworld_eptp = vm->arch_vm.ept_mem_ops.get_pml4_page(vm->arch_vm.ept_mem_ops.info);
|
||||
sanitize_pte((uint64_t *)vm->arch_vm.nworld_eptp);
|
||||
|
||||
/* Register default handlers for PIO & MMIO if it is SOS VM or Pre-launched VM */
|
||||
if ((vm_config->type == SOS_VM) || (vm_config->type == PRE_LAUNCHED_VM)) {
|
||||
register_pio_default_emulation_handler(vm);
|
||||
register_mmio_default_emulation_handler(vm);
|
||||
}
|
||||
|
||||
if (is_sos_vm(vm)) {
|
||||
/* Only for SOS_VM */
|
||||
create_sos_vm_e820(vm);
|
||||
|
||||
Reference in New Issue
Block a user