hv: x2apic support for acrn

All the platforms supported by ACRN supports x2APIC. So enabled
x2APIC for ACRN hv. Removed any code that is needed for xAPIC mode
of operation.

Tracked-On: #1455
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Reviewed-by: Eddie Dong <eddie.dong@intel.com>
Reviewed by:  Yonghua Huang <yonghua.huang@intel.com>
This commit is contained in:
Sainath Grandhi
2018-10-20 15:25:08 -07:00
committed by wenlingz
parent 19abb419c6
commit 09193c3913
14 changed files with 151 additions and 326 deletions

View File

@@ -222,7 +222,12 @@ static void *get_acpi_tbl(const char *sig)
return hpa2hva(addr);
}
static uint16_t local_parse_madt(void *madt, uint8_t lapic_id_array[MAX_PCPU_NUM])
/* TODO: As ACRN supports only x2APIC mode, we need to
* check upon using x2APIC APIC entries (Type 9) in MADT instead
* of Type 0
*/
static uint16_t
local_parse_madt(void *madt, uint32_t lapic_id_array[MAX_PCPU_NUM])
{
uint16_t pcpu_id = 0U;
struct acpi_madt_local_apic *processor;
@@ -265,7 +270,7 @@ static uint16_t local_parse_madt(void *madt, uint8_t lapic_id_array[MAX_PCPU_NUM
}
/* The lapic_id info gotten from madt will be returned in lapic_id_array */
uint16_t parse_madt(uint8_t lapic_id_array[MAX_PCPU_NUM])
uint16_t parse_madt(uint32_t lapic_id_array[MAX_PCPU_NUM])
{
void *madt;

View File

@@ -28,7 +28,7 @@ struct acpi_table_header {
uint32_t asl_compiler_revision;
};
uint16_t parse_madt(uint8_t lapic_id_array[MAX_PCPU_NUM]);
uint16_t parse_madt(uint32_t lapic_id_array[MAX_PCPU_NUM]);
void *get_dmar_table(void);
#endif /* !ACPI_H */