mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-09-24 02:08:04 +00:00
hv: vioapic init for SOS VM on platforms with multiple IO-APICs
For SOS VM, when the target platform has multiple IO-APICs, there should be equal number of virtual IO-APICs. This patch adds support for emulating multiple vIOAPICs per VM. Tracked-On: #4151 Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com> Acked-by: Eddie Dong <eddie.dong@Intel.com>
This commit is contained in:
committed by
wenlingz
parent
f67ac09141
commit
fe5a108c7b
@@ -107,7 +107,7 @@ struct vm_arch {
|
||||
void *sworld_eptp;
|
||||
struct memory_ops ept_mem_ops;
|
||||
|
||||
struct acrn_vioapic vioapic; /* Virtual IOAPIC base address */
|
||||
struct acrn_vioapics vioapics; /* Virtual IOAPIC/s */
|
||||
struct acrn_vpic vpic; /* Virtual PIC */
|
||||
#ifdef CONFIG_HYPERV_ENABLED
|
||||
struct acrn_hyperv hyperv;
|
||||
|
@@ -26,6 +26,8 @@ uint32_t gsi_to_ioapic_pin(uint32_t gsi);
|
||||
int32_t init_ioapic_id_info(void);
|
||||
uint8_t ioapic_irq_to_ioapic_id(uint32_t irq);
|
||||
|
||||
uint8_t get_platform_ioapic_info (struct ioapic_info **plat_ioapic_info);
|
||||
|
||||
/**
|
||||
* @defgroup ioapic_ext_apis IOAPIC External Interfaces
|
||||
*
|
||||
@@ -108,6 +110,7 @@ struct gsi_table {
|
||||
|
||||
void *gsi_to_ioapic_base(uint32_t gsi);
|
||||
uint32_t get_max_nr_gsi(void);
|
||||
uint8_t get_gsi_to_ioapic_index(uint32_t gsi);
|
||||
uint32_t get_pic_pin_from_ioapic_pin(uint32_t pin_index);
|
||||
bool is_gsi_valid(uint32_t gsi);
|
||||
#endif /* IOAPIC_H */
|
||||
|
Reference in New Issue
Block a user