aboutsummaryrefslogtreecommitdiff
path: root/source/include
diff options
context:
space:
mode:
Diffstat (limited to 'source/include')
-rw-r--r--source/include/acapps.h4
-rw-r--r--source/include/acbuffer.h2
-rw-r--r--source/include/acclib.h2
-rw-r--r--source/include/accommon.h2
-rw-r--r--source/include/acconfig.h2
-rw-r--r--source/include/acconvert.h2
-rw-r--r--source/include/acdebug.h2
-rw-r--r--source/include/acdisasm.h45
-rw-r--r--source/include/acdispat.h2
-rw-r--r--source/include/acevents.h2
-rw-r--r--source/include/acexcep.h2
-rw-r--r--source/include/acglobal.h2
-rw-r--r--source/include/achware.h2
-rw-r--r--source/include/acinterp.h2
-rw-r--r--source/include/aclocal.h5
-rw-r--r--source/include/acmacros.h2
-rw-r--r--source/include/acnames.h2
-rw-r--r--source/include/acnamesp.h2
-rw-r--r--source/include/acobject.h2
-rw-r--r--source/include/acopcode.h2
-rw-r--r--source/include/acoutput.h2
-rw-r--r--source/include/acparser.h2
-rw-r--r--source/include/acpi.h2
-rw-r--r--source/include/acpiosxf.h2
-rw-r--r--source/include/acpixf.h21
-rw-r--r--source/include/acpredef.h2
-rw-r--r--source/include/acresrc.h4
-rw-r--r--source/include/acrestyp.h41
-rw-r--r--source/include/acstruct.h2
-rw-r--r--source/include/actables.h2
-rw-r--r--source/include/actbinfo.h21
-rw-r--r--source/include/actbl.h2
-rw-r--r--source/include/actbl1.h97
-rw-r--r--source/include/actbl2.h244
-rw-r--r--source/include/actbl3.h2
-rw-r--r--source/include/actypes.h8
-rw-r--r--source/include/acutils.h4
-rw-r--r--source/include/acuuid.h2
-rw-r--r--source/include/amlcode.h2
-rw-r--r--source/include/amlresrc.h27
-rw-r--r--source/include/platform/accygwin.h2
-rw-r--r--source/include/platform/acdragonflyex.h2
-rw-r--r--source/include/platform/acefi.h2
-rw-r--r--source/include/platform/acefiex.h4
-rw-r--r--source/include/platform/acenv.h4
-rw-r--r--source/include/platform/acenvex.h2
-rw-r--r--source/include/platform/acfreebsd.h2
-rw-r--r--source/include/platform/acgcc.h13
-rw-r--r--source/include/platform/acgccex.h2
-rw-r--r--source/include/platform/achaiku.h6
-rw-r--r--source/include/platform/acintel.h2
-rw-r--r--source/include/platform/aclinux.h7
-rw-r--r--source/include/platform/aclinuxex.h2
-rw-r--r--source/include/platform/acmacosx.h2
-rw-r--r--source/include/platform/acmsvc.h2
-rw-r--r--source/include/platform/acmsvcex.h2
-rw-r--r--source/include/platform/acnetbsd.h2
-rw-r--r--source/include/platform/acos2.h2
-rw-r--r--source/include/platform/acqnx.h2
-rw-r--r--source/include/platform/acwin.h2
-rw-r--r--source/include/platform/acwin64.h2
-rw-r--r--source/include/platform/aczephyr.h192
62 files changed, 726 insertions, 109 deletions
diff --git a/source/include/acapps.h b/source/include/acapps.h
index 382ab1700b34..9662e5117dcf 100644
--- a/source/include/acapps.h
+++ b/source/include/acapps.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -159,7 +159,7 @@
/* Common info for tool signons */
#define ACPICA_NAME "Intel ACPI Component Architecture"
-#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2022 Intel Corporation"
+#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2023 Intel Corporation"
#if ACPI_MACHINE_WIDTH == 64
#define ACPI_WIDTH " (64-bit version)"
diff --git a/source/include/acbuffer.h b/source/include/acbuffer.h
index 0739feb52817..63225aa7de7a 100644
--- a/source/include/acbuffer.h
+++ b/source/include/acbuffer.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acclib.h b/source/include/acclib.h
index 75c48119cab7..d03652c1aad9 100644
--- a/source/include/acclib.h
+++ b/source/include/acclib.h
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/accommon.h b/source/include/accommon.h
index 210035cd4961..219372d3b7ed 100644
--- a/source/include/accommon.h
+++ b/source/include/accommon.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acconfig.h b/source/include/acconfig.h
index 04f7f4f0caa0..5ae00322ec20 100644
--- a/source/include/acconfig.h
+++ b/source/include/acconfig.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acconvert.h b/source/include/acconvert.h
index 048fd53e4de2..3aa36a8bf389 100644
--- a/source/include/acconvert.h
+++ b/source/include/acconvert.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acdebug.h b/source/include/acdebug.h
index 6716a094d4ad..c1596ee89ddd 100644
--- a/source/include/acdebug.h
+++ b/source/include/acdebug.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acdisasm.h b/source/include/acdisasm.h
index 47ce0b15bffd..afc9034b8b26 100644
--- a/source/include/acdisasm.h
+++ b/source/include/acdisasm.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -260,6 +260,7 @@ typedef enum
ACPI_DMT_AEST_XRUPT,
ACPI_DMT_AGDI,
ACPI_DMT_ASF,
+ ACPI_DMT_ASPT,
ACPI_DMT_CDAT,
ACPI_DMT_CEDT,
ACPI_DMT_DMAR,
@@ -280,6 +281,7 @@ typedef enum
ACPI_DMT_IVRS_UNTERMINATED_STRING,
ACPI_DMT_LPIT,
ACPI_DMT_MADT,
+ ACPI_DMT_MPAM_LOCATOR,
ACPI_DMT_NFIT,
ACPI_DMT_NHLT1,
ACPI_DMT_NHLT1a,
@@ -294,6 +296,7 @@ typedef enum
ACPI_DMT_PMTT_VENDOR,
ACPI_DMT_PPTT,
ACPI_DMT_RGRT,
+ ACPI_DMT_RHCT,
ACPI_DMT_SDEI,
ACPI_DMT_SDEV,
ACPI_DMT_SLIC,
@@ -399,6 +402,11 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf2a[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf3[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf4[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsfHdr[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsptHdr[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt0[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt1[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoAspt2[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoBdat[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoBoot[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoBert[];
@@ -550,6 +558,17 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadtHdr[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMcfg[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMcfg0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMchi[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam0[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1A[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1B[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1C[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1D[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1E[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1F[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1G[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam1Deps[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpam2[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMpst0A[];
@@ -623,6 +642,12 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoPrmtHandler[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoRasf[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoRgrt[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoRgrt0[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhct[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctNodeHdr[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctIsa1[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctIsaPad[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctHartInfo1[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoRhctHartInfo2[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoRsdp1[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoRsdp2[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoS3pt[];
@@ -759,6 +784,10 @@ AcpiDmDumpAsf (
ACPI_TABLE_HEADER *Table);
void
+AcpiDmDumpAspt (
+ ACPI_TABLE_HEADER *Table);
+
+void
AcpiDmDumpCcel (
ACPI_TABLE_HEADER *Table);
@@ -839,6 +868,10 @@ AcpiDmDumpMcfg (
ACPI_TABLE_HEADER *Table);
void
+AcpiDmDumpMpam (
+ ACPI_TABLE_HEADER *Table);
+
+void
AcpiDmDumpMpst (
ACPI_TABLE_HEADER *Table);
@@ -882,6 +915,10 @@ void
AcpiDmDumpRgrt (
ACPI_TABLE_HEADER *Table);
+void
+AcpiDmDumpRhct (
+ ACPI_TABLE_HEADER *Table);
+
UINT32
AcpiDmDumpRsdp (
ACPI_TABLE_HEADER *Table);
@@ -1323,6 +1360,12 @@ AcpiDmVendorCommon (
UINT32 Length,
UINT32 Level);
+void
+AcpiDmClockInputDescriptor (
+ ACPI_OP_WALK_INFO *Info,
+ AML_RESOURCE *Resource,
+ UINT32 Length,
+ UINT32 Level);
/*
* dmresrcs
diff --git a/source/include/acdispat.h b/source/include/acdispat.h
index 2c44c9f19613..3e8ad8106c53 100644
--- a/source/include/acdispat.h
+++ b/source/include/acdispat.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acevents.h b/source/include/acevents.h
index f8c5d77699a0..f9972d8ded51 100644
--- a/source/include/acevents.h
+++ b/source/include/acevents.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acexcep.h b/source/include/acexcep.h
index 92e949722940..9271dc4c81ea 100644
--- a/source/include/acexcep.h
+++ b/source/include/acexcep.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acglobal.h b/source/include/acglobal.h
index 1850d94beb2e..28fc6514bf94 100644
--- a/source/include/acglobal.h
+++ b/source/include/acglobal.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/achware.h b/source/include/achware.h
index 256008c74c7a..6e0631e05720 100644
--- a/source/include/achware.h
+++ b/source/include/achware.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acinterp.h b/source/include/acinterp.h
index d9cec3455d7b..4c36708a00ed 100644
--- a/source/include/acinterp.h
+++ b/source/include/acinterp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/aclocal.h b/source/include/aclocal.h
index 74eb6e27f08c..9c090a07d9b4 100644
--- a/source/include/aclocal.h
+++ b/source/include/aclocal.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1452,7 +1452,8 @@ typedef struct acpi_port_info
#define ACPI_RESOURCE_NAME_PIN_GROUP 0x90
#define ACPI_RESOURCE_NAME_PIN_GROUP_FUNCTION 0x91
#define ACPI_RESOURCE_NAME_PIN_GROUP_CONFIG 0x92
-#define ACPI_RESOURCE_NAME_LARGE_MAX 0x92
+#define ACPI_RESOURCE_NAME_CLOCK_INPUT 0x93
+#define ACPI_RESOURCE_NAME_LARGE_MAX 0x94
/*****************************************************************************
diff --git a/source/include/acmacros.h b/source/include/acmacros.h
index 11fd47cc3cab..66c90b6aba09 100644
--- a/source/include/acmacros.h
+++ b/source/include/acmacros.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acnames.h b/source/include/acnames.h
index 846d192b229d..a6cdd2e2c7e4 100644
--- a/source/include/acnames.h
+++ b/source/include/acnames.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acnamesp.h b/source/include/acnamesp.h
index 7b8d069d6b26..432d9d4478cb 100644
--- a/source/include/acnamesp.h
+++ b/source/include/acnamesp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acobject.h b/source/include/acobject.h
index b2c9dd9b7a0f..4454c572b521 100644
--- a/source/include/acobject.h
+++ b/source/include/acobject.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acopcode.h b/source/include/acopcode.h
index 7e54a47f7063..f2ce2cd53e80 100644
--- a/source/include/acopcode.h
+++ b/source/include/acopcode.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acoutput.h b/source/include/acoutput.h
index cd3d26d52a22..502d9a94f7af 100644
--- a/source/include/acoutput.h
+++ b/source/include/acoutput.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acparser.h b/source/include/acparser.h
index 4437d612ea63..0dd0e345600e 100644
--- a/source/include/acparser.h
+++ b/source/include/acparser.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpi.h b/source/include/acpi.h
index 081e3b7d2ea7..445e4413ed11 100644
--- a/source/include/acpi.h
+++ b/source/include/acpi.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpiosxf.h b/source/include/acpiosxf.h
index 67c110136a54..c4857cae9db1 100644
--- a/source/include/acpiosxf.h
+++ b/source/include/acpiosxf.h
@@ -10,7 +10,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpixf.h b/source/include/acpixf.h
index 7b779375091f..a7d61033a7b8 100644
--- a/source/include/acpixf.h
+++ b/source/include/acpixf.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -154,7 +154,7 @@
/* Current ACPICA subsystem version in YYYYMMDD format */
-#define ACPI_CA_VERSION 0x20221020
+#define ACPI_CA_VERSION 0x20230331
#include "acconfig.h"
#include "actypes.h"
@@ -770,7 +770,7 @@ ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
AcpiGetHandle (
ACPI_HANDLE Parent,
- ACPI_STRING Pathname,
+ const char *Pathname,
ACPI_HANDLE *RetHandle))
ACPI_EXTERNAL_RETURN_STATUS (
@@ -944,6 +944,21 @@ AcpiInstallAddressSpaceHandler (
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
+AcpiInstallAddressSpaceHandlerNo_Reg(
+ ACPI_HANDLE Device,
+ ACPI_ADR_SPACE_TYPE SpaceId,
+ ACPI_ADR_SPACE_HANDLER Handler,
+ ACPI_ADR_SPACE_SETUP Setup,
+ void *Context))
+
+ACPI_EXTERNAL_RETURN_STATUS (
+ACPI_STATUS
+AcpiExecuteRegMethods (
+ ACPI_HANDLE Device,
+ ACPI_ADR_SPACE_TYPE SpaceId))
+
+ACPI_EXTERNAL_RETURN_STATUS (
+ACPI_STATUS
AcpiRemoveAddressSpaceHandler (
ACPI_HANDLE Device,
ACPI_ADR_SPACE_TYPE SpaceId,
diff --git a/source/include/acpredef.h b/source/include/acpredef.h
index 9ad8c0ffcc38..ca47e7cc0963 100644
--- a/source/include/acpredef.h
+++ b/source/include/acpredef.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acresrc.h b/source/include/acresrc.h
index 8214ed835c5b..85be65dc17eb 100644
--- a/source/include/acresrc.h
+++ b/source/include/acresrc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -506,6 +506,7 @@ extern ACPI_RSCONVERT_INFO AcpiRsConvertPinConfig[];
extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroup[];
extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroupFunction[];
extern ACPI_RSCONVERT_INFO AcpiRsConvertPinGroupConfig[];
+extern ACPI_RSCONVERT_INFO AcpiRsConvertClockInput[];
/* These resources require separate get/set tables */
@@ -562,6 +563,7 @@ extern ACPI_RSDUMP_INFO AcpiRsDumpPinConfig[];
extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroup[];
extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroupFunction[];
extern ACPI_RSDUMP_INFO AcpiRsDumpPinGroupConfig[];
+extern ACPI_RSDUMP_INFO AcpiRsDumpClockInput[];
#endif
#endif /* __ACRESRC_H__ */
diff --git a/source/include/acrestyp.h b/source/include/acrestyp.h
index f045c2000b71..3065bdcee9f2 100644
--- a/source/include/acrestyp.h
+++ b/source/include/acrestyp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -290,7 +290,10 @@ typedef struct acpi_resource_irq
UINT8 Shareable;
UINT8 WakeCapable;
UINT8 InterruptCount;
- UINT8 Interrupts[1];
+ union {
+ UINT8 Interrupt;
+ ACPI_FLEX_ARRAY(UINT8, Interrupts);
+ } u;
} ACPI_RESOURCE_IRQ;
@@ -300,7 +303,10 @@ typedef struct acpi_resource_dma
UINT8 BusMaster;
UINT8 Transfer;
UINT8 ChannelCount;
- UINT8 Channels[1];
+ union {
+ UINT8 Channel;
+ ACPI_FLEX_ARRAY(UINT8, Channels);
+ } u;
} ACPI_RESOURCE_DMA;
@@ -357,7 +363,7 @@ typedef struct acpi_resource_fixed_dma
typedef struct acpi_resource_vendor
{
UINT16 ByteLength;
- UINT8 ByteData[1];
+ UINT8 ByteData[];
} ACPI_RESOURCE_VENDOR;
@@ -368,7 +374,7 @@ typedef struct acpi_resource_vendor_typed
UINT16 ByteLength;
UINT8 UuidSubtype;
UINT8 Uuid[ACPI_UUID_LENGTH];
- UINT8 ByteData[1];
+ UINT8 ByteData[];
} ACPI_RESOURCE_VENDOR_TYPED;
@@ -538,7 +544,10 @@ typedef struct acpi_resource_extended_irq
UINT8 WakeCapable;
UINT8 InterruptCount;
ACPI_RESOURCE_SOURCE ResourceSource;
- UINT32 Interrupts[1];
+ union {
+ UINT32 Interrupt;
+ ACPI_FLEX_ARRAY(UINT32, Interrupts);
+ } u;
} ACPI_RESOURCE_EXTENDED_IRQ;
@@ -770,6 +779,16 @@ typedef struct acpi_resource_pin_config
} ACPI_RESOURCE_PIN_CONFIG;
+typedef struct acpi_resource_clock_input
+{
+ UINT8 RevisionId;
+ UINT8 Mode;
+ UINT8 Scale;
+ UINT16 FrequencyDivisor;
+ UINT32 FrequencyNumerator;
+ ACPI_RESOURCE_SOURCE ResourceSource;
+} ACPI_RESOURCE_CLOCK_INPUT;
+
/* Values for PinConfigType field above */
#define ACPI_PIN_CONFIG_DEFAULT 0
@@ -853,7 +872,8 @@ typedef struct acpi_resource_pin_group_config
#define ACPI_RESOURCE_TYPE_PIN_GROUP 22 /* ACPI 6.2 */
#define ACPI_RESOURCE_TYPE_PIN_GROUP_FUNCTION 23 /* ACPI 6.2 */
#define ACPI_RESOURCE_TYPE_PIN_GROUP_CONFIG 24 /* ACPI 6.2 */
-#define ACPI_RESOURCE_TYPE_MAX 24
+#define ACPI_RESOURCE_TYPE_CLOCK_INPUT 25 /* ACPI 6.5 */
+#define ACPI_RESOURCE_TYPE_MAX 25
/* Master union for resource descriptors */
@@ -888,6 +908,7 @@ typedef union acpi_resource_data
ACPI_RESOURCE_PIN_GROUP PinGroup;
ACPI_RESOURCE_PIN_GROUP_FUNCTION PinGroupFunction;
ACPI_RESOURCE_PIN_GROUP_CONFIG PinGroupConfig;
+ ACPI_RESOURCE_CLOCK_INPUT ClockInput;
/* Common fields */
@@ -927,8 +948,10 @@ typedef struct acpi_pci_routing_table
UINT32 Pin;
UINT64 Address; /* here for 64-bit alignment */
UINT32 SourceIndex;
- char Source[4]; /* pad to 64 bits so sizeof() works in all cases */
-
+ union {
+ char Pad[4]; /* pad to 64 bits so sizeof() works in all cases */
+ ACPI_FLEX_ARRAY(char, Source);
+ } u;
} ACPI_PCI_ROUTING_TABLE;
#endif /* __ACRESTYP_H__ */
diff --git a/source/include/acstruct.h b/source/include/acstruct.h
index d50c7a1b6468..fe0871794341 100644
--- a/source/include/acstruct.h
+++ b/source/include/acstruct.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actables.h b/source/include/actables.h
index e9b070f91d5f..21c344358350 100644
--- a/source/include/actables.h
+++ b/source/include/actables.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actbinfo.h b/source/include/actbinfo.h
index 7ce3c21e594c..5417aff4a313 100644
--- a/source/include/actbinfo.h
+++ b/source/include/actbinfo.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -153,6 +153,7 @@
* Macros used to generate offsets to specific table fields
*/
#define ACPI_AGDI_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_AGDI,f)
+#define ACPI_ASPT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_ASPT,f)
#define ACPI_FACS_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_FACS,f)
#define ACPI_GAS_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_GENERIC_ADDRESS,f)
#define ACPI_HDR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_HEADER,f)
@@ -188,6 +189,7 @@
#define ACPI_PMTT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_PMTT,f)
#define ACPI_RASF_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_RASF,f)
#define ACPI_RGRT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_RGRT,f)
+#define ACPI_RHCT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_RHCT,f)
#define ACPI_S3PT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_S3PT,f)
#define ACPI_SBST_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_SBST,f)
#define ACPI_SDEI_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_SDEI,f)
@@ -234,6 +236,10 @@
#define ACPI_ASF2a_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_CONTROL_DATA,f)
#define ACPI_ASF3_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_RMCP,f)
#define ACPI_ASF4_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ADDRESS,f)
+#define ACPI_ASPTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASPT_HEADER,f)
+#define ACPI_ASPT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASPT_GLOBAL_REGS,f)
+#define ACPI_ASPT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASPT_SEV_MBOX_REGS,f)
+#define ACPI_ASPT2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASPT_ACPI_MBOX_REGS,f)
#define ACPI_CDAT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_CDAT,f)
#define ACPI_CDATH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CDAT_HEADER,f)
#define ACPI_CDAT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CDAT_DSMAS,f)
@@ -331,6 +337,16 @@
#define ACPI_MADT17_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MADT_OEM_DATA,f)
#define ACPI_MADTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_SUBTABLE_HEADER,f)
#define ACPI_MCFG0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MCFG_ALLOCATION,f)
+#define ACPI_MPAM0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_MSC_NODE,f)
+#define ACPI_MPAM1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_NODE,f)
+#define ACPI_MPAM1A_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_CACHE_LOCATOR,f)
+#define ACPI_MPAM1B_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_MEMORY_LOCATOR,f)
+#define ACPI_MPAM1C_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_SMMU_INTERFACE,f)
+#define ACPI_MPAM1D_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_MEMCACHE_INTERFACE,f)
+#define ACPI_MPAM1E_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_ACPI_INTERFACE,f)
+#define ACPI_MPAM1F_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_INTERCONNECT_INTERFACE,f)
+#define ACPI_MPAM1G_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_RESOURCE_GENERIC_LOCATOR,f)
+#define ACPI_MPAM2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPAM_FUNC_DEPS,f)
#define ACPI_MPST0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_NODE,f)
#define ACPI_MPST0A_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_STATE,f)
#define ACPI_MPST0B_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPST_COMPONENT,f)
@@ -385,6 +401,9 @@
#define ACPI_PRMTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_PRMT_HEADER,f)
#define ACPI_PRMT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_PRMT_MODULE_INFO,f)
#define ACPI_PRMT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_PRMT_HANDLER_INFO,f)
+#define ACPI_RHCTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_RHCT_NODE_HEADER,f)
+#define ACPI_RHCT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_RHCT_ISA_STRING,f)
+#define ACPI_RHCTFFFF_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_RHCT_HART_INFO,f)
#define ACPI_S3PTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_FPDT_HEADER,f)
#define ACPI_S3PT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_S3PT_RESUME,f)
#define ACPI_S3PT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_S3PT_SUSPEND,f)
diff --git a/source/include/actbl.h b/source/include/actbl.h
index f23080fb4f80..2a1484910c0a 100644
--- a/source/include/actbl.h
+++ b/source/include/actbl.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actbl1.h b/source/include/actbl1.h
index 340b636b5e24..1b115ae357a3 100644
--- a/source/include/actbl1.h
+++ b/source/include/actbl1.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -170,6 +170,7 @@
*/
#define ACPI_SIG_AEST "AEST" /* Arm Error Source Table */
#define ACPI_SIG_ASF "ASF!" /* Alert Standard Format table */
+#define ACPI_SIG_ASPT "ASPT" /* AMD Secure Processor Table */
#define ACPI_SIG_BERT "BERT" /* Boot Error Record Table */
#define ACPI_SIG_BGRT "BGRT" /* Boot Graphics Resource Table */
#define ACPI_SIG_BOOT "BOOT" /* Simple Boot Flag Table */
@@ -398,6 +399,86 @@ typedef struct acpi_asf_address
} ACPI_ASF_ADDRESS;
+/*******************************************************************************
+ *
+ * ASPT - AMD Secure Processor Table (Signature "ASPT")
+ * Revision 0x1
+ *
+ * Conforms to AMD Socket SP5/SP6 Platform ASPT Rev1 Specification,
+ * 12 September 2022
+ *
+ ******************************************************************************/
+
+typedef struct acpi_table_aspt
+{
+ ACPI_TABLE_HEADER Header; /* Common ACPI table header */
+ UINT32 NumEntries;
+
+} ACPI_TABLE_ASPT;
+
+
+/* ASPT subtable header */
+
+typedef struct acpi_aspt_header
+{
+ UINT16 Type;
+ UINT16 Length;
+
+} ACPI_ASPT_HEADER;
+
+
+/* Values for Type field above */
+
+enum AcpiAsptType
+{
+ ACPI_ASPT_TYPE_GLOBAL_REGS = 0,
+ ACPI_ASPT_TYPE_SEV_MBOX_REGS = 1,
+ ACPI_ASPT_TYPE_ACPI_MBOX_REGS = 2,
+ ACPI_ASPT_TYPE_UNKNOWN = 3,
+};
+
+/*
+ * ASPT subtables
+ */
+
+/* 0: ASPT Global Registers */
+
+typedef struct acpi_aspt_global_regs
+{
+ ACPI_ASPT_HEADER Header;
+ UINT32 Reserved;
+ UINT64 FeatureRegAddr;
+ UINT64 IrqEnRegAddr;
+ UINT64 IrqStRegAddr;
+
+} ACPI_ASPT_GLOBAL_REGS;
+
+
+/* 1: ASPT SEV Mailbox Registers */
+
+typedef struct acpi_aspt_sev_mbox_regs
+{
+ ACPI_ASPT_HEADER Header;
+ UINT8 MboxIrqId;
+ UINT8 Reserved[3];
+ UINT64 CmdRespRegAddr;
+ UINT64 CmdBufLoRegAddr;
+ UINT64 CmdBufHiRegAddr;
+
+} ACPI_ASPT_SEV_MBOX_REGS;
+
+
+/* 2: ASPT ACPI Mailbox Registers */
+
+typedef struct acpi_aspt_acpi_mbox_regs
+{
+ ACPI_ASPT_HEADER Header;
+ UINT32 Reserved1;
+ UINT64 CmdRespRegAddr;
+ UINT64 Reserved2[2];
+
+} ACPI_ASPT_ACPI_MBOX_REGS;
+
/*******************************************************************************
*
@@ -495,7 +576,6 @@ typedef struct acpi_table_boot
} ACPI_TABLE_BOOT;
-
/*******************************************************************************
*
* CDAT - Coherent Device Attribute Table
@@ -543,7 +623,7 @@ enum AcpiCdatType
/* Subtable 0: Device Scoped Memory Affinity Structure (DSMAS) */
-typedef struct acpi_cadt_dsmas
+typedef struct acpi_cdat_dsmas
{
UINT8 DsmadHandle;
UINT8 Flags;
@@ -1139,7 +1219,10 @@ typedef struct acpi_dmar_andd
ACPI_DMAR_HEADER Header;
UINT8 Reserved[3];
UINT8 DeviceNumber;
- char DeviceName[1];
+ union {
+ char __pad;
+ ACPI_FLEX_ARRAY(char, DeviceName);
+ } u;
} ACPI_DMAR_ANDD;
@@ -1192,7 +1275,7 @@ typedef struct acpi_table_drtm
typedef struct acpi_drtm_vtable_list
{
UINT32 ValidatedTableCount;
- UINT64 ValidatedTables[1];
+ UINT64 ValidatedTables[];
} ACPI_DRTM_VTABLE_LIST;
@@ -1211,7 +1294,7 @@ typedef struct acpi_drtm_resource
typedef struct acpi_drtm_resource_list
{
UINT32 ResourceCount;
- ACPI_DRTM_RESOURCE Resources[1];
+ ACPI_DRTM_RESOURCE Resources[];
} ACPI_DRTM_RESOURCE_LIST;
@@ -1239,7 +1322,7 @@ typedef struct acpi_table_ecdt
ACPI_GENERIC_ADDRESS Data; /* Address of EC data register */
UINT32 Uid; /* Unique ID - must be same as the EC _UID method */
UINT8 Gpe; /* The GPE for the EC */
- UINT8 Id[1]; /* Full namepath of the EC in the ACPI namespace */
+ UINT8 Id[]; /* Full namepath of the EC in the ACPI namespace */
} ACPI_TABLE_ECDT;
diff --git a/source/include/actbl2.h b/source/include/actbl2.h
index 4be5f0fce884..9b2812a0f22f 100644
--- a/source/include/actbl2.h
+++ b/source/include/actbl2.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -179,6 +179,7 @@
#define ACPI_SIG_MADT "APIC" /* Multiple APIC Description Table */
#define ACPI_SIG_MCFG "MCFG" /* PCI Memory Mapped Configuration table */
#define ACPI_SIG_MCHI "MCHI" /* Management Controller Host Interface table */
+#define ACPI_SIG_MPAM "MPAM" /* Memory System Resource Partitioning and Monitoring Table */
#define ACPI_SIG_MPST "MPST" /* Memory Power State Table */
#define ACPI_SIG_MSDM "MSDM" /* Microsoft Data Management Table */
#define ACPI_SIG_NFIT "NFIT" /* NVDIMM Firmware Interface Table */
@@ -191,6 +192,7 @@
#define ACPI_SIG_PRMT "PRMT" /* Platform Runtime Mechanism Table */
#define ACPI_SIG_RASF "RASF" /* RAS Feature table */
#define ACPI_SIG_RGRT "RGRT" /* Regulatory Graphics Resource Table */
+#define ACPI_SIG_RHCT "RHCT" /* RISC-V Hart Capabilities Table */
#define ACPI_SIG_SBST "SBST" /* Smart Battery Specification Table */
#define ACPI_SIG_SDEI "SDEI" /* Software Delegated Exception Interface Table */
#define ACPI_SIG_SDEV "SDEV" /* Secure Devices table */
@@ -229,13 +231,12 @@
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
+typedef struct acpi_aest_hdr
{
UINT8 Type;
UINT16 Length;
@@ -266,7 +267,7 @@ typedef struct acpi_aest_hdr
/* 0: Processor Error */
-typedef struct acpi_aest_processor
+typedef struct acpi_aest_processor
{
UINT32 ProcessorId;
UINT8 ResourceType;
@@ -286,7 +287,7 @@ typedef struct acpi_aest_processor
/* 0R: Processor Cache Resource Substructure */
-typedef struct acpi_aest_processor_cache
+typedef struct acpi_aest_processor_cache
{
UINT32 CacheReference;
UINT32 Reserved;
@@ -302,7 +303,7 @@ typedef struct acpi_aest_processor_cache
/* 1R: Processor TLB Resource Substructure */
-typedef struct acpi_aest_processor_tlb
+typedef struct acpi_aest_processor_tlb
{
UINT32 TlbLevel;
UINT32 Reserved;
@@ -311,7 +312,7 @@ typedef struct acpi_aest_processor_tlb
/* 2R: Processor Generic Resource Substructure */
-typedef struct acpi_aest_processor_generic
+typedef struct acpi_aest_processor_generic
{
UINT32 Resource;
@@ -319,7 +320,7 @@ typedef struct acpi_aest_processor_generic
/* 1: Memory Error */
-typedef struct acpi_aest_memory
+typedef struct acpi_aest_memory
{
UINT32 SratProximityDomain;
@@ -327,7 +328,7 @@ typedef struct acpi_aest_memory
/* 2: Smmu Error */
-typedef struct acpi_aest_smmu
+typedef struct acpi_aest_smmu
{
UINT32 IortNodeReference;
UINT32 SubcomponentReference;
@@ -336,7 +337,7 @@ typedef struct acpi_aest_smmu
/* 3: Vendor Defined */
-typedef struct acpi_aest_vendor
+typedef struct acpi_aest_vendor
{
UINT32 AcpiHid;
UINT32 AcpiUid;
@@ -346,7 +347,7 @@ typedef struct acpi_aest_vendor
/* 4: Gic Error */
-typedef struct acpi_aest_gic
+typedef struct acpi_aest_gic
{
UINT32 InterfaceType;
UINT32 InstanceId;
@@ -364,7 +365,7 @@ typedef struct acpi_aest_gic
/* Node Interface Structure */
-typedef struct acpi_aest_node_interface
+typedef struct acpi_aest_node_interface
{
UINT8 Type;
UINT8 Reserved[3];
@@ -386,7 +387,7 @@ typedef struct acpi_aest_node_interface
/* Node Interrupt Structure */
-typedef struct acpi_aest_node_interrupt
+typedef struct acpi_aest_node_interrupt
{
UINT8 Type;
UINT8 Reserved[2];
@@ -571,7 +572,7 @@ typedef struct acpi_iort_node
UINT32 Identifier;
UINT32 MappingCount;
UINT32 MappingOffset;
- char NodeData[1];
+ char NodeData[];
} ACPI_IORT_NODE;
@@ -637,7 +638,7 @@ typedef struct acpi_iort_memory_access
typedef struct acpi_iort_its_group
{
UINT32 ItsCount;
- UINT32 Identifiers[1]; /* GIC ITS identifier array */
+ UINT32 Identifiers[]; /* GIC ITS identifier array */
} ACPI_IORT_ITS_GROUP;
@@ -647,7 +648,7 @@ typedef struct acpi_iort_named_component
UINT32 NodeFlags;
UINT64 MemoryProperties; /* Memory access properties */
UINT8 MemoryAddressLimit; /* Memory address size limit */
- char DeviceName[1]; /* Path of namespace object */
+ char DeviceName[]; /* Path of namespace object */
} ACPI_IORT_NAMED_COMPONENT;
@@ -663,7 +664,7 @@ typedef struct acpi_iort_root_complex
UINT32 PciSegmentNumber;
UINT8 MemoryAddressLimit; /* Memory address size limit */
UINT16 PasidCapabilities; /* PASID Capabilities */
- UINT8 Reserved[1]; /* Reserved, must be zero */
+ UINT8 Reserved[]; /* Reserved, must be zero */
} ACPI_IORT_ROOT_COMPLEX;
@@ -687,7 +688,7 @@ typedef struct acpi_iort_smmu
UINT32 ContextInterruptOffset;
UINT32 PmuInterruptCount;
UINT32 PmuInterruptOffset;
- UINT64 Interrupts[1]; /* Interrupt array */
+ UINT64 Interrupts[]; /* Interrupt array */
} ACPI_IORT_SMMU;
@@ -1134,7 +1135,8 @@ enum AcpiMadtType
ACPI_MADT_TYPE_MSI_PIC = 21,
ACPI_MADT_TYPE_BIO_PIC = 22,
ACPI_MADT_TYPE_LPC_PIC = 23,
- ACPI_MADT_TYPE_RESERVED = 24, /* 24 to 0x7F are reserved */
+ ACPI_MADT_TYPE_RINTC = 24,
+ ACPI_MADT_TYPE_RESERVED = 25, /* 25 to 0x7F are reserved */
ACPI_MADT_TYPE_OEM_RESERVED = 0x80 /* 0x80 to 0xFF are reserved for OEM use */
};
@@ -1239,7 +1241,7 @@ typedef struct acpi_madt_local_sapic
UINT8 Reserved[3]; /* Reserved, must be zero */
UINT32 LapicFlags;
UINT32 Uid; /* Numeric UID - ACPI 3.0 */
- char UidString[1]; /* String UID - ACPI 3.0 */
+ char UidString[]; /* String UID - ACPI 3.0 */
} ACPI_MADT_LOCAL_SAPIC;
@@ -1290,7 +1292,7 @@ typedef struct acpi_madt_local_x2apic_nmi
} ACPI_MADT_LOCAL_X2APIC_NMI;
-/* 11: Generic Interrupt - GICC (ACPI 5.0 + ACPI 6.0 + ACPI 6.3 changes) */
+/* 11: Generic Interrupt - GICC (ACPI 5.0 + ACPI 6.0 + ACPI 6.3 + ACPI 6.5 changes) */
typedef struct acpi_madt_generic_interrupt
{
@@ -1311,6 +1313,7 @@ typedef struct acpi_madt_generic_interrupt
UINT8 EfficiencyClass;
UINT8 Reserved2[1];
UINT16 SpeInterrupt; /* ACPI 6.3 */
+ UINT16 TrbeInterrupt; /* ACPI 6.5 */
} ACPI_MADT_GENERIC_INTERRUPT;
@@ -1546,11 +1549,29 @@ enum AcpiMadtLpcPicVersion {
ACPI_MADT_LPC_PIC_VERSION_RESERVED = 2 /* 2 and greater are reserved */
};
+/* 24: RISC-V INTC */
+struct acpi_madt_rintc {
+ ACPI_SUBTABLE_HEADER Header;
+ UINT8 Version;
+ UINT8 Reserved;
+ UINT32 Flags;
+ UINT64 HartId;
+ UINT32 Uid; /* ACPI processor UID */
+};
+
+/* Values for RISC-V INTC Version field above */
+
+enum AcpiMadtRintcVersion {
+ ACPI_MADT_RINTC_VERSION_NONE = 0,
+ ACPI_MADT_RINTC_VERSION_V1 = 1,
+ ACPI_MADT_RINTC_VERSION_RESERVED = 2 /* 2 and greater are reserved */
+};
+
/* 80: OEM data */
typedef struct acpi_madt_oem_data
{
- UINT8 OemData[0];
+ ACPI_FLEX_ARRAY(UINT8, OemData);
} ACPI_MADT_OEM_DATA;
@@ -1639,6 +1660,132 @@ typedef struct acpi_table_mchi
} ACPI_TABLE_MCHI;
+/*******************************************************************************
+ *
+ * MPAM - Memory System Resource Partitioning and Monitoring
+ *
+ * Conforms to "ACPI for Memory System Resource Partitioning and Monitoring 2.0"
+ * Document number: ARM DEN 0065, December, 2022.
+ *
+ ******************************************************************************/
+
+/* MPAM RIS locator types. Table 11, Location types */
+enum AcpiMpamLocatorType {
+ ACPI_MPAM_LOCATION_TYPE_PROCESSOR_CACHE = 0,
+ ACPI_MPAM_LOCATION_TYPE_MEMORY = 1,
+ ACPI_MPAM_LOCATION_TYPE_SMMU = 2,
+ ACPI_MPAM_LOCATION_TYPE_MEMORY_CACHE = 3,
+ ACPI_MPAM_LOCATION_TYPE_ACPI_DEVICE = 4,
+ ACPI_MPAM_LOCATION_TYPE_INTERCONNECT = 5,
+ ACPI_MPAM_LOCATION_TYPE_UNKNOWN = 0xFF
+};
+
+/* MPAM Functional dependency descriptor. Table 10 */
+typedef struct acpi_mpam_func_deps
+{
+ UINT32 Producer;
+ UINT32 Reserved;
+} ACPI_MPAM_FUNC_DEPS;
+
+/* MPAM Processor cache locator descriptor. Table 13 */
+typedef struct acpi_mpam_resource_cache_locator
+{
+ UINT64 CacheReference;
+ UINT32 Reserved;
+} ACPI_MPAM_RESOURCE_CACHE_LOCATOR;
+
+/* MPAM Memory locator descriptor. Table 14 */
+typedef struct acpi_mpam_resource_memory_locator
+{
+ UINT64 ProximityDomain;
+ UINT32 Reserved;
+} ACPI_MPAM_RESOURCE_MEMORY_LOCATOR;
+
+/* MPAM SMMU locator descriptor. Table 15 */
+typedef struct acpi_mpam_resource_smmu_locator
+{
+ UINT64 SmmuInterface;
+ UINT32 Reserved;
+} ACPI_MPAM_RESOURCE_SMMU_INTERFACE;
+
+/* MPAM Memory-side cache locator descriptor. Table 16 */
+typedef struct acpi_mpam_resource_memcache_locator
+{
+ UINT8 Reserved[7];
+ UINT8 Level;
+ UINT32 Reference;
+} ACPI_MPAM_RESOURCE_MEMCACHE_INTERFACE;
+
+/* MPAM ACPI device locator descriptor. Table 17 */
+typedef struct acpi_mpam_resource_acpi_locator
+{
+ UINT64 AcpiHwId;
+ UINT32 AcpiUniqueId;
+} ACPI_MPAM_RESOURCE_ACPI_INTERFACE;
+
+/* MPAM Interconnect locator descriptor. Table 18 */
+typedef struct acpi_mpam_resource_interconnect_locator
+{
+ UINT64 InterConnectDescTblOff;
+ UINT32 Reserved;
+} ACPI_MPAM_RESOURCE_INTERCONNECT_INTERFACE;
+
+/* MPAM Locator structure. Table 12 */
+typedef struct acpi_mpam_resource_generic_locator
+{
+ UINT64 Descriptor1;
+ UINT32 Descriptor2;
+} ACPI_MPAM_RESOURCE_GENERIC_LOCATOR;
+
+typedef union acpi_mpam_resource_locator
+{
+ ACPI_MPAM_RESOURCE_CACHE_LOCATOR CacheLocator;
+ ACPI_MPAM_RESOURCE_MEMORY_LOCATOR MemoryLocator;
+ ACPI_MPAM_RESOURCE_SMMU_INTERFACE SmmuLocator;
+ ACPI_MPAM_RESOURCE_MEMCACHE_INTERFACE MemCacheLocator;
+ ACPI_MPAM_RESOURCE_ACPI_INTERFACE AcpiLocator;
+ ACPI_MPAM_RESOURCE_INTERCONNECT_INTERFACE InterconnectIfcLocator;
+ ACPI_MPAM_RESOURCE_GENERIC_LOCATOR GenericLocator;
+} ACPI_MPAM_RESOURCE_LOCATOR;
+
+/* Memory System Component Resource Node Structure Table 9 */
+typedef struct acpi_mpam_resource_node
+{
+ UINT32 Identifier;
+ UINT8 RISIndex;
+ UINT16 Reserved1;
+ UINT8 LocatorType;
+ ACPI_MPAM_RESOURCE_LOCATOR Locator;
+ UINT32 NumFunctionalDeps;
+} ACPI_MPAM_RESOURCE_NODE;
+
+/* Memory System Component (MSC) Node Structure. Table 4 */
+typedef struct acpi_mpam_msc_node
+{
+ UINT16 Length;
+ UINT8 InterfaceType;
+ UINT8 Reserved;
+ UINT32 Identifier;
+ UINT64 BaseAddress;
+ UINT32 MMIOSize;
+ UINT32 OverflowInterrupt;
+ UINT32 OverflowInterruptFlags;
+ UINT32 Reserved1;
+ UINT32 OverflowInterruptAffinity;
+ UINT32 ErrorInterrupt;
+ UINT32 ErrorInterruptFlags;
+ UINT32 Reserved2;
+ UINT32 ErrorInterruptAffinity;
+ UINT32 MaxNrdyUsec;
+ UINT64 HardwareIdLinkedDevice;
+ UINT32 InstanceIdLinkedDevice;
+ UINT32 NumResouceNodes;
+} ACPI_MPAM_MSC_NODE;
+
+typedef struct acpi_table_mpam
+{
+ ACPI_TABLE_HEADER Header; /* Common ACPI table header */
+} ACPI_TABLE_MPAM;
/*******************************************************************************
*
@@ -1917,7 +2064,7 @@ typedef struct acpi_nfit_interleave
UINT16 Reserved; /* Reserved, must be zero */
UINT32 LineCount;
UINT32 LineSize;
- UINT32 LineOffset[1]; /* Variable length */
+ UINT32 LineOffset[]; /* Variable length */
} ACPI_NFIT_INTERLEAVE;
@@ -1928,7 +2075,7 @@ typedef struct acpi_nfit_smbios
{
ACPI_NFIT_HEADER Header;
UINT32 Reserved; /* Reserved, must be zero */
- UINT8 Data[1]; /* Variable length */
+ UINT8 Data[]; /* Variable length */
} ACPI_NFIT_SMBIOS;
@@ -1994,7 +2141,7 @@ typedef struct acpi_nfit_flush_address
UINT32 DeviceHandle;
UINT16 HintCount;
UINT8 Reserved[6]; /* Reserved, must be zero */
- UINT64 HintAddress[1]; /* Variable length */
+ UINT64 HintAddress[]; /* Variable length */
} ACPI_NFIT_FLUSH_ADDRESS;
@@ -3131,6 +3278,53 @@ enum AcpiRgrtImageType
/*******************************************************************************
*
+ * RHCT - RISC-V Hart Capabilities Table
+ * Version 1
+ *
+ ******************************************************************************/
+
+typedef struct acpi_table_rhct {
+ ACPI_TABLE_HEADER Header; /* Common ACPI table header */
+ UINT32 Reserved;
+ UINT64 TimeBaseFreq;
+ UINT32 NodeCount;
+ UINT32 NodeOffset;
+} ACPI_TABLE_RHCT;
+
+/*
+ * RHCT subtables
+ */
+typedef struct acpi_rhct_node_header {
+ UINT16 Type;
+ UINT16 Length;
+ UINT16 Revision;
+} ACPI_RHCT_NODE_HEADER;
+
+/* Values for RHCT subtable Type above */
+
+enum acpi_rhct_node_type {
+ ACPI_RHCT_NODE_TYPE_ISA_STRING = 0x0000,
+ ACPI_RHCT_NODE_TYPE_HART_INFO = 0xFFFF,
+};
+
+/*
+ * RHCT node specific subtables
+ */
+
+/* ISA string node structure */
+typedef struct acpi_rhct_isa_string {
+ UINT16 IsaLength;
+ char Isa[];
+} ACPI_RHCT_ISA_STRING;
+
+/* Hart Info node structure */
+typedef struct acpi_rhct_hart_info {
+ UINT16 NumOffsets;
+ UINT32 Uid; /* ACPI processor UID */
+} ACPI_RHCT_HART_INFO;
+
+/*******************************************************************************
+ *
* SBST - Smart Battery Specification Table
* Version 1
*
diff --git a/source/include/actbl3.h b/source/include/actbl3.h
index 7cc633a27b7c..15ef01959300 100644
--- a/source/include/actbl3.h
+++ b/source/include/actbl3.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actypes.h b/source/include/actypes.h
index 92da002ab6b3..c0f0a87f4c65 100644
--- a/source/include/actypes.h
+++ b/source/include/actypes.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1481,7 +1481,7 @@ typedef struct acpi_mem_space_context
} ACPI_MEM_SPACE_CONTEXT;
-typedef struct acpi_data_table_space_context
+typedef struct acpi_data_table_mapping
{
void *Pointer;
@@ -1574,4 +1574,8 @@ typedef enum
#define ACPI_FALLTHROUGH do {} while(0)
#endif
+#ifndef ACPI_FLEX_ARRAY
+#define ACPI_FLEX_ARRAY(TYPE, NAME) TYPE NAME[0]
+#endif
+
#endif /* __ACTYPES_H__ */
diff --git a/source/include/acutils.h b/source/include/acutils.h
index a0e7953b16cf..bdca11c984cf 100644
--- a/source/include/acutils.h
+++ b/source/include/acutils.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -196,6 +196,8 @@ extern const char *AcpiGbl_SbDecode[];
extern const char *AcpiGbl_FcDecode[];
extern const char *AcpiGbl_PtDecode[];
extern const char *AcpiGbl_PtypDecode[];
+extern const char *AcpiGbl_ClockInputMode[];
+extern const char *AcpiGbl_ClockInputScale[];
#endif
/*
diff --git a/source/include/acuuid.h b/source/include/acuuid.h
index 2ab07bb39508..cf3abc0fc72b 100644
--- a/source/include/acuuid.h
+++ b/source/include/acuuid.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/amlcode.h b/source/include/amlcode.h
index 25d591e55d95..62cbffad0897 100644
--- a/source/include/amlcode.h
+++ b/source/include/amlcode.h
@@ -10,7 +10,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/amlresrc.h b/source/include/amlresrc.h
index e89cd824d11d..a8e288add7ff 100644
--- a/source/include/amlresrc.h
+++ b/source/include/amlresrc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -213,6 +213,8 @@
#define ACPI_RESTAG_TYPE "_TTP" /* Translation(1), Static (0) */
#define ACPI_RESTAG_XFERTYPE "_SIZ" /* 8(0), 8And16(1), 16(2) */
#define ACPI_RESTAG_VENDORDATA "_VEN"
+#define ACPI_RESTAG_FQN "_FQN"
+#define ACPI_RESTAG_FQD "_FQD"
/* Default sizes for "small" resource descriptors */
@@ -501,7 +503,10 @@ typedef struct aml_resource_extended_irq
AML_RESOURCE_LARGE_HEADER_COMMON
UINT8 Flags;
UINT8 InterruptCount;
- UINT32 Interrupts[1];
+ union {
+ UINT32 Interrupt;
+ ACPI_FLEX_ARRAY(UINT32, Interrupts);
+ } u;
/* ResSourceIndex, ResSource optional fields follow */
} AML_RESOURCE_EXTENDED_IRQ;
@@ -703,6 +708,23 @@ typedef struct aml_resource_pin_config
} AML_RESOURCE_PIN_CONFIG;
+#define AML_RESOURCE_CLOCK_INPUT_REVISION 1 /* ACPI 6.5 */
+
+typedef struct aml_resource_clock_input
+{
+ AML_RESOURCE_LARGE_HEADER_COMMON
+ UINT8 RevisionId;
+ UINT16 Flags;
+ UINT16 FrequencyDivisor;
+ UINT32 FrequencyNumerator;
+ /*
+ * Optional fields follow immediately:
+ * 1) Resource Source index
+ * 2) Resource Source String
+ */
+} AML_RESOURCE_CLOCK_INPUT;
+
+
#define AML_RESOURCE_PIN_CONFIG_REVISION 1 /* ACPI 6.2 */
typedef struct aml_resource_pin_group
@@ -819,6 +841,7 @@ typedef union aml_resource
AML_RESOURCE_PIN_GROUP PinGroup;
AML_RESOURCE_PIN_GROUP_FUNCTION PinGroupFunction;
AML_RESOURCE_PIN_GROUP_CONFIG PinGroupConfig;
+ AML_RESOURCE_CLOCK_INPUT ClockInput;
/* Utility overlays */
diff --git a/source/include/platform/accygwin.h b/source/include/platform/accygwin.h
index 217237d9ba82..98782ff8e50a 100644
--- a/source/include/platform/accygwin.h
+++ b/source/include/platform/accygwin.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acdragonflyex.h b/source/include/platform/acdragonflyex.h
index ba3ef0168422..bfc3273b45cc 100644
--- a/source/include/platform/acdragonflyex.h
+++ b/source/include/platform/acdragonflyex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acefi.h b/source/include/platform/acefi.h
index fefcca84311d..71cdf2f91e33 100644
--- a/source/include/platform/acefi.h
+++ b/source/include/platform/acefi.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acefiex.h b/source/include/platform/acefiex.h
index 83aa907b6013..8df422b44eb0 100644
--- a/source/include/platform/acefiex.h
+++ b/source/include/platform/acefiex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -508,7 +508,7 @@ typedef struct {
ACPI_EFI_TIME LastAccessTime;
ACPI_EFI_TIME ModificationTime;
UINT64 Attribute;
- CHAR16 FileName[1];
+ CHAR16 FileName[];
} ACPI_EFI_FILE_INFO;
#define SIZE_OF_ACPI_EFI_FILE_INFO ACPI_OFFSET(ACPI_EFI_FILE_INFO, FileName)
diff --git a/source/include/platform/acenv.h b/source/include/platform/acenv.h
index 674c4c7d02c3..1fc692db8030 100644
--- a/source/include/platform/acenv.h
+++ b/source/include/platform/acenv.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -358,6 +358,8 @@
#elif defined(_AED_EFI) || defined(_GNU_EFI) || defined(_EDK2_EFI)
#include "acefi.h"
+#elif defined(__ZEPHYR__)
+#include "aczephyr.h"
#else
/* Unknown environment */
diff --git a/source/include/platform/acenvex.h b/source/include/platform/acenvex.h
index 32db36c6e86c..33e19b689df9 100644
--- a/source/include/platform/acenvex.h
+++ b/source/include/platform/acenvex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acfreebsd.h b/source/include/platform/acfreebsd.h
index 022f7165e3cb..ffe6a485687c 100644
--- a/source/include/platform/acfreebsd.h
+++ b/source/include/platform/acfreebsd.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acgcc.h b/source/include/platform/acgcc.h
index 3ad22a1f8ac1..55a66c6da23c 100644
--- a/source/include/platform/acgcc.h
+++ b/source/include/platform/acgcc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -211,4 +211,15 @@ typedef __builtin_va_list va_list;
#define ACPI_FALLTHROUGH __attribute__((__fallthrough__))
#endif
+/*
+ * Flexible array members are not allowed to be part of a union under
+ * C99, but this is not for any technical reason. Work around the
+ * limitation.
+ */
+#define ACPI_FLEX_ARRAY(TYPE, NAME) \
+ struct { \
+ struct { } __Empty_ ## NAME; \
+ TYPE NAME[]; \
+ }
+
#endif /* __ACGCC_H__ */
diff --git a/source/include/platform/acgccex.h b/source/include/platform/acgccex.h
index 035b999d95c3..156bab471e5b 100644
--- a/source/include/platform/acgccex.h
+++ b/source/include/platform/acgccex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/achaiku.h b/source/include/platform/achaiku.h
index 81c1927ccc7f..505b4139a3e3 100644
--- a/source/include/platform/achaiku.h
+++ b/source/include/platform/achaiku.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -194,8 +194,8 @@ struct mutex;
#define ACPI_FLUSH_CPU_CACHE() __asm __volatile("wbinvd");
/* Based on FreeBSD's due to lack of documentation */
-extern int AcpiOsAcquireGlobalLock(uint32 *lock);
-extern int AcpiOsReleaseGlobalLock(uint32 *lock);
+int AcpiOsAcquireGlobalLock(uint32 *lock);
+int AcpiOsReleaseGlobalLock(uint32 *lock);
#define ACPI_ACQUIRE_GLOBAL_LOCK(GLptr, Acq) do { \
(Acq) = AcpiOsAcquireGlobalLock(&((GLptr)->GlobalLock)); \
diff --git a/source/include/platform/acintel.h b/source/include/platform/acintel.h
index 889c7594ef73..bfdc286bf142 100644
--- a/source/include/platform/acintel.h
+++ b/source/include/platform/acintel.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/aclinux.h b/source/include/platform/aclinux.h
index 1c55c659f357..da37a2fad03d 100644
--- a/source/include/platform/aclinux.h
+++ b/source/include/platform/aclinux.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -310,7 +310,10 @@
#define ACPI_USE_STANDARD_HEADERS
#ifdef ACPI_USE_STANDARD_HEADERS
+#include <stddef.h>
#include <unistd.h>
+
+#define ACPI_OFFSET(d, f) offsetof(d, f)
#endif
/* Define/disable kernel-specific declarators */
@@ -329,7 +332,7 @@
#if defined(__ia64__) || (defined(__x86_64__) && !defined(__ILP32__)) ||\
defined(__aarch64__) || defined(__PPC64__) ||\
- defined(__s390x__) ||\
+ defined(__s390x__) || defined(__loongarch__) ||\
(defined(__riscv) && (defined(__LP64__) || defined(_LP64)))
#define ACPI_MACHINE_WIDTH 64
#define COMPILER_DEPENDENT_INT64 long
diff --git a/source/include/platform/aclinuxex.h b/source/include/platform/aclinuxex.h
index 4e84cd4b7e94..a10412a7b6ef 100644
--- a/source/include/platform/aclinuxex.h
+++ b/source/include/platform/aclinuxex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmacosx.h b/source/include/platform/acmacosx.h
index 0335cc0ae5d6..0166c2452a66 100644
--- a/source/include/platform/acmacosx.h
+++ b/source/include/platform/acmacosx.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmsvc.h b/source/include/platform/acmsvc.h
index 736706530d93..d6a265d2269b 100644
--- a/source/include/platform/acmsvc.h
+++ b/source/include/platform/acmsvc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmsvcex.h b/source/include/platform/acmsvcex.h
index 2350d859641a..306ef619c616 100644
--- a/source/include/platform/acmsvcex.h
+++ b/source/include/platform/acmsvcex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acnetbsd.h b/source/include/platform/acnetbsd.h
index c0e3619d6597..b948a5d6de52 100644
--- a/source/include/platform/acnetbsd.h
+++ b/source/include/platform/acnetbsd.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acos2.h b/source/include/platform/acos2.h
index fe776095e3cd..f3b1183de885 100644
--- a/source/include/platform/acos2.h
+++ b/source/include/platform/acos2.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acqnx.h b/source/include/platform/acqnx.h
index db1c103fa4cb..40b50ceb9f4c 100644
--- a/source/include/platform/acqnx.h
+++ b/source/include/platform/acqnx.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acwin.h b/source/include/platform/acwin.h
index dc2d1eb5b5d0..90dc0e3ca437 100644
--- a/source/include/platform/acwin.h
+++ b/source/include/platform/acwin.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acwin64.h b/source/include/platform/acwin64.h
index e20454520a4e..f151435ab6ff 100644
--- a/source/include/platform/acwin64.h
+++ b/source/include/platform/acwin64.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/aczephyr.h b/source/include/platform/aczephyr.h
new file mode 100644
index 000000000000..20d3c040cc2e
--- /dev/null
+++ b/source/include/platform/aczephyr.h
@@ -0,0 +1,192 @@
+/******************************************************************************
+ *
+ * Module Name: aczephyr.h - OS specific defines, etc.
+ *
+ *****************************************************************************/
+
+/******************************************************************************
+ *
+ * 1. Copyright Notice
+ *
+ * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp.
+ * All rights reserved.
+ *
+ * 2. License
+ *
+ * 2.1. This is your license from Intel Corp. under its intellectual property
+ * rights. You may have additional license terms from the party that provided
+ * you this software, covering your right to use that party's intellectual
+ * property rights.
+ *
+ * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
+ * copy of the source code appearing in this file ("Covered Code") an
+ * irrevocable, perpetual, worldwide license under Intel's copyrights in the
+ * base code distributed originally by Intel ("Original Intel Code") to copy,
+ * make derivatives, distribute, use and display any portion of the Covered
+ * Code in any form, with the right to sublicense such rights; and
+ *
+ * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
+ * license (with the right to sublicense), under only those claims of Intel
+ * patents that are infringed by the Original Intel Code, to make, use, sell,
+ * offer to sell, and import the Covered Code and derivative works thereof
+ * solely to the minimum extent necessary to exercise the above copyright
+ * license, and in no event shall the patent license extend to any additions
+ * to or modifications of the Original Intel Code. No other license or right
+ * is granted directly or by implication, estoppel or otherwise;
+ *
+ * The above copyright and patent license is granted only if the following
+ * conditions are met:
+ *
+ * 3. Conditions
+ *
+ * 3.1. Redistribution of Source with Rights to Further Distribute Source.
+ * Redistribution of source code of any substantial portion of the Covered
+ * Code or modification with rights to further distribute source must include
+ * the above Copyright Notice, the above License, this list of Conditions,
+ * and the following Disclaimer and Export Compliance provision. In addition,
+ * Licensee must cause all Covered Code to which Licensee contributes to
+ * contain a file documenting the changes Licensee made to create that Covered
+ * Code and the date of any change. Licensee must include in that file the
+ * documentation of any changes made by any predecessor Licensee. Licensee
+ * must include a prominent statement that the modification is derived,
+ * directly or indirectly, from Original Intel Code.
+ *
+ * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
+ * Redistribution of source code of any substantial portion of the Covered
+ * Code or modification without rights to further distribute source must
+ * include the following Disclaimer and Export Compliance provision in the
+ * documentation and/or other materials provided with distribution. In
+ * addition, Licensee may not authorize further sublicense of source of any
+ * portion of the Covered Code, and must include terms to the effect that the
+ * license from Licensee to its licensee is limited to the intellectual
+ * property embodied in the software Licensee provides to its licensee, and
+ * not to intellectual property embodied in modifications its licensee may
+ * make.
+ *
+ * 3.3. Redistribution of Executable. Redistribution in executable form of any
+ * substantial portion of the Covered Code or modification must reproduce the
+ * above Copyright Notice, and the following Disclaimer and Export Compliance
+ * provision in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * 3.4. Intel retains all right, title, and interest in and to the Original
+ * Intel Code.
+ *
+ * 3.5. Neither the name Intel nor any other trademark owned or controlled by
+ * Intel shall be used in advertising or otherwise to promote the sale, use or
+ * other dealings in products derived from or relating to the Covered Code
+ * without prior written authorization from Intel.
+ *
+ * 4. Disclaimer and Export Compliance
+ *
+ * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
+ * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
+ * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
+ * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
+ * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
+ * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
+ * PARTICULAR PURPOSE.
+ *
+ * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
+ * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
+ * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
+ * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
+ * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
+ * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
+ * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
+ * LIMITED REMEDY.
+ *
+ * 4.3. Licensee shall not export, either directly or indirectly, any of this
+ * software or system incorporating such software without first obtaining any
+ * required license or other approval from the U. S. Department of Commerce or
+ * any other agency or department of the United States Government. In the
+ * event Licensee exports any such software from the United States or
+ * re-exports any such software from a foreign destination, Licensee shall
+ * ensure that the distribution and export/re-export of the software is in
+ * compliance with all laws, regulations, orders, or other restrictions of the
+ * U.S. Export Administration Regulations. Licensee agrees that neither it nor
+ * any of its subsidiaries will export/re-export any technical data, process,
+ * software, or service, directly or indirectly, to any country for which the
+ * United States government or any agency thereof requires an export license,
+ * other governmental approval, or letter of assurance, without first obtaining
+ * such license, approval or letter.
+ *
+ *****************************************************************************
+ *
+ * Alternatively, you may choose to be licensed under the terms of the
+ * following license:
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions, and the following disclaimer,
+ * without modification.
+ * 2. Redistributions in binary form must reproduce at minimum a disclaimer
+ * substantially similar to the "NO WARRANTY" disclaimer below
+ * ("Disclaimer") and any redistribution must be conditioned upon
+ * including a substantially similar Disclaimer requirement for further
+ * binary redistribution.
+ * 3. Neither the names of the above-listed copyright holders nor the names
+ * of any contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Alternatively, you may choose to be licensed under the terms of the
+ * GNU General Public License ("GPL") version 2 as published by the Free
+ * Software Foundation.
+ *
+ *****************************************************************************/
+
+#ifndef __ACZEPHYR_H__
+#define __ACZEPHYR_H__
+
+#define SEEK_SET FS_SEEK_SET
+#define SEEK_END FS_SEEK_END
+
+#define ACPI_MACHINE_WIDTH 64
+
+#define ACPI_NO_ERROR_MESSAGES
+#undef ACPI_DEBUG_OUTPUT
+#define ACPI_USE_SYSTEM_CLIBRARY
+#undef ACPI_DBG_TRACK_ALLOCATIONS
+#define ACPI_SINGLE_THREADED
+#define ACPI_USE_NATIVE_RSDP_POINTER
+
+#include <zephyr/kernel.h>
+#include <zephyr/device.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <ctype.h>
+#include <zephyr/fs/fs.h>
+#include <zephyr/sys/printk.h>
+#include <zephyr/sys/__assert.h>
+
+
+/******************************************************************************
+ *
+ * FUNCTION: AcpiEnableDbgPrint
+ *
+ * PARAMETERS: Enable, - Enable/Disable debug print
+ *
+ * RETURN: None
+ *
+ * DESCRIPTION: Enable/disable debug print
+ *
+ *****************************************************************************/
+
+void AcpiEnableDbgPrint (
+ bool Enable);
+#endif