Module Name:    src
Committed By:   christos
Date:           Fri Sep 13 23:13:25 UTC 2024

Modified Files:
        src/sys/external/bsd/acpica/dist/common: dmtables.c dmtbdump.c
        src/sys/external/bsd/acpica/dist/compiler: aslcompile.c aslcompiler.h
            aslcompiler.l aslfiles.c asloptions.c dtfield.c dtutils.c prutils.c
        src/sys/external/bsd/acpica/dist/debugger: dbnames.c
        src/sys/external/bsd/acpica/dist/disassembler: dmwalk.c
        src/sys/external/bsd/acpica/dist/executer: exsystem.c
        src/sys/external/bsd/acpica/dist/hardware: hwxfsleep.c
        src/sys/external/bsd/acpica/dist/include: acdisasm.h acglobal.h
            aclocal.h acoutput.h acpixf.h actbl1.h actypes.h
        src/sys/external/bsd/acpica/dist/include/platform: acgcc.h
        src/sys/external/bsd/acpica/dist/resources: rsdump.c
        src/sys/external/bsd/acpica/dist/tables: tbfadt.c tbutils.c
        src/sys/external/bsd/acpica/dist/tools/acpixtract: acpixtract.c
        src/sys/external/bsd/acpica/dist/utilities: utdebug.c utdelete.c
            utosi.c

Log Message:
Merge conflicts between 20230628 and 20240827


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/sys/external/bsd/acpica/dist/common/dmtables.c
cvs rdiff -u -r1.16 -r1.17 src/sys/external/bsd/acpica/dist/common/dmtbdump.c
cvs rdiff -u -r1.23 -r1.24 \
    src/sys/external/bsd/acpica/dist/compiler/aslcompile.c
cvs rdiff -u -r1.21 -r1.22 \
    src/sys/external/bsd/acpica/dist/compiler/aslcompiler.h \
    src/sys/external/bsd/acpica/dist/compiler/aslcompiler.l \
    src/sys/external/bsd/acpica/dist/compiler/dtfield.c
cvs rdiff -u -r1.20 -r1.21 \
    src/sys/external/bsd/acpica/dist/compiler/aslfiles.c
cvs rdiff -u -r1.17 -r1.18 \
    src/sys/external/bsd/acpica/dist/compiler/asloptions.c
cvs rdiff -u -r1.22 -r1.23 \
    src/sys/external/bsd/acpica/dist/compiler/dtutils.c
cvs rdiff -u -r1.16 -r1.17 \
    src/sys/external/bsd/acpica/dist/compiler/prutils.c
cvs rdiff -u -r1.17 -r1.18 \
    src/sys/external/bsd/acpica/dist/debugger/dbnames.c
cvs rdiff -u -r1.16 -r1.17 \
    src/sys/external/bsd/acpica/dist/disassembler/dmwalk.c
cvs rdiff -u -r1.3 -r1.4 src/sys/external/bsd/acpica/dist/executer/exsystem.c
cvs rdiff -u -r1.18 -r1.19 \
    src/sys/external/bsd/acpica/dist/hardware/hwxfsleep.c
cvs rdiff -u -r1.27 -r1.28 \
    src/sys/external/bsd/acpica/dist/include/acdisasm.h \
    src/sys/external/bsd/acpica/dist/include/acglobal.h
cvs rdiff -u -r1.25 -r1.26 src/sys/external/bsd/acpica/dist/include/aclocal.h
cvs rdiff -u -r1.17 -r1.18 \
    src/sys/external/bsd/acpica/dist/include/acoutput.h
cvs rdiff -u -r1.35 -r1.36 src/sys/external/bsd/acpica/dist/include/acpixf.h
cvs rdiff -u -r1.22 -r1.23 src/sys/external/bsd/acpica/dist/include/actbl1.h
cvs rdiff -u -r1.29 -r1.30 src/sys/external/bsd/acpica/dist/include/actypes.h
cvs rdiff -u -r1.11 -r1.12 \
    src/sys/external/bsd/acpica/dist/include/platform/acgcc.h
cvs rdiff -u -r1.17 -r1.18 \
    src/sys/external/bsd/acpica/dist/resources/rsdump.c
cvs rdiff -u -r1.20 -r1.21 src/sys/external/bsd/acpica/dist/tables/tbfadt.c
cvs rdiff -u -r1.22 -r1.23 src/sys/external/bsd/acpica/dist/tables/tbutils.c
cvs rdiff -u -r1.17 -r1.18 \
    src/sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c
cvs rdiff -u -r1.21 -r1.22 \
    src/sys/external/bsd/acpica/dist/utilities/utdebug.c
cvs rdiff -u -r1.10 -r1.11 \
    src/sys/external/bsd/acpica/dist/utilities/utdelete.c
cvs rdiff -u -r1.19 -r1.20 src/sys/external/bsd/acpica/dist/utilities/utosi.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/external/bsd/acpica/dist/common/dmtables.c
diff -u src/sys/external/bsd/acpica/dist/common/dmtables.c:1.8 src/sys/external/bsd/acpica/dist/common/dmtables.c:1.9
--- src/sys/external/bsd/acpica/dist/common/dmtables.c:1.8	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/common/dmtables.c	Fri Sep 13 19:13:23 2024
@@ -82,7 +82,7 @@ extern ACPI_PARSE_OBJECT    *AcpiGbl_Par
  * RETURN:      None
  *
  * DESCRIPTION: Create the disassembler header, including ACPICA signon with
- *              current time and date.
+ *              optional current time and date.
  *
  *****************************************************************************/
 
@@ -94,8 +94,6 @@ AdDisassemblerHeader (
     time_t                  Timer;
 
 
-    time (&Timer);
-
     /* Header and input table info */
 
     AcpiOsPrintf ("/*\n");
@@ -117,7 +115,15 @@ AdDisassemblerHeader (
         }
     }
 
-    AcpiOsPrintf (" * Disassembly of %s, %s", Filename, ctime (&Timer));
+    if (AslGbl_Deterministic)
+    {
+        AcpiOsPrintf (" * Disassembly of %s\n", Filename);
+    }
+    else
+    {
+        time (&Timer);
+        AcpiOsPrintf (" * Disassembly of %s, %s", Filename, ctime (&Timer));
+    }
     AcpiOsPrintf (" *\n");
 }
 

Index: src/sys/external/bsd/acpica/dist/common/dmtbdump.c
diff -u src/sys/external/bsd/acpica/dist/common/dmtbdump.c:1.16 src/sys/external/bsd/acpica/dist/common/dmtbdump.c:1.17
--- src/sys/external/bsd/acpica/dist/common/dmtbdump.c:1.16	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/common/dmtbdump.c	Fri Sep 13 19:13:23 2024
@@ -87,7 +87,9 @@ AcpiDmDumpBuffer (
     char                    *Header)
 {
     UINT8                   *Buffer;
+    UINT8                   BufChar;
     UINT32                  i;
+    UINT32                  j;
 
 
     if (!Length)
@@ -100,20 +102,65 @@ AcpiDmDumpBuffer (
 
     while (i < Length)
     {
-        if (!(i % 16))
+        if ((Length > 16) && (i != 0))
         {
-            /* Insert a backslash - line continuation character */
+        if ((Length - i) < 16)
+            AcpiOsPrintf ("\n/* %3.3Xh %4.4u %3u */                            ", AbsoluteOffset, AbsoluteOffset, Length - i);
+        else
+            AcpiOsPrintf ("\n/* %3.3Xh %4.4u  16 */                            ", AbsoluteOffset, AbsoluteOffset);
+        }
+        AbsoluteOffset += 16;
+
+        /* Emit the raw data bytes*/
 
-            if (Length > 16)
+        for (j = 0; j < 16; j++)
+        {
+            if (i + j >= Length)
             {
-                AcpiOsPrintf ("\\\n    ");
+                /* Dump fill spaces */
+
+                AcpiOsPrintf ("%*s", (48 - (3 * (Length -i))), " ");
+                break;
             }
+            AcpiOsPrintf ("%.02X ", Buffer[(ACPI_SIZE) i + j]);
         }
 
-        AcpiOsPrintf ("%.02X ", *Buffer);
-        i++;
-        Buffer++;
-        AbsoluteOffset++;
+        /* Emit the ASCII equivalent to the raw data bytes */
+
+        for (j = 0; j < 16; j++)
+        {
+            if (i + j >= Length)
+            {
+                AcpiOsPrintf (" */\\\n");
+                return;
+            }
+
+            /*
+             * Add comment characters so rest of line is ignored when
+             * compiled
+             */
+            if (j == 0)
+            {
+                AcpiOsPrintf ("/* ");
+            }
+
+            BufChar = Buffer[(ACPI_SIZE) i + j];
+            if (isprint (BufChar))
+            {
+                AcpiOsPrintf ("%c", BufChar);
+            }
+            else
+            {
+                AcpiOsPrintf (".");
+            }
+        }
+
+        /* Done with that line. */
+        /* Close the comment and insert a backslash - line continuation character */
+
+        AcpiOsPrintf (" */\\");
+
+        i += 16; /* Point to next line */
     }
 
     AcpiOsPrintf ("\n");
@@ -407,7 +454,7 @@ AcpiDmDumpFadt (
 
         /* Check for FADT revision 6 fields and up (ACPI 6.0+) */
 
-        if (Table->Length > ACPI_FADT_V3_SIZE)
+        if (Table->Length > ACPI_FADT_V5_SIZE)
         {
             Status = AcpiDmDumpTable (Table->Length, 0, Table, 0,
                 AcpiDmTableInfoFadt6);
@@ -480,6 +527,11 @@ AcpiDmValidateFadtLength (
         ExpectedLength = ACPI_FADT_V5_SIZE;
         break;
 
+    case 6:
+
+        ExpectedLength = ACPI_FADT_V6_SIZE;
+        break;
+
     default:
 
         return;

Index: src/sys/external/bsd/acpica/dist/compiler/aslcompile.c
diff -u src/sys/external/bsd/acpica/dist/compiler/aslcompile.c:1.23 src/sys/external/bsd/acpica/dist/compiler/aslcompile.c:1.24
--- src/sys/external/bsd/acpica/dist/compiler/aslcompile.c:1.23	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/aslcompile.c	Fri Sep 13 19:13:23 2024
@@ -589,18 +589,24 @@ AslCompilerFileHeader (
         break;
     }
 
-    /* Compilation header with timestamp */
-
-    Aclock = time (NULL);
-    NewTime = ctime (&Aclock);
+    /* Compilation header (with timestamp) */
 
     FlPrintFile (FileId,
-        "%sCompilation of \"%s\" -",
+        "%sCompilation of \"%s\"",
         Prefix, AslGbl_Files[ASL_FILE_INPUT].Filename);
 
-    if (NewTime)
+    if (!AslGbl_Deterministic) 
+    {
+        Aclock = time (NULL);
+        NewTime = ctime (&Aclock);
+        if (NewTime)
+        {
+            FlPrintFile (FileId, " - %s%s\n", NewTime, Prefix);
+        }
+    }
+    else 
     {
-        FlPrintFile (FileId, " %s%s\n", NewTime, Prefix);
+        FlPrintFile (FileId, "\n");
     }
 
     switch (FileId)

Index: src/sys/external/bsd/acpica/dist/compiler/aslcompiler.h
diff -u src/sys/external/bsd/acpica/dist/compiler/aslcompiler.h:1.21 src/sys/external/bsd/acpica/dist/compiler/aslcompiler.h:1.22
--- src/sys/external/bsd/acpica/dist/compiler/aslcompiler.h:1.21	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/aslcompiler.h	Fri Sep 13 19:13:23 2024
@@ -1474,9 +1474,12 @@ RsDoDwordMemoryDescriptor (
     ASL_RESOURCE_INFO       *Info);
 
 ASL_RESOURCE_NODE *
-RsDoDwordSpaceDescriptor (
+RsDoDwordPccDescriptor (
     ASL_RESOURCE_INFO       *Info);
 
+ASL_RESOURCE_NODE *
+RsDoDwordSpaceDescriptor (
+    ASL_RESOURCE_INFO       *Info);
 
 /*
  * aslrestype2e - Extended address descriptors
@@ -1506,6 +1509,10 @@ RsDoQwordMemoryDescriptor (
     ASL_RESOURCE_INFO       *Info);
 
 ASL_RESOURCE_NODE *
+RsDoQwordPccDescriptor (
+    ASL_RESOURCE_INFO       *Info);
+
+ASL_RESOURCE_NODE *
 RsDoQwordSpaceDescriptor (
     ASL_RESOURCE_INFO       *Info);
 
@@ -1518,6 +1525,10 @@ RsDoWordIoDescriptor (
     ASL_RESOURCE_INFO       *Info);
 
 ASL_RESOURCE_NODE *
+RsDoWordPccDescriptor (
+    ASL_RESOURCE_INFO       *Info);
+
+ASL_RESOURCE_NODE *
 RsDoWordSpaceDescriptor (
     ASL_RESOURCE_INFO       *Info);
 
Index: src/sys/external/bsd/acpica/dist/compiler/aslcompiler.l
diff -u src/sys/external/bsd/acpica/dist/compiler/aslcompiler.l:1.21 src/sys/external/bsd/acpica/dist/compiler/aslcompiler.l:1.22
--- src/sys/external/bsd/acpica/dist/compiler/aslcompiler.l:1.21	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/aslcompiler.l	Fri Sep 13 19:13:23 2024
@@ -330,6 +330,7 @@ NamePathTail                [.]{NameSeg}
 "DMA"                       { count (1); return (PARSEOP_DMA); }
 "DWordIO"                   { count (1); return (PARSEOP_DWORDIO); }
 "DWordMemory"               { count (1); return (PARSEOP_DWORDMEMORY); }
+"DWordPcc"                  { count (1); return (PARSEOP_DWORDPCC); }
 "DWordSpace"                { count (1); return (PARSEOP_DWORDSPACE); }
 "EndDependentFn"            { count (1); return (PARSEOP_ENDDEPENDENTFN); }
 "ExtendedIO"                { count (1); return (PARSEOP_EXTENDEDIO); }
@@ -356,6 +357,7 @@ NamePathTail                [.]{NameSeg}
 "ClockInput"                { count (1); return (PARSEOP_CLOCKINPUT); }
 "QWordIO"                   { count (1); return (PARSEOP_QWORDIO); }
 "QWordMemory"               { count (1); return (PARSEOP_QWORDMEMORY); }
+"QWordPcc"                  { count (1); return (PARSEOP_DWORDPCC); }
 "QWordSpace"                { count (1); return (PARSEOP_QWORDSPACE); }
 "Register"                  { count (1); return (PARSEOP_REGISTER); }
 "SpiSerialBus"              { count (1); return (PARSEOP_SPI_SERIALBUS); }
@@ -368,6 +370,7 @@ NamePathTail                [.]{NameSeg}
 "VendorShort"               { count (1); return (PARSEOP_VENDORSHORT); }
 "WordBusNumber"             { count (1); return (PARSEOP_WORDBUSNUMBER); }
 "WordIO"                    { count (1); return (PARSEOP_WORDIO); }
+"WordPcc"                   { count (1); return (PARSEOP_DWORDPCC); }
 "WordSpace"                 { count (1); return (PARSEOP_WORDSPACE); }
 
 
Index: src/sys/external/bsd/acpica/dist/compiler/dtfield.c
diff -u src/sys/external/bsd/acpica/dist/compiler/dtfield.c:1.21 src/sys/external/bsd/acpica/dist/compiler/dtfield.c:1.22
--- src/sys/external/bsd/acpica/dist/compiler/dtfield.c:1.21	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/dtfield.c	Fri Sep 13 19:13:23 2024
@@ -173,8 +173,8 @@ DtCompileString (
     if (Length > ByteLength)
     {
         snprintf (AslGbl_MsgBuffer, sizeof(AslGbl_MsgBuffer),
-            "Maximum %u characters, found %u characters [%s]",
-            ByteLength, Length, Field->Value);
+            "Maximum %u characters, found %u characters [%.*s]",
+            ByteLength, Length, (ASL_MSG_BUFFER_SIZE / 2), Field->Value);
         DtError (ASL_ERROR, ASL_MSG_STRING_LENGTH, Field, AslGbl_MsgBuffer);
         Length = ByteLength;
     }

Index: src/sys/external/bsd/acpica/dist/compiler/aslfiles.c
diff -u src/sys/external/bsd/acpica/dist/compiler/aslfiles.c:1.20 src/sys/external/bsd/acpica/dist/compiler/aslfiles.c:1.21
--- src/sys/external/bsd/acpica/dist/compiler/aslfiles.c:1.20	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/aslfiles.c	Fri Sep 13 19:13:23 2024
@@ -238,7 +238,9 @@ FlGetFileHandle (
 
     while (Current)
     {
-        if (!strcmp (Current->Files[InFileId].Filename, Filename))
+        if (!((Current->FileType == ASL_INPUT_TYPE_ASCII_DATA) &&
+            (InFileId == ASL_FILE_SOURCE_OUTPUT)) &&
+            !strcmp (Current->Files[InFileId].Filename, Filename))
         {
             return (Current->Files[OutFileId].Handle);
         }

Index: src/sys/external/bsd/acpica/dist/compiler/asloptions.c
diff -u src/sys/external/bsd/acpica/dist/compiler/asloptions.c:1.17 src/sys/external/bsd/acpica/dist/compiler/asloptions.c:1.18
--- src/sys/external/bsd/acpica/dist/compiler/asloptions.c:1.17	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/asloptions.c	Fri Sep 13 19:13:23 2024
@@ -522,6 +522,13 @@ AslDoOptions (
             AcpiGbl_DmOpt_Listing = TRUE;
             break;
 
+        case 'd':
+
+            /* Disable deterministic output, enabling timestamp */
+
+            AslGbl_Deterministic = FALSE;
+            break;
+
         case 'i':
 
             /* Produce preprocessor output file */

Index: src/sys/external/bsd/acpica/dist/compiler/dtutils.c
diff -u src/sys/external/bsd/acpica/dist/compiler/dtutils.c:1.22 src/sys/external/bsd/acpica/dist/compiler/dtutils.c:1.23
--- src/sys/external/bsd/acpica/dist/compiler/dtutils.c:1.22	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/dtutils.c	Fri Sep 13 19:13:23 2024
@@ -331,6 +331,8 @@ DtGetFieldType (
     case ACPI_DMT_BUF12:
     case ACPI_DMT_BUF16:
     case ACPI_DMT_BUF18:
+    case ACPI_DMT_BUF32:
+    case ACPI_DMT_BUF112:
     case ACPI_DMT_BUF128:
     case ACPI_DMT_PCI_PATH:
     case ACPI_DMT_PMTT_VENDOR:
@@ -477,12 +479,6 @@ DtGetFieldLength (
     case ACPI_DMT_GTDT:
     case ACPI_DMT_MADT:
     case ACPI_DMT_MPAM_LOCATOR:
-    case ACPI_DMT_NHLT1:
-    case ACPI_DMT_NHLT1a:
-    case ACPI_DMT_NHLT1b:
-    case ACPI_DMT_NHLT1c:
-    case ACPI_DMT_NHLT1d:
-    case ACPI_DMT_NHLT1f:
     case ACPI_DMT_PCCT:
     case ACPI_DMT_PMTT:
     case ACPI_DMT_PPTT:
@@ -513,7 +509,6 @@ DtGetFieldLength (
     case ACPI_DMT_HEST:
     case ACPI_DMT_HMAT:
     case ACPI_DMT_NFIT:
-    case ACPI_DMT_NHLT1e:
     case ACPI_DMT_PCI_PATH:
     case ACPI_DMT_PHAT:
 
@@ -645,6 +640,16 @@ DtGetFieldLength (
         ByteLength = 18;
         break;
 
+    case ACPI_DMT_BUF32:
+
+        ByteLength = 32;
+        break;
+
+    case ACPI_DMT_BUF112:
+
+        ByteLength = 112;
+        break;
+
     case ACPI_DMT_BUF128:
 
         ByteLength = 128;

Index: src/sys/external/bsd/acpica/dist/compiler/prutils.c
diff -u src/sys/external/bsd/acpica/dist/compiler/prutils.c:1.16 src/sys/external/bsd/acpica/dist/compiler/prutils.c:1.17
--- src/sys/external/bsd/acpica/dist/compiler/prutils.c:1.16	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/compiler/prutils.c	Fri Sep 13 19:13:23 2024
@@ -223,9 +223,17 @@ PrReplaceResizeSubstring(
          */
         PrevOffset = Args->Offset[i];
         temp = strstr (AslGbl_MacroTokenBuffer, Args->Name);
+        if (temp == NULL)
+        {
+            return;
+        }
 
 ResetHere1:
         temp = strstr (temp, Args->Name);
+        if (temp == NULL)
+        {
+            return;
+        }
         Args->Offset[i] = strlen (AslGbl_MacroTokenBuffer) -
             strlen (temp);
         if (Args->Offset[i] == 0)
@@ -267,7 +275,7 @@ JumpHere1:
             Buff[j] = AslGbl_MacroTokenBuffer[j];
         }
         Buff[strlen (AslGbl_MacroTokenBuffer)] = '\0';
-        //fprintf (stderr, "Buff: %s\n", Buff);
+        /* fprintf(stderr, "Buff: %s\n", Buff); */
 
         UINT32 len = strlen (Buff);
 
@@ -296,7 +304,7 @@ JumpHere1:
                 j--;
             }
         }
-        //fprintf(stderr, "Buff: %s\n", Buff);
+        /* fprintf(stderr, "Buff: %s\n", Buff); */
 
         for (k = 0; k < strlen (Buff); k++)
         {
@@ -323,9 +331,17 @@ JumpHere1:
 
         PrevOffset = Args->Offset[i];
         temp = strstr (AslGbl_MacroTokenBuffer, Args->Name);
+        if (temp == NULL)
+        {
+            return;
+        }
 
 ResetHere2:
         temp = strstr (temp, Args->Name);
+        if (temp == NULL)
+        {
+            return;
+        }
         Args->Offset[i] = strlen (AslGbl_MacroTokenBuffer) -
             strlen (temp);
         if (Args->Offset[i] == 0)
@@ -376,9 +392,17 @@ JumpHere2:
          */
         PrevOffset = Args->Offset[i];
         temp = strstr (AslGbl_MacroTokenBuffer, Args->Name);
+        if (temp == NULL)
+        {
+            return;
+        }
 
 ResetHere3:
         temp = strstr (temp, Args->Name);
+        if (temp == NULL)
+        {
+            return;
+        }
         Args->Offset[i] = strlen (AslGbl_MacroTokenBuffer) -
             strlen (temp);
         if (Args->Offset[i] == 0)

Index: src/sys/external/bsd/acpica/dist/debugger/dbnames.c
diff -u src/sys/external/bsd/acpica/dist/debugger/dbnames.c:1.17 src/sys/external/bsd/acpica/dist/debugger/dbnames.c:1.18
--- src/sys/external/bsd/acpica/dist/debugger/dbnames.c:1.17	Fri Sep  1 14:37:29 2023
+++ src/sys/external/bsd/acpica/dist/debugger/dbnames.c	Fri Sep 13 19:13:23 2024
@@ -666,7 +666,12 @@ AcpiDbWalkForFields (
     ACPI_FREE (Buffer.Pointer);
 
     Buffer.Length = ACPI_ALLOCATE_LOCAL_BUFFER;
-    AcpiEvaluateObject (ObjHandle, NULL, NULL, &Buffer);
+    Status = AcpiEvaluateObject (ObjHandle, NULL, NULL, &Buffer);
+    if (ACPI_FAILURE (Status))
+    {
+        AcpiOsPrintf ("Could Not evaluate object %p\n", ObjHandle);
+        return (AE_OK);
+    }
 
     /*
      * Since this is a field unit, surround the output in braces

Index: src/sys/external/bsd/acpica/dist/disassembler/dmwalk.c
diff -u src/sys/external/bsd/acpica/dist/disassembler/dmwalk.c:1.16 src/sys/external/bsd/acpica/dist/disassembler/dmwalk.c:1.17
--- src/sys/external/bsd/acpica/dist/disassembler/dmwalk.c:1.16	Fri Sep  1 14:37:30 2023
+++ src/sys/external/bsd/acpica/dist/disassembler/dmwalk.c	Fri Sep 13 19:13:23 2024
@@ -861,8 +861,6 @@ AcpiDmDescendingOp (
                      AcpiDmPredefinedDescription (Op->Asl.Parent);
                 }
 
-                AcpiDmPredefinedDescription (Op->Asl.Parent);
-
                 AcpiOsPrintf ("\n");
                 AcpiDmIndent (Info->Level);
                 AcpiOsPrintf ("{\n");

Index: src/sys/external/bsd/acpica/dist/executer/exsystem.c
diff -u src/sys/external/bsd/acpica/dist/executer/exsystem.c:1.3 src/sys/external/bsd/acpica/dist/executer/exsystem.c:1.4
--- src/sys/external/bsd/acpica/dist/executer/exsystem.c:1.3	Fri Sep  1 14:37:30 2023
+++ src/sys/external/bsd/acpica/dist/executer/exsystem.c	Fri Sep 13 19:13:24 2024
@@ -188,7 +188,7 @@ AcpiExSystemDoStall (
          * (ACPI specifies 100 usec as max, but this gives some slack in
          * order to support existing BIOSs)
          */
-        ACPI_ERROR ((AE_INFO,
+        ACPI_ERROR_ONCE ((AE_INFO,
             "Time parameter is too large (%u)", HowLongUs));
         Status = AE_AML_OPERAND_VALUE;
     }
@@ -196,7 +196,7 @@ AcpiExSystemDoStall (
     {
         if (HowLongUs > 100)
         {
-            ACPI_WARNING ((AE_INFO,
+            ACPI_WARNING_ONCE ((AE_INFO,
                 "Time parameter %u us > 100 us violating ACPI spec, please fix the firmware.", HowLongUs));
         }
         AcpiOsStall (HowLongUs);

Index: src/sys/external/bsd/acpica/dist/hardware/hwxfsleep.c
diff -u src/sys/external/bsd/acpica/dist/hardware/hwxfsleep.c:1.18 src/sys/external/bsd/acpica/dist/hardware/hwxfsleep.c:1.19
--- src/sys/external/bsd/acpica/dist/hardware/hwxfsleep.c:1.18	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/hardware/hwxfsleep.c	Fri Sep 13 19:13:24 2024
@@ -51,13 +51,11 @@
 
 /* Local prototypes */
 
-#if (!ACPI_REDUCED_HARDWARE)
 static ACPI_STATUS
 AcpiHwSetFirmwareWakingVector (
     ACPI_TABLE_FACS         *Facs,
     ACPI_PHYSICAL_ADDRESS   PhysicalAddress,
     ACPI_PHYSICAL_ADDRESS   PhysicalAddress64);
-#endif
 
 static ACPI_STATUS
 AcpiHwSleepDispatch (
@@ -91,13 +89,6 @@ static ACPI_SLEEP_FUNCTIONS         Acpi
 };
 
 
-/*
- * These functions are removed for the ACPI_REDUCED_HARDWARE case:
- *      AcpiSetFirmwareWakingVector
- *      AcpiEnterSleepStateS4bios
- */
-
-#if (!ACPI_REDUCED_HARDWARE)
 /*******************************************************************************
  *
  * FUNCTION:    AcpiHwSetFirmwareWakingVector
@@ -190,6 +181,12 @@ AcpiSetFirmwareWakingVector (
 ACPI_EXPORT_SYMBOL (AcpiSetFirmwareWakingVector)
 
 
+/*
+ * These functions are removed for the ACPI_REDUCED_HARDWARE case:
+ *      AcpiEnterSleepStateS4bios
+ */
+
+#if (!ACPI_REDUCED_HARDWARE)
 /*******************************************************************************
  *
  * FUNCTION:    AcpiEnterSleepStateS4bios

Index: src/sys/external/bsd/acpica/dist/include/acdisasm.h
diff -u src/sys/external/bsd/acpica/dist/include/acdisasm.h:1.27 src/sys/external/bsd/acpica/dist/include/acdisasm.h:1.28
--- src/sys/external/bsd/acpica/dist/include/acdisasm.h:1.27	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/acdisasm.h	Fri Sep 13 19:13:24 2024
@@ -118,6 +118,8 @@ typedef enum
     ACPI_DMT_BUF12,
     ACPI_DMT_BUF16,
     ACPI_DMT_BUF18,
+    ACPI_DMT_BUF32,
+    ACPI_DMT_BUF112,
     ACPI_DMT_BUF128,
     ACPI_DMT_SIG,
     ACPI_DMT_STRING,
@@ -175,13 +177,6 @@ typedef enum
     ACPI_DMT_MADT,
     ACPI_DMT_MPAM_LOCATOR,
     ACPI_DMT_NFIT,
-    ACPI_DMT_NHLT1,
-    ACPI_DMT_NHLT1a,
-    ACPI_DMT_NHLT1b,
-    ACPI_DMT_NHLT1c,
-    ACPI_DMT_NHLT1d,
-    ACPI_DMT_NHLT1e,
-    ACPI_DMT_NHLT1f,
     ACPI_DMT_PCCT,
     ACPI_DMT_PHAT,
     ACPI_DMT_PMTT,
@@ -281,9 +276,17 @@ extern ACPI_DMTABLE_INFO        AcpiDmTa
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestMemError[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestSmmuError[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestVendorError[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestVendorV2Error[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestGicError[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestPCIeError[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestProxyError[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXface[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXfaceHeader[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXface4k[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXface16k[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXface64k[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXrupt[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAestXruptV2[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAgdi[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoApmtNode[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoAsf0[];
@@ -317,6 +320,8 @@ extern ACPI_DMTABLE_INFO        AcpiDmTa
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedt0[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedt1[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedt1_te[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedt2[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCedt2_te[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCpep[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCpep0[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoCsrt0[];
@@ -440,10 +445,14 @@ extern ACPI_DMTABLE_INFO        AcpiDmTa
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt9[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt10[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11a[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt11b[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt12[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt13[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt14[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt14a[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt15[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt15a[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt16[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt17[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoMadt18[];
@@ -493,24 +502,6 @@ extern ACPI_DMTABLE_INFO        AcpiDmTa
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit6a[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNfit7[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt0[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt1[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt2[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt3[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt3a[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt4[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5a[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5b[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt5c[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt6[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt6a[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt6b[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt7[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt7a[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt7b[];
-extern ACPI_DMTABLE_INFO        AcpiDmTableInfoNhlt9[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhatHdr[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat0[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPhat0a[];
@@ -543,6 +534,8 @@ extern ACPI_DMTABLE_INFO        AcpiDmTa
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPrmtModule[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoPrmtHandler[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRasf[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRas2[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRas2PccDesc[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRgrt[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRgrt0[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoRhct[];
@@ -585,6 +578,7 @@ extern ACPI_DMTABLE_INFO        AcpiDmTa
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat4[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat5[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat6[];
+extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSrat7[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStao[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoStaoStr[];
 extern ACPI_DMTABLE_INFO        AcpiDmTableInfoSvkl[];
@@ -789,10 +783,6 @@ AcpiDmDumpNfit (
     ACPI_TABLE_HEADER       *Table);
 
 void
-AcpiDmDumpNhlt (
-    ACPI_TABLE_HEADER       *Table);
-
-void
 AcpiDmDumpPcct (
     ACPI_TABLE_HEADER       *Table);
 
@@ -817,6 +807,10 @@ AcpiDmDumpPrmt (
     ACPI_TABLE_HEADER       *Table);
 
 void
+AcpiDmDumpRas2 (
+    ACPI_TABLE_HEADER       *Table);
+
+void
 AcpiDmDumpRgrt (
     ACPI_TABLE_HEADER       *Table);
 
Index: src/sys/external/bsd/acpica/dist/include/acglobal.h
diff -u src/sys/external/bsd/acpica/dist/include/acglobal.h:1.27 src/sys/external/bsd/acpica/dist/include/acglobal.h:1.28
--- src/sys/external/bsd/acpica/dist/include/acglobal.h:1.27	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/acglobal.h	Fri Sep 13 19:13:24 2024
@@ -64,11 +64,7 @@ ACPI_INIT_GLOBAL (UINT32,               
 ACPI_INIT_GLOBAL (UINT32,               AcpiGbl_FacsIndex, ACPI_INVALID_TABLE_INDEX);
 ACPI_INIT_GLOBAL (UINT32,               AcpiGbl_XFacsIndex, ACPI_INVALID_TABLE_INDEX);
 ACPI_INIT_GLOBAL (UINT32,               AcpiGbl_FadtIndex, ACPI_INVALID_TABLE_INDEX);
-
-#if (!ACPI_REDUCED_HARDWARE)
-ACPI_GLOBAL (ACPI_TABLE_FACS *,         AcpiGbl_FACS);
-
-#endif /* !ACPI_REDUCED_HARDWARE */
+ACPI_INIT_GLOBAL (ACPI_TABLE_FACS *,    AcpiGbl_FACS, NULL);
 
 /* These addresses are calculated from the FADT Event Block addresses */
 

Index: src/sys/external/bsd/acpica/dist/include/aclocal.h
diff -u src/sys/external/bsd/acpica/dist/include/aclocal.h:1.25 src/sys/external/bsd/acpica/dist/include/aclocal.h:1.26
--- src/sys/external/bsd/acpica/dist/include/aclocal.h:1.25	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/aclocal.h	Fri Sep 13 19:13:24 2024
@@ -664,7 +664,7 @@ typedef struct acpi_field_info
 typedef struct acpi_ged_handler_info
 {
     struct acpi_ged_handler_info    *Next;
-    UINT32                          IntId;      /* The interrupt ID that triggers the execution ofthe EvtMethod. */
+    UINT32                          IntId;      /* The interrupt ID that triggers the execution of the EvtMethod. */
     ACPI_NAMESPACE_NODE             *EvtMethod; /* The _EVT method to be executed when an interrupt with ID = IntID is received */
 
 } ACPI_GED_HANDLER_INFO;
@@ -1304,6 +1304,8 @@ typedef struct acpi_port_info
 #define ACPI_ADDRESS_TYPE_IO_RANGE              1
 #define ACPI_ADDRESS_TYPE_BUS_NUMBER_RANGE      2
 
+#define ACPI_ADDRESS_TYPE_PCC_NUMBER            0xA
+
 /* Resource descriptor types and masks */
 
 #define ACPI_RESOURCE_NAME_LARGE                0x80

Index: src/sys/external/bsd/acpica/dist/include/acoutput.h
diff -u src/sys/external/bsd/acpica/dist/include/acoutput.h:1.17 src/sys/external/bsd/acpica/dist/include/acoutput.h:1.18
--- src/sys/external/bsd/acpica/dist/include/acoutput.h:1.17	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/acoutput.h	Fri Sep 13 19:13:24 2024
@@ -228,6 +228,7 @@
  */
 #ifndef ACPI_NO_ERROR_MESSAGES
 #define AE_INFO                         _AcpiModuleName, __LINE__
+#define ACPI_ONCE(_fn, _plist)                  { static char _done; if (!_done) { _done = 1; _fn _plist; } }
 
 /*
  * Error reporting. Callers module and line number are inserted by AE_INFO,
@@ -236,8 +237,10 @@
  */
 #define ACPI_INFO(plist)                AcpiInfo plist
 #define ACPI_WARNING(plist)             AcpiWarning plist
+#define ACPI_WARNING_ONCE(plist)        ACPI_ONCE(AcpiWarning, plist)
 #define ACPI_EXCEPTION(plist)           AcpiException plist
 #define ACPI_ERROR(plist)               AcpiError plist
+#define ACPI_ERROR_ONCE(plist)          ACPI_ONCE(AcpiError, plist)
 #define ACPI_BIOS_WARNING(plist)        AcpiBiosWarning plist
 #define ACPI_BIOS_EXCEPTION(plist)      AcpiBiosException plist
 #define ACPI_BIOS_ERROR(plist)          AcpiBiosError plist
@@ -249,8 +252,10 @@
 
 #define ACPI_INFO(plist)
 #define ACPI_WARNING(plist)
+#define ACPI_WARNING_ONCE(plist)
 #define ACPI_EXCEPTION(plist)
 #define ACPI_ERROR(plist)
+#define ACPI_ERROR_ONCE(plist)
 #define ACPI_BIOS_WARNING(plist)
 #define ACPI_BIOS_EXCEPTION(plist)
 #define ACPI_BIOS_ERROR(plist)

Index: src/sys/external/bsd/acpica/dist/include/acpixf.h
diff -u src/sys/external/bsd/acpica/dist/include/acpixf.h:1.35 src/sys/external/bsd/acpica/dist/include/acpixf.h:1.36
--- src/sys/external/bsd/acpica/dist/include/acpixf.h:1.35	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/acpixf.h	Fri Sep 13 19:13:24 2024
@@ -46,7 +46,7 @@
 
 /* Current ACPICA subsystem version in YYYYMMDD format */
 
-#define ACPI_CA_VERSION                 0x20230628
+#define ACPI_CA_VERSION                 0x20240827
 
 #include "acconfig.h"
 #include "actypes.h"
@@ -1187,7 +1187,7 @@ ACPI_STATUS
 AcpiLeaveSleepState (
     UINT8                   SleepState))
 
-ACPI_HW_DEPENDENT_RETURN_STATUS (
+ACPI_EXTERNAL_RETURN_STATUS (
 ACPI_STATUS
 AcpiSetFirmwareWakingVector (
     ACPI_PHYSICAL_ADDRESS   PhysicalAddress,

Index: src/sys/external/bsd/acpica/dist/include/actbl1.h
diff -u src/sys/external/bsd/acpica/dist/include/actbl1.h:1.22 src/sys/external/bsd/acpica/dist/include/actbl1.h:1.23
--- src/sys/external/bsd/acpica/dist/include/actbl1.h:1.22	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/actbl1.h	Fri Sep 13 19:13:24 2024
@@ -608,6 +608,8 @@ typedef struct acpi_cdat_sslbe
 
 } ACPI_CDAT_SSLBE;
 
+#define ACPI_CDAT_SSLBIS_US_PORT	0x0100
+#define ACPI_CDAT_SSLBIS_ANY_PORT	0xffff
 
 /*******************************************************************************
  *
@@ -712,20 +714,25 @@ typedef struct acpi_cedt_cfmws_target_el
 
 /* 2: CXL XOR Interleave Math Structure */
 
-struct acpi_cedt_cxims {
+typedef struct acpi_cedt_cxims {
     ACPI_CEDT_HEADER        Header;
     UINT16                  Reserved1;
     UINT8                   Hbig;
     UINT8                   NrXormaps;
     UINT64                  XormapList[];
-};
+} ACPI_CEDT_CXIMS;
+
+typedef struct acpi_cedt_cxims_target_element
+{
+    UINT64                   Xormap;
+
+} ACPI_CEDT_CXIMS_TARGET_ELEMENT;
+
 
 /* 3: CXL RCEC Downstream Port Association Structure */
 
 struct acpi_cedt_rdpas {
     ACPI_CEDT_HEADER        Header;
-    UINT8                   Reserved1;
-    UINT16                  Length;
     UINT16                  Segment;
     UINT16                  Bdf;
     UINT8                   Protocol;
@@ -930,6 +937,7 @@ typedef struct acpi_dbg2_device
 #define ACPI_DBG2_16550_WITH_GAS    0x0012
 #define ACPI_DBG2_SDM845_7_372MHZ   0x0013
 #define ACPI_DBG2_INTEL_LPSS        0x0014
+#define ACPI_DBG2_RISCV_SBI_CON     0x0015
 
 #define ACPI_DBG2_1394_STANDARD     0x0000
 
@@ -1340,6 +1348,12 @@ enum AcpiEinjCommandStatus
 #define ACPI_EINJ_PLATFORM_CORRECTABLE      (1<<9)
 #define ACPI_EINJ_PLATFORM_UNCORRECTABLE    (1<<10)
 #define ACPI_EINJ_PLATFORM_FATAL            (1<<11)
+#define ACPI_EINJ_CXL_CACHE_CORRECTABLE     (1<<12)
+#define ACPI_EINJ_CXL_CACHE_UNCORRECTABLE   (1<<13)
+#define ACPI_EINJ_CXL_CACHE_FATAL           (1<<14)
+#define ACPI_EINJ_CXL_MEM_CORRECTABLE       (1<<15)
+#define ACPI_EINJ_CXL_MEM_UNCORRECTABLE     (1<<16)
+#define ACPI_EINJ_CXL_MEM_FATAL             (1<<17)
 #define ACPI_EINJ_VENDOR_DEFINED            (1<<31)
 
 
@@ -2148,7 +2162,7 @@ typedef struct acpi_hmat_cache
     UINT32                  Reserved1;
     UINT64                  CacheSize;
     UINT32                  CacheAttributes;
-    UINT16                  Reserved2;
+    UINT16                  AddressMode;
     UINT16                  NumberOfSMBIOSHandles;
 
 } ACPI_HMAT_CACHE;
@@ -2161,6 +2175,9 @@ typedef struct acpi_hmat_cache
 #define ACPI_HMAT_WRITE_POLICY          (0x0000F000)
 #define ACPI_HMAT_CACHE_LINE_SIZE       (0xFFFF0000)
 
+#define ACPI_HMAT_CACHE_MODE_UNKNOWN            (0)
+#define ACPI_HMAT_CACHE_MODE_EXTENDED_LINEAR    (1)
+
 /* Values for cache associativity flag */
 
 #define ACPI_HMAT_CA_NONE                     (0)

Index: src/sys/external/bsd/acpica/dist/include/actypes.h
diff -u src/sys/external/bsd/acpica/dist/include/actypes.h:1.29 src/sys/external/bsd/acpica/dist/include/actypes.h:1.30
--- src/sys/external/bsd/acpica/dist/include/actypes.h:1.29	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/actypes.h	Fri Sep 13 19:13:24 2024
@@ -1457,6 +1457,7 @@ typedef enum
 #define ACPI_OSI_WIN_10_19H1            0x14
 #define ACPI_OSI_WIN_10_20H1            0x15
 #define ACPI_OSI_WIN_11                 0x16
+#define ACPI_OSI_WIN_11_22H2            0x17
 
 
 /* Definitions of getopt */

Index: src/sys/external/bsd/acpica/dist/include/platform/acgcc.h
diff -u src/sys/external/bsd/acpica/dist/include/platform/acgcc.h:1.11 src/sys/external/bsd/acpica/dist/include/platform/acgcc.h:1.12
--- src/sys/external/bsd/acpica/dist/include/platform/acgcc.h:1.11	Fri Sep  1 14:37:31 2023
+++ src/sys/external/bsd/acpica/dist/include/platform/acgcc.h	Fri Sep 13 19:13:24 2024
@@ -112,10 +112,12 @@ typedef __builtin_va_list       va_list;
  * C99, but this is not for any technical reason. Work around the
  * limitation.
  */
+#ifndef __cplusplus
 #define ACPI_FLEX_ARRAY(TYPE, NAME)             \
         struct {                                \
                 struct { } __Empty_ ## NAME;    \
                 TYPE NAME[];                    \
         }
+#endif
 
 #endif /* __ACGCC_H__ */

Index: src/sys/external/bsd/acpica/dist/resources/rsdump.c
diff -u src/sys/external/bsd/acpica/dist/resources/rsdump.c:1.17 src/sys/external/bsd/acpica/dist/resources/rsdump.c:1.18
--- src/sys/external/bsd/acpica/dist/resources/rsdump.c:1.17	Fri Sep  1 14:37:32 2023
+++ src/sys/external/bsd/acpica/dist/resources/rsdump.c	Fri Sep 13 19:13:24 2024
@@ -122,6 +122,7 @@ AcpiRsDumpDescriptor (
     ACPI_RSDUMP_INFO        *Table);
 
 
+#ifdef ACPI_DEBUGGER
 /*******************************************************************************
  *
  * FUNCTION:    AcpiRsDumpResourceList
@@ -251,7 +252,7 @@ AcpiRsDumpIrqList (
             PrtElement, PrtElement->Length);
     }
 }
-
+#endif
 
 /*******************************************************************************
  *

Index: src/sys/external/bsd/acpica/dist/tables/tbfadt.c
diff -u src/sys/external/bsd/acpica/dist/tables/tbfadt.c:1.20 src/sys/external/bsd/acpica/dist/tables/tbfadt.c:1.21
--- src/sys/external/bsd/acpica/dist/tables/tbfadt.c:1.20	Fri Sep  1 14:37:32 2023
+++ src/sys/external/bsd/acpica/dist/tables/tbfadt.c	Fri Sep 13 19:13:24 2024
@@ -381,24 +381,19 @@ AcpiTbParseFadt (
         ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
         &AcpiGbl_DsdtIndex);
 
-    /* If Hardware Reduced flag is set, there is no FACS */
-
-    if (!AcpiGbl_ReducedHardware)
+    if (AcpiGbl_FADT.Facs)
     {
-        if (AcpiGbl_FADT.Facs)
-        {
-            AcpiTbInstallStandardTable (
-                (ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.Facs,
-                ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
-                &AcpiGbl_FacsIndex);
-        }
-        if (AcpiGbl_FADT.XFacs)
-        {
-            AcpiTbInstallStandardTable (
-                (ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.XFacs,
-                ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
-                &AcpiGbl_XFacsIndex);
-        }
+        AcpiTbInstallStandardTable (
+            (ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.Facs,
+            ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
+            &AcpiGbl_FacsIndex);
+    }
+    if (AcpiGbl_FADT.XFacs)
+    {
+        AcpiTbInstallStandardTable (
+            (ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.XFacs,
+            ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
+            &AcpiGbl_XFacsIndex);
     }
 }
 

Index: src/sys/external/bsd/acpica/dist/tables/tbutils.c
diff -u src/sys/external/bsd/acpica/dist/tables/tbutils.c:1.22 src/sys/external/bsd/acpica/dist/tables/tbutils.c:1.23
--- src/sys/external/bsd/acpica/dist/tables/tbutils.c:1.22	Fri Sep  1 14:37:32 2023
+++ src/sys/external/bsd/acpica/dist/tables/tbutils.c	Fri Sep 13 19:13:24 2024
@@ -57,7 +57,6 @@ AcpiTbGetRootTableEntry (
     UINT32                  TableEntrySize);
 
 
-#if (!ACPI_REDUCED_HARDWARE)
 /*******************************************************************************
  *
  * FUNCTION:    AcpiTbInitializeFacs
@@ -77,15 +76,7 @@ AcpiTbInitializeFacs (
 {
     ACPI_TABLE_FACS         *Facs;
 
-
-    /* If Hardware Reduced flag is set, there is no FACS */
-
-    if (AcpiGbl_ReducedHardware)
-    {
-        AcpiGbl_FACS = NULL;
-        return (AE_OK);
-    }
-    else if (AcpiGbl_FADT.XFacs &&
+    if (AcpiGbl_FADT.XFacs &&
          (!AcpiGbl_FADT.Facs || !AcpiGbl_Use32BitFacsAddresses))
     {
         (void) AcpiGetTableByIndex (AcpiGbl_XFacsIndex,
@@ -103,7 +94,6 @@ AcpiTbInitializeFacs (
 
     return (AE_OK);
 }
-#endif /* !ACPI_REDUCED_HARDWARE */
 
 
 /*******************************************************************************

Index: src/sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c
diff -u src/sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c:1.17 src/sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c:1.18
--- src/sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c:1.17	Fri Sep  1 14:37:33 2023
+++ src/sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c	Fri Sep 13 19:13:24 2024
@@ -78,6 +78,7 @@ AxExtractTables (
     int                     Status = 0;
     unsigned int            State = AX_STATE_FIND_HEADER;
 
+    memset (UpperSignature, 0, sizeof(UpperSignature));
 
     /* Open input in text mode, output is in binary mode */
 
@@ -104,7 +105,7 @@ AxExtractTables (
         AxNormalizeSignature (UpperSignature);
         Instances = AxCountTableInstances (InputPathname, UpperSignature);
 
-        if (Instances < MinimumInstances)
+        if (Instances < MinimumInstances || MinimumInstances == AX_OPTIONAL_TABLES)
         {
             printf ("Table [%s] was not found in %s\n",
                 UpperSignature, InputPathname);

Index: src/sys/external/bsd/acpica/dist/utilities/utdebug.c
diff -u src/sys/external/bsd/acpica/dist/utilities/utdebug.c:1.21 src/sys/external/bsd/acpica/dist/utilities/utdebug.c:1.22
--- src/sys/external/bsd/acpica/dist/utilities/utdebug.c:1.21	Fri Sep  1 14:37:33 2023
+++ src/sys/external/bsd/acpica/dist/utilities/utdebug.c	Fri Sep 13 19:13:25 2024
@@ -107,7 +107,12 @@ AcpiUtTrackStackPtr (
 
     if (&CurrentSp < AcpiGbl_LowestStackPointer)
     {
+#pragma GCC diagnostic push
+#if defined(__GNUC__) && __GNUC__ >= 12
+#pragma GCC diagnostic ignored "-Wdangling-pointer="
+#endif
         AcpiGbl_LowestStackPointer = &CurrentSp;
+#pragma GCC diagnostic pop
     }
 
     if (AcpiGbl_NestingLevel > AcpiGbl_DeepestNesting)

Index: src/sys/external/bsd/acpica/dist/utilities/utdelete.c
diff -u src/sys/external/bsd/acpica/dist/utilities/utdelete.c:1.10 src/sys/external/bsd/acpica/dist/utilities/utdelete.c:1.11
--- src/sys/external/bsd/acpica/dist/utilities/utdelete.c:1.10	Fri Sep  1 14:37:33 2023
+++ src/sys/external/bsd/acpica/dist/utilities/utdelete.c	Fri Sep 13 19:13:25 2024
@@ -185,7 +185,7 @@ AcpiUtDeleteInternalObj (
             /* Global Lock has extra semaphore */
 
             (void) AcpiOsDeleteSemaphore (AcpiGbl_GlobalLockSemaphore);
-            AcpiGbl_GlobalLockSemaphore = NULL;
+            AcpiGbl_GlobalLockSemaphore = ACPI_SEMAPHORE_NULL;
 
             AcpiOsDeleteMutex (Object->Mutex.OsMutex);
             AcpiGbl_GlobalLockMutex = NULL;
@@ -204,7 +204,7 @@ AcpiUtDeleteInternalObj (
             Object, Object->Event.OsSemaphore));
 
         (void) AcpiOsDeleteSemaphore (Object->Event.OsSemaphore);
-        Object->Event.OsSemaphore = NULL;
+        Object->Event.OsSemaphore = ACPI_SEMAPHORE_NULL;
         break;
 
     case ACPI_TYPE_METHOD:

Index: src/sys/external/bsd/acpica/dist/utilities/utosi.c
diff -u src/sys/external/bsd/acpica/dist/utilities/utosi.c:1.19 src/sys/external/bsd/acpica/dist/utilities/utosi.c:1.20
--- src/sys/external/bsd/acpica/dist/utilities/utosi.c:1.19	Fri Sep  1 14:37:33 2023
+++ src/sys/external/bsd/acpica/dist/utilities/utosi.c	Fri Sep 13 19:13:25 2024
@@ -114,6 +114,7 @@ static ACPI_INTERFACE_INFO    AcpiDefaul
     {"Windows 2019",        NULL, 0, ACPI_OSI_WIN_10_19H1},      /* Windows 10 version 1903 - Added 08/2019 */
     {"Windows 2020",        NULL, 0, ACPI_OSI_WIN_10_20H1},      /* Windows 10 version 2004 - Added 08/2021 */
     {"Windows 2021",        NULL, 0, ACPI_OSI_WIN_11},           /* Windows 11 - Added 01/2022 */
+    {"Windows 2022",        NULL, 0, ACPI_OSI_WIN_11_22H2},      /* Windows 11 version 22H2 - Added 04/2024 */
 
     /* Feature Group Strings */
 

Reply via email to