/** @file LoongArch64 Dynamic Table Manager Dxe Copyright (c) 2026, Loongson Technology Corporation Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #include #include #include #include #include #include // Module specific include files. #include #include #include #include #include #include #include #include "DynamicTableManagerDxe.h" /// /// Array containing the ACPI tables to check. /// We require the FADT, MADT and DSDT tables to boot. /// The FADT table must be placed at index 0. /// STATIC ACPI_TABLE_PRESENCE_INFO mAcpiVerifyTables[] = { { EStdAcpiTableIdFadt, EFI_ACPI_6_2_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE, "FADT", TRUE, 0 }, { EStdAcpiTableIdMadt, EFI_ACPI_6_2_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE, "MADT", TRUE, 0 }, { EStdAcpiTableIdDsdt, EFI_ACPI_6_2_DIFFERENTIATED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE, "DSDT", TRUE, 0 }, }; /** Get the arch specific ACPI table presence information. @param [out] PresenceArray Array containing the ACPI tables to check. @param [out] PresenceArrayCount Count of elements in the PresenceArray. @param [out] FadtIndex Index of the FADT table in the PresenceArray. -1 if absent. @retval EFI_SUCCESS Success. **/ EFI_STATUS EFIAPI GetAcpiTablePresenceInfo ( OUT ACPI_TABLE_PRESENCE_INFO **PresenceArray, OUT UINT32 *PresenceArrayCount, OUT INT32 *FadtIndex ) { *PresenceArray = mAcpiVerifyTables; *PresenceArrayCount = ARRAY_SIZE (mAcpiVerifyTables); *FadtIndex = ACPI_TABLE_VERIFY_FADT; return EFI_SUCCESS; }