1# Copyright (C) 2019-2022 Intel Corporation. 2# SPDX-License-Identifier: BSD-3-Clause 3 4"""constant for offline ACPI generator. 5 6""" 7 8import os, sys 9 10sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), '..', 'library')) 11import acrn_config_utilities 12 13VM_CONFIGS_PATH = os.path.join(acrn_config_utilities.SOURCE_ROOT_DIR, 'misc', 'config_tools') 14TEMPLATE_ACPI_PATH = os.path.join(VM_CONFIGS_PATH, 'acpi_template', 'template') 15 16ACPI_TABLE_LIST = [('rsdp.asl', 'rsdp.aml'), ('xsdt.asl', 'xsdt.aml'), ('facp.asl', 'facp.aml'), 17 ('mcfg.asl', 'mcfg.aml'), ('apic.asl', 'apic.aml'), ('tpm2.asl', 'tpm2.aml'), 18 ('dsdt.aml', 'dsdt.aml'), ('ptct.aml', 'ptct.aml'), ('rtct.aml', 'rtct.aml')] 19 20ACPI_BASE = 0x7fe00000 21 22ACPI_RSDP_ADDR_OFFSET = 0x0 # (36 bytes fixed) 23ACPI_XSDT_ADDR_OFFSET = 0x80 # (36 bytes + 8*7 table addrs) 24ACPI_FADT_ADDR_OFFSET = 0x100 # (268 bytes) 25ACPI_DSDT_ADDR_OFFSET = 0x240 # (variable) 26ACPI_MCFG_ADDR_OFFSET = 0xBC0 # (60 bytes) 27ACPI_MADT_ADDR_OFFSET = 0xC00 # (62 + 8*n bytes, where n is the number of vCPUs) 28ACPI_RTCT_ADDR_OFFSET = 0xF00 29ACPI_TPM2_ADDR_OFFSET = 0x1300 # (52 bytes) 30 31ACPI_RSDP_ADDR = (ACPI_BASE + ACPI_RSDP_ADDR_OFFSET) 32ACPI_XSDT_ADDR = (ACPI_BASE + ACPI_XSDT_ADDR_OFFSET) 33ACPI_FADT_ADDR = (ACPI_BASE + ACPI_FADT_ADDR_OFFSET) 34ACPI_MCFG_ADDR = (ACPI_BASE + ACPI_MCFG_ADDR_OFFSET) 35ACPI_MADT_ADDR = (ACPI_BASE + ACPI_MADT_ADDR_OFFSET) 36ACPI_TPM2_ADDR = (ACPI_BASE + ACPI_TPM2_ADDR_OFFSET) 37ACPI_DSDT_ADDR = (ACPI_BASE + ACPI_DSDT_ADDR_OFFSET) 38ACPI_RTCT_ADDR = (ACPI_BASE + ACPI_RTCT_ADDR_OFFSET) 39ACPI_FACS_ADDR = 0x0 40 41VIRT_PCI_MMCFG_BASE = 0xE0000000 42 43ACPI_MADT_TYPE_IOAPIC = 1 44VIOAPIC_BASE = 0xFEC00000 45 46ACPI_MADT_TYPE_LOCAL_APIC = 0 47ACPI_MADT_TYPE_LOCAL_APIC_NMI = 4 48 49TSN_DEVICE_LIST = ['8086:4ba0', 50 '8086:4bb0', 51 '8086:4b32'] 52