hv: relocate ACPI DATA address to 0x7fe00000

Relocate ACPI address to 0x7fe00000 and ACPI NVS to 0x7ff00000 correspondingly.
In this case, we could include TPM event log region [0x7ffb0000, 0x80000000)
into ACPI NVS.

Tracked-On: #6320
Signed-off-by: Fei Li <fei1.li@intel.com>
This commit is contained in:
Fei Li 2021-07-29 10:02:48 +08:00 committed by wenlingz
parent 74e68e39d1
commit a705ff2dac
3 changed files with 9 additions and 9 deletions

View File

@ -199,17 +199,17 @@ static const struct e820_entry pre_ve820_template[E820_MAX_ENTRIES] = {
},
{ /* part2 of lowmem of hpa1*/
.baseaddr = PRE_RTVM_SW_SRAM_BASE_GPA + PRE_RTVM_SW_SRAM_MAX_SIZE,
.length = MEM_2G - MEM_1M - (PRE_RTVM_SW_SRAM_BASE_GPA + PRE_RTVM_SW_SRAM_MAX_SIZE),
.length = VIRT_ACPI_DATA_ADDR - (PRE_RTVM_SW_SRAM_BASE_GPA + PRE_RTVM_SW_SRAM_MAX_SIZE),
.type = E820_TYPE_RAM
},
{ /* ACPI Reclaim */
.baseaddr = VIRT_ACPI_DATA_ADDR,/* consecutive from 0x7fff0000UL */
.baseaddr = VIRT_ACPI_DATA_ADDR,/* consecutive from 0x7fe00000UL */
.length = (960U * MEM_1K), /* 960KB */
.type = E820_TYPE_ACPI_RECLAIM
},
{ /* ACPI NVS */
.baseaddr = VIRT_ACPI_NVS_ADDR, /* consecutive after ACPI Reclaim */
.length = 0x10000, /* 64KB */
.length = MEM_1M, /* only the first 64KB is used for NVS */
.type = E820_TYPE_ACPI_NVS
},
{ /* 32bit PCI hole */

View File

@ -12,15 +12,15 @@
#define ACPI_OEM_ID "ACRN "
/* Use a pre-loaded multiboot module as pre-launched VM ACPI table.
* The module file size is fixed to 1MB and loaded to GPA 0x7ff00000.
* The module file size is fixed to 1MB and loaded to GPA 0x7fe00000.
* A hardcoded RSDP table at GPA 0x000f2400 will point to the XSDT
* table which at GPA 0x7ff00080;
* table which at GPA 0x7fe00080;
* The module file should be generated by acrn-config tool;
*/
#define VIRT_ACPI_DATA_ADDR 0x7ff00000UL
#define VIRT_ACPI_NVS_ADDR 0x7fff0000UL
#define VIRT_ACPI_DATA_ADDR 0x7fe00000UL
#define VIRT_ACPI_NVS_ADDR 0x7ff00000UL
#define VIRT_RSDP_ADDR 0x000f2400UL
#define VIRT_XSDT_ADDR 0x7ff00080UL
#define VIRT_XSDT_ADDR 0x7fe00080UL
/* virtual PCI MMCFG address base for pre/post-launched VM. */
#define UOS_VIRT_PCI_MMCFG_BASE 0xE0000000UL

View File

@ -17,7 +17,7 @@ ACPI_TABLE_LIST = [('rsdp.asl', 'rsdp.aml'), ('xsdt.asl', 'xsdt.aml'), ('facp.as
('mcfg.asl', 'mcfg.aml'), ('apic.asl', 'apic.aml'), ('tpm2.asl', 'tpm2.aml'),
('dsdt.aml', 'dsdt.aml'), ('PTCT', 'ptct.aml'), ('RTCT', 'rtct.aml')]
ACPI_BASE = 0x7ff00000
ACPI_BASE = 0x7fe00000
ACPI_RSDP_ADDR_OFFSET = 0x0 # (36 bytes fixed)
ACPI_XSDT_ADDR_OFFSET = 0x80 # (36 bytes + 8*7 table addrs)