TianoCore EDK2 master
|
#include <Uefi.h>
#include <IndustryStandard/Acpi10.h>
#include <Protocol/AcpiSystemDescriptionTable.h>
Go to the source code of this file.
Macros | |
#define | NULL_GAS { EFI_ACPI_5_0_SYSTEM_MEMORY, 0, 0, EFI_ACPI_5_0_UNDEFINED, 0L } |
#define | ARM_GAS8(Address) { EFI_ACPI_5_0_SYSTEM_MEMORY, 8, 0, EFI_ACPI_5_0_BYTE, Address } |
#define | ARM_GAS16(Address) { EFI_ACPI_5_0_SYSTEM_MEMORY, 16, 0, EFI_ACPI_5_0_WORD, Address } |
#define | ARM_GAS32(Address) { EFI_ACPI_5_0_SYSTEM_MEMORY, 32, 0, EFI_ACPI_5_0_DWORD, Address } |
#define | ARM_GASN(Address) { EFI_ACPI_5_0_SYSTEM_MEMORY, 0, 0, EFI_ACPI_5_0_DWORD, Address } |
#define | EFI_ACPI_5_0_GIC_DISTRIBUTOR_INIT(GicDistHwId, GicDistBase, GicDistVector) |
#define | EFI_ACPI_6_0_GIC_DISTRIBUTOR_INIT(GicDistHwId, GicDistBase, GicDistVector, GicVersion) |
#define | EFI_ACPI_5_0_GIC_STRUCTURE_INIT(GicId, AcpiCpuId, Flags, PmuIrq, GicBase) |
#define | EFI_ACPI_5_1_GICC_STRUCTURE_INIT(GicId, AcpiCpuUid, Mpidr, Flags, PmuIrq, GicBase, GicVBase, GicHBase, GsivId, GicRBase) |
#define | EFI_ACPI_6_0_GICC_STRUCTURE_INIT(GicId, AcpiCpuUid, Mpidr, Flags, PmuIrq, GicBase, GicVBase, GicHBase, GsivId, GicRBase, Efficiency) |
#define | EFI_ACPI_6_3_GICC_STRUCTURE_INIT(GicId, AcpiCpuUid, Mpidr, Flags, PmuIrq, GicBase, GicVBase, GicHBase, GsivId, GicRBase, Efficiency, SpeOvflIrq) |
#define | EFI_ACPI_6_0_GIC_MSI_FRAME_INIT(GicMsiFrameId, PhysicalBaseAddress, Flags, SPICount, SPIBase) |
#define | EFI_ACPI_5_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT(RefreshFramePhysicalAddress, ControlFramePhysicalAddress, WatchdogTimerGSIV, WatchdogTimerFlags) |
Typedefs | |
typedef BOOLEAN(EFIAPI * | EFI_LOCATE_ACPI_CHECK) (IN EFI_ACPI_DESCRIPTION_HEADER *AcpiHeader) |
Functions | |
EFI_STATUS | LocateAndInstallAcpiFromFvConditional (IN CONST EFI_GUID *AcpiFile, IN EFI_LOCATE_ACPI_CHECK CheckAcpiTableFunction) |
EFI_STATUS | LocateAndInstallAcpiFromFv (IN CONST EFI_GUID *AcpiFile) |
EFI_STATUS EFIAPI | AcpiUpdateChecksum (IN OUT UINT8 *Buffer, IN UINTN Size) |
EFI_STATUS EFIAPI | AcpiLocateTableBySignature (IN EFI_ACPI_SDT_PROTOCOL *AcpiSdtProtocol, IN UINT32 TableSignature, IN OUT UINTN *Index, OUT EFI_ACPI_DESCRIPTION_HEADER **Table, OUT UINTN *TableKey) |
EFI_STATUS EFIAPI | AcpiAmlObjectUpdateInteger (IN EFI_ACPI_SDT_PROTOCOL *AcpiSdtProtocol, IN EFI_ACPI_HANDLE TableHandle, IN CHAR8 *AsciiObjectPath, IN UINTN Value) |
Helper Library for ACPI
Copyright (c) 2014-2016, ARM Ltd. All rights reserved. Copyright (c) 2021, Ampere Computing LLC. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file AcpiLib.h.
#define ARM_GAS16 | ( | Address | ) | { EFI_ACPI_5_0_SYSTEM_MEMORY, 16, 0, EFI_ACPI_5_0_WORD, Address } |
#define ARM_GAS32 | ( | Address | ) | { EFI_ACPI_5_0_SYSTEM_MEMORY, 32, 0, EFI_ACPI_5_0_DWORD, Address } |
#define ARM_GAS8 | ( | Address | ) | { EFI_ACPI_5_0_SYSTEM_MEMORY, 8, 0, EFI_ACPI_5_0_BYTE, Address } |
#define ARM_GASN | ( | Address | ) | { EFI_ACPI_5_0_SYSTEM_MEMORY, 0, 0, EFI_ACPI_5_0_DWORD, Address } |
#define EFI_ACPI_5_0_GIC_DISTRIBUTOR_INIT | ( | GicDistHwId, | |
GicDistBase, | |||
GicDistVector | |||
) |
#define EFI_ACPI_5_0_GIC_STRUCTURE_INIT | ( | GicId, | |
AcpiCpuId, | |||
Flags, | |||
PmuIrq, | |||
GicBase | |||
) |
#define EFI_ACPI_5_1_GICC_STRUCTURE_INIT | ( | GicId, | |
AcpiCpuUid, | |||
Mpidr, | |||
Flags, | |||
PmuIrq, | |||
GicBase, | |||
GicVBase, | |||
GicHBase, | |||
GsivId, | |||
GicRBase | |||
) |
#define EFI_ACPI_5_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT | ( | RefreshFramePhysicalAddress, | |
ControlFramePhysicalAddress, | |||
WatchdogTimerGSIV, | |||
WatchdogTimerFlags | |||
) |
#define EFI_ACPI_6_0_GIC_DISTRIBUTOR_INIT | ( | GicDistHwId, | |
GicDistBase, | |||
GicDistVector, | |||
GicVersion | |||
) |
#define EFI_ACPI_6_0_GIC_MSI_FRAME_INIT | ( | GicMsiFrameId, | |
PhysicalBaseAddress, | |||
Flags, | |||
SPICount, | |||
SPIBase | |||
) |
#define EFI_ACPI_6_0_GICC_STRUCTURE_INIT | ( | GicId, | |
AcpiCpuUid, | |||
Mpidr, | |||
Flags, | |||
PmuIrq, | |||
GicBase, | |||
GicVBase, | |||
GicHBase, | |||
GsivId, | |||
GicRBase, | |||
Efficiency | |||
) |
#define EFI_ACPI_6_3_GICC_STRUCTURE_INIT | ( | GicId, | |
AcpiCpuUid, | |||
Mpidr, | |||
Flags, | |||
PmuIrq, | |||
GicBase, | |||
GicVBase, | |||
GicHBase, | |||
GsivId, | |||
GicRBase, | |||
Efficiency, | |||
SpeOvflIrq | |||
) |
#define NULL_GAS { EFI_ACPI_5_0_SYSTEM_MEMORY, 0, 0, EFI_ACPI_5_0_UNDEFINED, 0L } |
typedef BOOLEAN(EFIAPI * EFI_LOCATE_ACPI_CHECK) (IN EFI_ACPI_DESCRIPTION_HEADER *AcpiHeader) |
EFI_STATUS EFIAPI AcpiAmlObjectUpdateInteger | ( | IN EFI_ACPI_SDT_PROTOCOL * | AcpiSdtProtocol, |
IN EFI_ACPI_HANDLE | TableHandle, | ||
IN CHAR8 * | AsciiObjectPath, | ||
IN UINTN | Value | ||
) |
This function updates the integer value of an AML Object.
AcpiTableSdtProtocol | Pointer to ACPI SDT protocol. |
TableHandle | Points to the table representing the starting point for the object path search. |
AsciiObjectPath | Pointer to the ACPI path of the object being updated. |
Value | New value to write to the object. |
EFI_NOT_FOUND | The object is not found with the given path. |
EFI_STATUS EFIAPI AcpiLocateTableBySignature | ( | IN EFI_ACPI_SDT_PROTOCOL * | AcpiSdtProtocol, |
IN UINT32 | TableSignature, | ||
IN OUT UINTN * | Index, | ||
OUT EFI_ACPI_DESCRIPTION_HEADER ** | Table, | ||
OUT UINTN * | TableKey | ||
) |
This function uses the ACPI SDT protocol to search an ACPI table with a given signature.
AcpiTableSdtProtocol | Pointer to ACPI SDT protocol. |
TableSignature | ACPI table signature. |
Index | The zero-based index of the table where to search the table. The index will be updated to the next instance if the table is found with the matched TableSignature. |
Table | Pointer to the table. |
TableKey | Pointer to the table key. |
EFI_NOT_FOUND | The requested index is too large and a table was not found. |
EFI_STATUS EFIAPI AcpiUpdateChecksum | ( | IN OUT UINT8 * | Buffer, |
IN UINTN | Size | ||
) |
This function calculates and updates a UINT8 checksum in an ACPI description table header.
Buffer | Pointer to buffer to checksum |
Size | Number of bytes to checksum |
EFI_SUCCESS | The function completed successfully. |
EFI_INVALID_PARAMETER | Invalid parameter. |
EFI_STATUS LocateAndInstallAcpiFromFv | ( | IN CONST EFI_GUID * | AcpiFile | ) |
Locate and Install the ACPI tables from the Firmware Volume
AcpiFile | Guid of the ACPI file into the Firmware Volume |
EFI_STATUS LocateAndInstallAcpiFromFvConditional | ( | IN CONST EFI_GUID * | AcpiFile, |
IN EFI_LOCATE_ACPI_CHECK | CheckAcpiTableFunction | ||
) |
Locate and Install the ACPI tables from the Firmware Volume if it verifies the function condition.
AcpiFile | Guid of the ACPI file into the Firmware Volume |
CheckAcpiTableFunction | Function that checks if the ACPI table should be installed |