TianoCore EDK2 master
|
Go to the source code of this file.
Data Structures | |
struct | AcpiTableParser |
Macros | |
#define | MAX_ACPI_TABLE_PARSERS 32 |
#define | ACPI_PARSER_SIGNATURE_NULL 0 |
Typedefs | |
typedef VOID(EFIAPI * | PARSE_ACPI_TABLE_PROC) (IN BOOLEAN Trace, IN UINT8 *Ptr, IN UINT32 AcpiTableLength, IN UINT8 AcpiTableRevision) |
typedef struct AcpiTableParser | ACPI_TABLE_PARSER |
Functions | |
EFI_STATUS EFIAPI | RegisterParser (IN UINT32 Signature, IN PARSE_ACPI_TABLE_PROC ParserProc) |
EFI_STATUS EFIAPI | DeregisterParser (IN UINT32 Signature) |
VOID EFIAPI | ProcessAcpiTable (IN UINT8 *Ptr) |
EFI_STATUS EFIAPI | GetParser (IN UINT32 Signature, OUT PARSE_ACPI_TABLE_PROC *ParserProc) |
Header file for ACPI table parser
Copyright (c) 2016 - 2020, Arm Limited. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file AcpiTableParser.h.
#define ACPI_PARSER_SIGNATURE_NULL 0 |
An invalid/NULL signature value.
Definition at line 18 of file AcpiTableParser.h.
#define MAX_ACPI_TABLE_PARSERS 32 |
The maximum number of ACPI table parsers.
Definition at line 14 of file AcpiTableParser.h.
typedef struct AcpiTableParser ACPI_TABLE_PARSER |
The ACPI table parser information
typedef VOID(EFIAPI * PARSE_ACPI_TABLE_PROC) (IN BOOLEAN Trace, IN UINT8 *Ptr, IN UINT32 AcpiTableLength, IN UINT8 AcpiTableRevision) |
A function that parses the ACPI table.
[in] | Trace | If TRUE, trace the ACPI fields. |
[in] | Ptr | Pointer to the start of the buffer. |
[in] | AcpiTableLength | Length of the ACPI table. |
[in] | AcpiTableRevision | Revision of the ACPI table. |
Definition at line 29 of file AcpiTableParser.h.
EFI_STATUS EFIAPI DeregisterParser | ( | IN UINT32 | Signature | ) |
Deregister the ACPI table Parser
This function deregisters the ACPI table parser.
[in] | Signature | The ACPI table signature. |
EFI_SUCCESS | The parser was deregistered. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | A registered parser was not found. |
Definition at line 100 of file AcpiTableParser.c.
EFI_STATUS EFIAPI GetParser | ( | IN UINT32 | Signature, |
OUT PARSE_ACPI_TABLE_PROC * | ParserProc | ||
) |
Get the ACPI table Parser
This function returns the ACPI table parser proc from the list of registered parsers.
[in] | Signature | The ACPI table signature. |
[out] | ParserProc | Pointer to a ACPI table parser proc. |
EFI_SUCCESS | The parser was returned successfully. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | A registered parser was not found. |
Definition at line 140 of file AcpiTableParser.c.
VOID EFIAPI ProcessAcpiTable | ( | IN UINT8 * | Ptr | ) |
This function processes the ACPI tables. This function calls ProcessTableReportOptions() to list the ACPI tables, perform binary dump of the tables and determine if the ACPI fields should be traced.
This function also invokes the parser for the ACPI tables.
This function also performs a RAW dump of the ACPI table including the unknown/unparsed ACPI tables and validates the checksum.
[in] | Ptr | Pointer to the start of the ACPI table data buffer. |
Definition at line 181 of file AcpiTableParser.c.
EFI_STATUS EFIAPI RegisterParser | ( | IN UINT32 | Signature, |
IN PARSE_ACPI_TABLE_PROC | ParserProc | ||
) |
Register the ACPI table Parser
This function registers the ACPI table parser.
[in] | Signature | The ACPI table signature. |
[in] | ParserProc | The ACPI table parser. |
EFI_SUCCESS | The parser is registered. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_ALREADY_STARTED | The parser for the Table was already registered. |
EFI_OUT_OF_RESOURCES | No space to register the parser. |
Definition at line 48 of file AcpiTableParser.c.