[ACPICA] Update to version 20210730. CORE-17760

This commit is contained in:
Thomas Faber 2021-09-10 22:19:51 -04:00
parent 3c2845607c
commit 0a656b574e
No known key found for this signature in database
GPG key ID: 076E7C3D44720826
10 changed files with 257 additions and 5 deletions

View file

@ -629,7 +629,7 @@ AcpiDsExecEndOp (
if (ACPI_SUCCESS (Status))
{
Status = AcpiExWriteDataToField (ObjDesc, Op->Common.Node->Object, NULL);
if ACPI_FAILURE (Status)
if (ACPI_FAILURE (Status))
{
ACPI_EXCEPTION ((AE_INFO, Status, "While writing to buffer field"));
}

View file

@ -142,6 +142,12 @@ typedef enum
/* Types that are specific to particular ACPI tables */
ACPI_DMT_AEST,
ACPI_DMT_AEST_CACHE,
ACPI_DMT_AEST_GIC,
ACPI_DMT_AEST_RES,
ACPI_DMT_AEST_XFACE,
ACPI_DMT_AEST_XRUPT,
ACPI_DMT_ASF,
ACPI_DMT_CEDT,
ACPI_DMT_DMAR,
@ -175,6 +181,7 @@ typedef enum
ACPI_DMT_SRAT,
ACPI_DMT_TPM2,
ACPI_DMT_VIOT,
ACPI_DMT_WPBT_UNICODE,
/* Special opcodes */
@ -252,6 +259,17 @@ extern const char *AcpiGbl_AccessTypes[];
extern const char *AcpiGbl_UpdateRules[];
extern const char *AcpiGbl_MatchOps[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestHdr[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestProcError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestCacheRsrc[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestTlbRsrc[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestGenRsrc[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestMemError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestSmmuError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestVendorError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestGicError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXface[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXrupt[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf1[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf1a[];
@ -573,6 +591,10 @@ AcpiDmDumpUnicode (
UINT32 BufferOffset,
UINT32 ByteLength);
void
AcpiDmDumpAest (
ACPI_TABLE_HEADER *Table);
void
AcpiDmDumpAsf (
ACPI_TABLE_HEADER *Table);

View file

@ -54,6 +54,7 @@
#define METHOD_NAME__CLS "_CLS"
#define METHOD_NAME__CRS "_CRS"
#define METHOD_NAME__DDN "_DDN"
#define METHOD_NAME__DIS "_DIS"
#define METHOD_NAME__DMA "_DMA"
#define METHOD_NAME__HID "_HID"
#define METHOD_NAME__INI "_INI"

View file

@ -453,7 +453,7 @@
/* Conditional execution */
#define ACPI_DEBUG_EXEC(a) a
#define ACPI_DEBUG_ONLY_MEMBERS(a) a;
#define ACPI_DEBUG_ONLY_MEMBERS(a) a
#define _VERBOSE_STRUCTURES

View file

@ -46,7 +46,7 @@
/* Current ACPICA subsystem version in YYYYMMDD format */
#define ACPI_CA_VERSION 0x20210604
#define ACPI_CA_VERSION 0x20210730
#include "acconfig.h"
#include "actypes.h"

View file

@ -97,11 +97,23 @@
#define ACPI_WDDT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_WDDT,f)
#define ACPI_WDRT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_WDRT,f)
#define ACPI_WPBT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_WPBT,f)
#define ACPI_WPBT2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_WPBT_UNICODE,f)
#define ACPI_WSMT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_WSMT,f)
#define ACPI_XENV_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_XENV,f)
/* Subtables */
#define ACPI_AESTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_HEADER,f)
#define ACPI_AEST0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_PROCESSOR,f)
#define ACPI_AEST0A_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_PROCESSOR_CACHE,f)
#define ACPI_AEST0B_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_PROCESSOR_TLB,f)
#define ACPI_AEST0C_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_PROCESSOR_GENERIC,f)
#define ACPI_AEST1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_MEMORY,f)
#define ACPI_AEST2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_SMMU,f)
#define ACPI_AEST3_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_VENDOR,f)
#define ACPI_AEST4_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_GIC,f)
#define ACPI_AEST0D_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_NODE_INTERFACE,f)
#define ACPI_AEST0E_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_NODE_INTERRUPT,f)
#define ACPI_ASF0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_INFO,f)
#define ACPI_ASF1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT,f)
#define ACPI_ASF1a_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT_DATA,f)
@ -271,6 +283,9 @@
/* Flags */
#define ACPI_AEST0_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_AEST_PROCESSOR,f,o)
#define ACPI_AEST0D_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_AEST_NODE_INTERFACE,f,o)
#define ACPI_AEST0E_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_AEST_NODE_INTERRUPT,f,o)
#define ACPI_BGRT_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_BGRT,f,o)
#define ACPI_DRTM_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_DRTM,f,o)
#define ACPI_DRTM1a_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_DRTM_RESOURCE,f,o)

View file

@ -60,6 +60,7 @@
* file. Useful because they make it more difficult to inadvertently type in
* the wrong signature.
*/
#define ACPI_SIG_AEST "AEST" /* Arm Error Source Table */
#define ACPI_SIG_ASF "ASF!" /* Alert Standard Format table */
#define ACPI_SIG_BERT "BERT" /* Boot Error Record Table */
#define ACPI_SIG_BGRT "BGRT" /* Boot Graphics Resource Table */
@ -593,7 +594,7 @@ typedef struct acpi_csrt_descriptor
* DBG2 - Debug Port Table 2
* Version 0 (Both main table and subtables)
*
* Conforms to "Microsoft Debug Port Table 2 (DBG2)", December 10, 2015
* Conforms to "Microsoft Debug Port Table 2 (DBG2)", September 21, 2020
*
******************************************************************************/
@ -650,11 +651,24 @@ typedef struct acpi_dbg2_device
#define ACPI_DBG2_16550_COMPATIBLE 0x0000
#define ACPI_DBG2_16550_SUBSET 0x0001
#define ACPI_DBG2_MAX311XE_SPI 0x0002
#define ACPI_DBG2_ARM_PL011 0x0003
#define ACPI_DBG2_MSM8X60 0x0004
#define ACPI_DBG2_16550_NVIDIA 0x0005
#define ACPI_DBG2_TI_OMAP 0x0006
#define ACPI_DBG2_APM88XXXX 0x0008
#define ACPI_DBG2_MSM8974 0x0009
#define ACPI_DBG2_SAM5250 0x000A
#define ACPI_DBG2_INTEL_USIF 0x000B
#define ACPI_DBG2_IMX6 0x000C
#define ACPI_DBG2_ARM_SBSA_32BIT 0x000D
#define ACPI_DBG2_ARM_SBSA_GENERIC 0x000E
#define ACPI_DBG2_ARM_DCC 0x000F
#define ACPI_DBG2_BCM2835 0x0010
#define ACPI_DBG2_SDM845_1_8432MHZ 0x0011
#define ACPI_DBG2_16550_WITH_GAS 0x0012
#define ACPI_DBG2_SDM845_7_372MHZ 0x0013
#define ACPI_DBG2_INTEL_LPSS 0x0014
#define ACPI_DBG2_1394_STANDARD 0x0000

View file

@ -105,6 +105,193 @@
*/
/*******************************************************************************
*
* AEST - Arm Error Source Table
*
* Conforms to: ACPI for the Armv8 RAS Extensions 1.1 Platform Design Document
* September 2020.
*
******************************************************************************/
typedef struct acpi_table_aest
{
ACPI_TABLE_HEADER Header;
void *NodeArray[];
} ACPI_TABLE_AEST;
/* Common Subtable header - one per Node Structure (Subtable) */
typedef struct acpi_aest_hdr
{
UINT8 Type;
UINT16 Length;
UINT8 Reserved;
UINT32 NodeSpecificOffset;
UINT32 NodeInterfaceOffset;
UINT32 NodeInterruptOffset;
UINT32 NodeInterruptCount;
UINT64 TimestampRate;
UINT64 Reserved1;
UINT64 ErrorInjectionRate;
} ACPI_AEST_HEADER;
/* Values for Type above */
#define ACPI_AEST_PROCESSOR_ERROR_NODE 0
#define ACPI_AEST_MEMORY_ERROR_NODE 1
#define ACPI_AEST_SMMU_ERROR_NODE 2
#define ACPI_AEST_VENDOR_ERROR_NODE 3
#define ACPI_AEST_GIC_ERROR_NODE 4
#define ACPI_AEST_NODE_TYPE_RESERVED 5 /* 5 and above are reserved */
/*
* AEST subtables (Error nodes)
*/
/* 0: Processor Error */
typedef struct acpi_aest_processor
{
UINT32 ProcessorId;
UINT8 ResourceType;
UINT8 Reserved;
UINT8 Flags;
UINT8 Revision;
UINT64 ProcessorAffinity;
} ACPI_AEST_PROCESSOR;
/* Values for ResourceType above, related structs below */
#define ACPI_AEST_CACHE_RESOURCE 0
#define ACPI_AEST_TLB_RESOURCE 1
#define ACPI_AEST_GENERIC_RESOURCE 2
#define ACPI_AEST_RESOURCE_RESERVED 3 /* 3 and above are reserved */
/* 0R: Processor Cache Resource Substructure */
typedef struct acpi_aest_processor_cache
{
UINT32 CacheReference;
UINT32 Reserved;
} ACPI_AEST_PROCESSOR_CACHE;
/* Values for CacheType above */
#define ACPI_AEST_CACHE_DATA 0
#define ACPI_AEST_CACHE_INSTRUCTION 1
#define ACPI_AEST_CACHE_UNIFIED 2
#define ACPI_AEST_CACHE_RESERVED 3 /* 3 and above are reserved */
/* 1R: Processor TLB Resource Substructure */
typedef struct acpi_aest_processor_tlb
{
UINT32 TlbLevel;
UINT32 Reserved;
} ACPI_AEST_PROCESSOR_TLB;
/* 2R: Processor Generic Resource Substructure */
typedef struct acpi_aest_processor_generic
{
UINT8 *Resource;
} ACPI_AEST_PROCESSOR_GENERIC;
/* 1: Memory Error */
typedef struct acpi_aest_memory
{
UINT32 SratProximityDomain;
} ACPI_AEST_MEMORY;
/* 2: Smmu Error */
typedef struct acpi_aest_smmu
{
UINT32 IortNodeReference;
UINT32 SubcomponentReference;
} ACPI_AEST_SMMU;
/* 3: Vendor Defined */
typedef struct acpi_aest_vendor
{
UINT32 AcpiHid;
UINT32 AcpiUid;
UINT8 VendorSpecificData[16];
} ACPI_AEST_VENDOR;
/* 4: Gic Error */
typedef struct acpi_aest_gic
{
UINT32 InterfaceType;
UINT32 InstanceId;
} ACPI_AEST_GIC;
/* Values for InterfaceType above */
#define ACPI_AEST_GIC_CPU 0
#define ACPI_AEST_GIC_DISTRIBUTOR 1
#define ACPI_AEST_GIC_REDISTRIBUTOR 2
#define ACPI_AEST_GIC_ITS 3
#define ACPI_AEST_GIC_RESERVED 4 /* 4 and above are reserved */
/* Node Interface Structure */
typedef struct acpi_aest_node_interface
{
UINT8 Type;
UINT8 Reserved[3];
UINT32 Flags;
UINT64 Address;
UINT32 ErrorRecordIndex;
UINT32 ErrorRecordCount;
UINT64 ErrorRecordImplemented;
UINT64 ErrorStatusReporting;
UINT64 AddressingMode;
} ACPI_AEST_NODE_INTERFACE;
/* Values for Type field above */
#define ACPI_AEST_NODE_SYSTEM_REGISTER 0
#define ACPI_AEST_NODE_MEMORY_MAPPED 1
#define ACPI_AEST_XFACE_RESERVED 2 /* 2 and above are reserved */
/* Node Interrupt Structure */
typedef struct acpi_aest_node_interrupt
{
UINT8 Type;
UINT8 Reserved[2];
UINT8 Flags;
UINT32 Gsiv;
UINT8 IortId;
UINT8 Reserved1[3];
} ACPI_AEST_NODE_INTERRUPT;
/* Values for Type field above */
#define ACPI_AEST_NODE_FAULT_HANDLING 0
#define ACPI_AEST_NODE_ERROR_RECOVERY 1
#define ACPI_AEST_XRUPT_RESERVED 2 /* 2 and above are reserved */
/*******************************************************************************
*
* BDAT - BIOS Data ACPI Table
@ -2055,6 +2242,13 @@ typedef struct acpi_table_prmt_header
} ACPI_TABLE_PRMT_HEADER;
typedef struct acpi_prmt_module_header
{
UINT16 Revision;
UINT16 Length;
} ACPI_PRMT_MODULE_HEADER;
typedef struct acpi_prmt_module_info
{
UINT16 Revision;

View file

@ -847,6 +847,12 @@ typedef struct acpi_table_wpbt
} ACPI_TABLE_WPBT;
typedef struct acpi_wpbt_unicode
{
UINT16 *UnicodeString;
} ACPI_WPBT_UNICODE;
/*******************************************************************************
*

View file

@ -69,7 +69,7 @@ URL: https://gitlab.freedesktop.org/mesa/glu, ftp://ftp.freedesktop.org/pub/mesa
Title: ACPICA
Path: drivers/bus/acpi/acpica
Used Version: 20210604
Used Version: 20210730
License: GPL-2.0 (https://spdx.org/licenses/GPL-2.0.html)
URL: https://acpica.org/