TianoCore EDK2 master
|
#include <Library/BaseMemoryLib.h>
#include <Library/PrintLib.h>
#include <Library/UefiLib.h>
#include "AcpiParser.h"
#include "AcpiView.h"
#include "AcpiViewConfig.h"
#include "PcctParser.h"
Go to the source code of this file.
Functions | |
STATIC VOID EFIAPI | ValidateRangeLength4 (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidateRangeLength8 (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidatePccMemoryIoGas (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidatePccGas (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidatePccDoorbellGas (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidatePccIntAckGas (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidatePccErrStatusGas (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID EFIAPI | ValidatePlatInterrupt (IN UINT8 *Ptr, IN UINT32 Length, IN VOID *Context) |
STATIC VOID | DumpPccSubspaceType0 (IN UINT8 *Ptr, IN UINT8 Length) |
STATIC VOID | DumpPccSubspaceType1 (IN UINT8 *Ptr, IN UINT8 Length) |
STATIC VOID | DumpPccSubspaceType2 (IN UINT8 *Ptr, IN UINT8 Length) |
STATIC VOID | DumpPccSubspaceType3 (IN UINT8 *Ptr, IN UINT8 Length) |
STATIC VOID | DumpPccSubspaceType4 (IN UINT8 *Ptr, IN UINT8 Length) |
STATIC VOID | DumpPccSubspaceType5 (IN UINT8 *Ptr, IN UINT8 Length) |
VOID EFIAPI | ParseAcpiPcct (IN BOOLEAN Trace, IN UINT8 *Ptr, IN UINT32 AcpiTableLength, IN UINT8 AcpiTableRevision) |
PCCT table parser
Copyright (c) 2021 - 2024, Arm Limited. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file PcctParser.c.
This function parses the PCC Subspace type 0.
[in] | Ptr | Pointer to the start of Subspace Structure. |
[in] | Length | Length of the Subspace Structure. |
Definition at line 421 of file PcctParser.c.
This function parses the PCC Subspace type 1.
[in] | Ptr | Pointer to the start of the Subspace Structure. |
[in] | Length | Length of the Subspace Structure. |
Definition at line 444 of file PcctParser.c.
This function parses the PCC Subspace type 2.
[in] | Ptr | Pointer to the start of the Subspace Structure. |
[in] | Length | Length of the Subspace Structure. |
Definition at line 467 of file PcctParser.c.
This function parses the PCC Subspace type 3.
[in] | Ptr | Pointer to the start of the Subspace Structure. |
[in] | Length | Length of the Subspace Structure. |
Definition at line 490 of file PcctParser.c.
This function parses the PCC Subspace type 4.
[in] | Ptr | Pointer to the start of the Subspace Structure. |
[in] | Length | Length of the Subspace Structure. |
Definition at line 513 of file PcctParser.c.
This function parses the PCC Subspace type 5.
[in] | Ptr | Pointer to the start of the Subspace Structure. |
[in] | Length | Length of the Subspace Structure. |
Definition at line 536 of file PcctParser.c.
VOID EFIAPI ParseAcpiPcct | ( | IN BOOLEAN | Trace, |
IN UINT8 * | Ptr, | ||
IN UINT32 | AcpiTableLength, | ||
IN UINT8 | AcpiTableRevision | ||
) |
This function parses the ACPI PCCT table including its sub-structures of type 0 through 4. When trace is enabled this function parses the PCCT table and traces the ACPI table fields.
This function also performs validation of the ACPI table fields.
[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 566 of file PcctParser.c.
This function validates doorbell address space for type 4 structure.
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 153 of file PcctParser.c.
This function validates error status address space for type 4 structure.
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 225 of file PcctParser.c.
This function validates address space for structures of types other than 0.
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 123 of file PcctParser.c.
This function validates interrupt acknowledge address space for type 4 structure.
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 186 of file PcctParser.c.
This function validates address space for Memory/IO GAS.
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 94 of file PcctParser.c.
This function validates platform interrupt flags for type 4 structure.
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 250 of file PcctParser.c.
This function validates the length coded on 4 bytes of a shared memory range
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 38 of file PcctParser.c.
This function validates the length coded on 8 bytes of a shared memory range
[in] | Ptr | Pointer to the start of the field data. |
[in] | Length | Length of the field. |
[in] | Context | Pointer to context specific information e.g. this could be a pointer to the ACPI table header. |
Definition at line 66 of file PcctParser.c.
STATIC ACPI_DESCRIPTION_HEADER_INFO AcpiHdrInfo |
Definition at line 20 of file PcctParser.c.
STATIC UINT8* ExtendedPccSubspaceInterruptFlags |
Definition at line 25 of file PcctParser.c.
STATIC UINT32* PccGlobalFlags |
Definition at line 22 of file PcctParser.c.
STATIC CONST ACPI_PARSER PccSubspaceHeaderParser[] |
An ACPI_PARSER array describing the platform communications channel subspace structure header.
Definition at line 283 of file PcctParser.c.
STATIC UINT8* PccSubspaceLength |
Definition at line 23 of file PcctParser.c.
STATIC UINT8* PccSubspaceType |
Definition at line 24 of file PcctParser.c.
STATIC CONST ACPI_PARSER PccSubspaceType0Parser[] |
An ACPI_PARSER array describing the Generic Communications Subspace - Type 0
Definition at line 291 of file PcctParser.c.
STATIC CONST ACPI_PARSER PccSubspaceType1Parser[] |
An ACPI_PARSER array describing the HW-Reduced Communications Subspace
Definition at line 310 of file PcctParser.c.
STATIC CONST ACPI_PARSER PccSubspaceType2Parser[] |
An ACPI_PARSER array describing the HW-Reduced Communications Subspace
Definition at line 331 of file PcctParser.c.
STATIC CONST ACPI_PARSER PccSubspaceType3Parser[] |
An ACPI_PARSER array describing the Extended PCC Subspaces - Type 3/4
Definition at line 356 of file PcctParser.c.
STATIC CONST ACPI_PARSER PccSubspaceType5Parser[] |
An ACPI_PARSER array describing the HW Registers based Communications Subspace Structure - Type 5
Definition at line 394 of file PcctParser.c.
STATIC CONST ACPI_PARSER PcctParser[] |
An ACPI_PARSER array describing the ACPI PCCT Table.
Definition at line 273 of file PcctParser.c.