diff --git a/sys/external/bsd/acpica/dist/compiler/aslcompiler.l b/sys/external/bsd/acpica/dist/compiler/aslcompiler.l index b17aaa043af8..91f72b5d4339 100644 --- a/sys/external/bsd/acpica/dist/compiler/aslcompiler.l +++ b/sys/external/bsd/acpica/dist/compiler/aslcompiler.l @@ -585,6 +585,7 @@ NamePathTail [.]{NameSeg} "GeneralPurposeIo" { count (0); return (PARSEOP_REGIONSPACE_GPIO); } /* ACPI 5.0 */ "GenericSerialBus" { count (0); return (PARSEOP_REGIONSPACE_GSBUS); } /* ACPI 5.0 */ "PCC" { count (0); return (PARSEOP_REGIONSPACE_PCC); } /* ACPI 5.0 */ +"PlatformRtMechanism" { count (0); return (PARSEOP_REGIONSPACE_PRM); } "FFixedHW" { count (0); return (PARSEOP_REGIONSPACE_FFIXEDHW); } /* ResourceTypeKeyword: Resource Usage - Resource Descriptors */ diff --git a/sys/external/bsd/acpica/dist/compiler/aslerror.c b/sys/external/bsd/acpica/dist/compiler/aslerror.c index ee2f45b40120..947da4263b22 100644 --- a/sys/external/bsd/acpica/dist/compiler/aslerror.c +++ b/sys/external/bsd/acpica/dist/compiler/aslerror.c @@ -948,7 +948,7 @@ GetModifiedLevel ( UINT8 Level, UINT16 MessageId) { - UINT16 i; + UINT32 i; UINT16 ExceptionCode; diff --git a/sys/external/bsd/acpica/dist/compiler/aslload.c b/sys/external/bsd/acpica/dist/compiler/aslload.c index 22d537e31135..ec1c6d798463 100644 --- a/sys/external/bsd/acpica/dist/compiler/aslload.c +++ b/sys/external/bsd/acpica/dist/compiler/aslload.c @@ -1069,13 +1069,13 @@ LdAnalyzeExternals ( * previously declared External */ Node->Flags &= ~ANOBJ_IS_EXTERNAL; - Node->Type = (UINT8) ExternalOpType; + Node->Type = (UINT8) ActualOpType; /* Just retyped a node, probably will need to open a scope */ - if (AcpiNsOpensScope (ExternalOpType)) + if (AcpiNsOpensScope (ActualOpType)) { - Status = AcpiDsScopeStackPush (Node, ExternalOpType, WalkState); + Status = AcpiDsScopeStackPush (Node, ActualOpType, WalkState); if (ACPI_FAILURE (Status)) { return (Status); @@ -1096,11 +1096,11 @@ LdAnalyzeExternals ( } else if ((Node->Flags & ANOBJ_IS_EXTERNAL) && (Op->Asl.ParseOpcode == PARSEOP_EXTERNAL) && - (ExternalOpType == ACPI_TYPE_ANY)) + (ActualOpType == ACPI_TYPE_ANY)) { /* Allow update of externals of unknown type. */ - Node->Type = (UINT8) ExternalOpType; + Node->Type = (UINT8) ActualExternalOpType; Status = AE_OK; } diff --git a/sys/external/bsd/acpica/dist/compiler/aslxref.c b/sys/external/bsd/acpica/dist/compiler/aslxref.c index f808db61972d..7834e10bc9bf 100644 --- a/sys/external/bsd/acpica/dist/compiler/aslxref.c +++ b/sys/external/bsd/acpica/dist/compiler/aslxref.c @@ -713,9 +713,24 @@ XfNamespaceLocateBegin ( Node->Flags |= ANOBJ_IS_REFERENCED; } - /* Attempt to optimize the NamePath */ - - OptOptimizeNamePath (Op, OpInfo->Flags, WalkState, Path, Node); + /* + * Attempt to optimize the NamePath + * + * One special case: CondRefOf operator - not all AML interpreter + * implementations expect optimized namepaths as a parameter to this + * operator. They require relative name paths with prefix operators or + * namepaths starting with the root scope. + * + * Other AML interpreter implementations do not perform the namespace + * search that starts at the current scope and recursively searching the + * parent scope until the root scope. The lack of search is only known to + * occur for the namestring parameter for the CondRefOf operator. + */ + if ((Op->Asl.Parent) && + (Op->Asl.Parent->Asl.ParseOpcode != PARSEOP_CONDREFOF)) + { + OptOptimizeNamePath (Op, OpInfo->Flags, WalkState, Path, Node); + } /* * 1) Dereference an alias (A name reference that is an alias) @@ -871,12 +886,14 @@ XfNamespaceLocateBegin ( * invocation of the method, it is simply a reference to the method. * * September 2016: Removed DeRefOf from this list + * July 2020: Added Alias to this list */ if ((Op->Asl.Parent) && ((Op->Asl.Parent->Asl.ParseOpcode == PARSEOP_REFOF) || (Op->Asl.Parent->Asl.ParseOpcode == PARSEOP_PACKAGE) || (Op->Asl.Parent->Asl.ParseOpcode == PARSEOP_VAR_PACKAGE)|| - (Op->Asl.Parent->Asl.ParseOpcode == PARSEOP_OBJECTTYPE))) + (Op->Asl.Parent->Asl.ParseOpcode == PARSEOP_OBJECTTYPE) || + (Op->Asl.Parent->Asl.ParseOpcode == PARSEOP_ALIAS))) { return_ACPI_STATUS (AE_OK); } diff --git a/sys/external/bsd/acpica/dist/debugger/dbdisply.c b/sys/external/bsd/acpica/dist/debugger/dbdisply.c index 7b25c531ff84..bbdb92b70361 100644 --- a/sys/external/bsd/acpica/dist/debugger/dbdisply.c +++ b/sys/external/bsd/acpica/dist/debugger/dbdisply.c @@ -96,6 +96,8 @@ static ACPI_ADR_SPACE_TYPE AcpiGbl_SpaceIdList[] = ACPI_ADR_SPACE_IPMI, ACPI_ADR_SPACE_GPIO, ACPI_ADR_SPACE_GSBUS, + ACPI_ADR_SPACE_PLATFORM_COMM, + ACPI_ADR_SPACE_PLATFORM_RT, ACPI_ADR_SPACE_DATA_TABLE, ACPI_ADR_SPACE_FIXED_HARDWARE }; diff --git a/sys/external/bsd/acpica/dist/generate/unix/acpinames/Makefile b/sys/external/bsd/acpica/dist/generate/unix/acpinames/Makefile deleted file mode 100644 index 90d3afe29e4f..000000000000 --- a/sys/external/bsd/acpica/dist/generate/unix/acpinames/Makefile +++ /dev/null @@ -1,178 +0,0 @@ -# -# acpinames - Load ACPI table and dump namespace. This is a subset -# of the AcpiExec functionality, it is intended to demonstrate -# the configurability of ACPICA. -# - -# -# Note: This makefile is intended to be used from within the native -# ACPICA directory structure, from under generate/unix. It specifically -# places all object files in a generate/unix subdirectory, not within -# the various ACPICA source directories. This prevents collisions -# between different compilations of the same source file with different -# compile options, and prevents pollution of the source code. -# -include ../Makefile.config -FINAL_PROG = ../$(BINDIR)/acpinames -PROG = $(OBJDIR)/acpinames - -# -# Search paths for source files -# -vpath %.c \ - $(ACPINAMES)\ - $(ACPICA_DISPATCHER)\ - $(ACPICA_EVENTS)\ - $(ACPICA_EXECUTER)\ - $(ACPICA_HARDWARE)\ - $(ACPICA_NAMESPACE)\ - $(ACPICA_PARSER)\ - $(ACPICA_TABLES)\ - $(ACPICA_UTILITIES)\ - $(ACPICA_COMMON)\ - $(ACPICA_OSL) - -HEADERS = \ - $(wildcard $(ACPINAMES)/*.h) - -OBJECTS = \ - $(OBJDIR)/acfileio.o\ - $(OBJDIR)/anmain.o\ - $(OBJDIR)/anstubs.o\ - $(OBJDIR)/antables.o\ - $(OBJDIR)/cmfsize.o\ - $(OBJDIR)/dscontrol.o\ - $(OBJDIR)/dsdebug.o\ - $(OBJDIR)/dsfield.o\ - $(OBJDIR)/dsinit.o\ - $(OBJDIR)/dsmethod.o\ - $(OBJDIR)/dsmthdat.o\ - $(OBJDIR)/dsobject.o\ - $(OBJDIR)/dsopcode.o\ - $(OBJDIR)/dspkginit.o\ - $(OBJDIR)/dsutils.o\ - $(OBJDIR)/dswexec.o\ - $(OBJDIR)/dswload.o\ - $(OBJDIR)/dswload2.o\ - $(OBJDIR)/dswscope.o\ - $(OBJDIR)/dswstate.o\ - $(OBJDIR)/evhandler.o\ - $(OBJDIR)/evmisc.o\ - $(OBJDIR)/evregion.o\ - $(OBJDIR)/evrgnini.o\ - $(OBJDIR)/evxfregn.o\ - $(OBJDIR)/exconcat.o\ - $(OBJDIR)/exconfig.o\ - $(OBJDIR)/exconvrt.o\ - $(OBJDIR)/excreate.o\ - $(OBJDIR)/exdump.o\ - $(OBJDIR)/exfield.o\ - $(OBJDIR)/exfldio.o\ - $(OBJDIR)/exmisc.o\ - $(OBJDIR)/exmutex.o\ - $(OBJDIR)/exnames.o\ - $(OBJDIR)/exoparg1.o\ - $(OBJDIR)/exoparg2.o\ - $(OBJDIR)/exoparg3.o\ - $(OBJDIR)/exoparg6.o\ - $(OBJDIR)/exprep.o\ - $(OBJDIR)/exregion.o\ - $(OBJDIR)/exresnte.o\ - $(OBJDIR)/exresolv.o\ - $(OBJDIR)/exresop.o\ - $(OBJDIR)/exserial.o\ - $(OBJDIR)/exstore.o\ - $(OBJDIR)/exstoren.o\ - $(OBJDIR)/exstorob.o\ - $(OBJDIR)/exsystem.o\ - $(OBJDIR)/exutils.o\ - $(OBJDIR)/getopt.o\ - $(OBJDIR)/hwpci.o\ - $(OBJDIR)/hwvalid.o\ - $(OBJDIR)/nsaccess.o\ - $(OBJDIR)/nsalloc.o\ - $(OBJDIR)/nsarguments.o\ - $(OBJDIR)/nsconvert.o\ - $(OBJDIR)/nsdump.o\ - $(OBJDIR)/nseval.o\ - $(OBJDIR)/nsinit.o\ - $(OBJDIR)/nsload.o\ - $(OBJDIR)/nsnames.o\ - $(OBJDIR)/nsobject.o\ - $(OBJDIR)/nsparse.o\ - $(OBJDIR)/nspredef.o\ - $(OBJDIR)/nsprepkg.o\ - $(OBJDIR)/nsrepair.o\ - $(OBJDIR)/nsrepair2.o\ - $(OBJDIR)/nssearch.o\ - $(OBJDIR)/nsutils.o\ - $(OBJDIR)/nswalk.o\ - $(OBJDIR)/nsxfeval.o\ - $(OBJDIR)/nsxfname.o\ - $(OBJDIR)/nsxfobj.o\ - $(OBJDIR)/osunixxf.o\ - $(OBJDIR)/psargs.o\ - $(OBJDIR)/psloop.o\ - $(OBJDIR)/psobject.o\ - $(OBJDIR)/psopcode.o\ - $(OBJDIR)/psopinfo.o\ - $(OBJDIR)/psparse.o\ - $(OBJDIR)/psscope.o\ - $(OBJDIR)/pstree.o\ - $(OBJDIR)/psutils.o\ - $(OBJDIR)/pswalk.o\ - $(OBJDIR)/psxface.o\ - $(OBJDIR)/tbdata.o\ - $(OBJDIR)/tbfadt.o\ - $(OBJDIR)/tbfind.o\ - $(OBJDIR)/tbinstal.o\ - $(OBJDIR)/tbprint.o\ - $(OBJDIR)/tbutils.o\ - $(OBJDIR)/tbxface.o\ - $(OBJDIR)/tbxfload.o\ - $(OBJDIR)/tbxfroot.o\ - $(OBJDIR)/utaddress.o\ - $(OBJDIR)/utalloc.o\ - $(OBJDIR)/utascii.o\ - $(OBJDIR)/utbuffer.o\ - $(OBJDIR)/utcache.o\ - $(OBJDIR)/utcopy.o\ - $(OBJDIR)/utdebug.o\ - $(OBJDIR)/utdecode.o\ - $(OBJDIR)/utdelete.o\ - $(OBJDIR)/uterror.o\ - $(OBJDIR)/uteval.o\ - $(OBJDIR)/utexcep.o\ - $(OBJDIR)/utglobal.o\ - $(OBJDIR)/uthex.o\ - $(OBJDIR)/utids.o\ - $(OBJDIR)/utinit.o\ - $(OBJDIR)/utlock.o\ - $(OBJDIR)/utmath.o\ - $(OBJDIR)/utmisc.o\ - $(OBJDIR)/utmutex.o\ - $(OBJDIR)/utnonansi.o\ - $(OBJDIR)/utobject.o\ - $(OBJDIR)/utosi.o\ - $(OBJDIR)/utownerid.o\ - $(OBJDIR)/utpredef.o\ - $(OBJDIR)/utresrc.o\ - $(OBJDIR)/utstate.o\ - $(OBJDIR)/utstring.o\ - $(OBJDIR)/utstrsuppt.o\ - $(OBJDIR)/utstrtoul64.o\ - $(OBJDIR)/utxface.o\ - $(OBJDIR)/utxferror.o\ - $(OBJDIR)/utxfinit.o - -# -# Flags specific to acpinames utility -# -CFLAGS += \ - -DACPI_NAMES_APP\ - -I$(ACPINAMES) - -# -# Common Rules -# -include ../Makefile.rules diff --git a/sys/external/bsd/acpica/dist/include/acpixf.h b/sys/external/bsd/acpica/dist/include/acpixf.h index 5ef3496cbcd7..9a79de5c2bf6 100644 --- a/sys/external/bsd/acpica/dist/include/acpixf.h +++ b/sys/external/bsd/acpica/dist/include/acpixf.h @@ -46,7 +46,7 @@ /* Current ACPICA subsystem version in YYYYMMDD format */ -#define ACPI_CA_VERSION 0x20200430 +#define ACPI_CA_VERSION 0x20200717 #include "acconfig.h" #include "actypes.h" diff --git a/sys/external/bsd/acpica/dist/include/actypes.h b/sys/external/bsd/acpica/dist/include/actypes.h index 8f382f808955..6a7619c6c856 100644 --- a/sys/external/bsd/acpica/dist/include/actypes.h +++ b/sys/external/bsd/acpica/dist/include/actypes.h @@ -865,8 +865,9 @@ typedef UINT8 ACPI_ADR_SPACE_TYPE; #define ACPI_ADR_SPACE_GPIO (ACPI_ADR_SPACE_TYPE) 8 #define ACPI_ADR_SPACE_GSBUS (ACPI_ADR_SPACE_TYPE) 9 #define ACPI_ADR_SPACE_PLATFORM_COMM (ACPI_ADR_SPACE_TYPE) 10 +#define ACPI_ADR_SPACE_PLATFORM_RT (ACPI_ADR_SPACE_TYPE) 11 -#define ACPI_NUM_PREDEFINED_REGIONS 11 +#define ACPI_NUM_PREDEFINED_REGIONS 12 /* * Special Address Spaces @@ -1275,7 +1276,7 @@ typedef struct acpi_pnp_device_id_list { UINT32 Count; /* Number of IDs in Ids array */ UINT32 ListSize; /* Size of list, including ID strings */ - ACPI_PNP_DEVICE_ID Ids[1]; /* ID array */ + ACPI_PNP_DEVICE_ID Ids[]; /* ID array */ } ACPI_PNP_DEVICE_ID_LIST; diff --git a/sys/external/bsd/acpica/dist/os_specific/service_layers/oslinuxtbl.c b/sys/external/bsd/acpica/dist/os_specific/service_layers/oslinuxtbl.c index 3b97310869f4..880e17be7230 100644 --- a/sys/external/bsd/acpica/dist/os_specific/service_layers/oslinuxtbl.c +++ b/sys/external/bsd/acpica/dist/os_specific/service_layers/oslinuxtbl.c @@ -84,7 +84,6 @@ static ACPI_STATUS OslReadTableFromFile ( char *Filename, ACPI_SIZE FileOffset, - char *Signature, ACPI_TABLE_HEADER **Table); static ACPI_STATUS @@ -1382,8 +1381,6 @@ OslTableNameFromFile ( * * PARAMETERS: Filename - File that contains the desired table * FileOffset - Offset of the table in file - * Signature - Optional ACPI Signature for desired table. - * A null terminated 4-character string. * Table - Where a pointer to the table is returned * * RETURN: Status; Table buffer is returned if AE_OK. @@ -1396,7 +1393,6 @@ static ACPI_STATUS OslReadTableFromFile ( char *Filename, ACPI_SIZE FileOffset, - char *Signature, ACPI_TABLE_HEADER **Table) { FILE *TableFile; @@ -1428,6 +1424,8 @@ OslReadTableFromFile ( goto Exit; } +#ifdef ACPI_OBSOLETE_FUNCTIONS + /* If signature is specified, it must match the table */ if (Signature) @@ -1449,6 +1447,7 @@ OslReadTableFromFile ( goto Exit; } } +#endif TableLength = ApGetTableLength (&Header); if (TableLength == 0) @@ -1582,7 +1581,7 @@ OslGetCustomizedTable ( /* There is no physical address saved for customized tables, use zero */ *Address = 0; - Status = OslReadTableFromFile (TableFilename, 0, NULL, Table); + Status = OslReadTableFromFile (TableFilename, 0, Table); return (Status); } diff --git a/sys/external/bsd/acpica/dist/tools/acpinames/acpinames.h b/sys/external/bsd/acpica/dist/tools/acpinames/acpinames.h deleted file mode 100644 index b2f7a886b823..000000000000 --- a/sys/external/bsd/acpica/dist/tools/acpinames/acpinames.h +++ /dev/null @@ -1,66 +0,0 @@ -/****************************************************************************** - * - * Module Name: acpinames.h - Common include for AcpiNames utility - * - *****************************************************************************/ - -/* - * Copyright (C) 2000 - 2020, Intel Corp. - * All rights reserved. - * - * 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. - * - * Alternatively, this software may be distributed under the terms of the - * GNU General Public License ("GPL") version 2 as published by the Free - * Software Foundation. - * - * NO WARRANTY - * 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 MERCHANTIBILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. - */ - -#ifndef _ACPINAMES_H -#define _ACPINAMES_H - -#include "acpi.h" -#include "accommon.h" -#include "acapps.h" -#include "acutils.h" -#include "acnamesp.h" -#include "actables.h" -#include "acinterp.h" - -#include - -#define ACPI_MAX_INIT_TABLES (32) - -extern BOOLEAN AcpiGbl_NsLoadOnly; - - -ACPI_STATUS -AnBuildLocalTables ( - ACPI_NEW_TABLE_DESC *TableList); - -#endif diff --git a/sys/external/bsd/acpica/dist/tools/acpinames/anmain.c b/sys/external/bsd/acpica/dist/tools/acpinames/anmain.c deleted file mode 100644 index 732fde0ec043..000000000000 --- a/sys/external/bsd/acpica/dist/tools/acpinames/anmain.c +++ /dev/null @@ -1,308 +0,0 @@ -/****************************************************************************** - * - * Module Name: anmain - Main routine for the AcpiNames utility - * - *****************************************************************************/ - -/* - * Copyright (C) 2000 - 2020, Intel Corp. - * All rights reserved. - * - * 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. - * - * Alternatively, this software may be distributed under the terms of the - * GNU General Public License ("GPL") version 2 as published by the Free - * Software Foundation. - * - * NO WARRANTY - * 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 MERCHANTIBILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. - */ - -#include "acpinames.h" -#include "actables.h" -#include "errno.h" - -#define _COMPONENT ACPI_TOOLS - ACPI_MODULE_NAME ("anmain") - - -/* Local prototypes */ - -static int -AnDumpEntireNamespace ( - ACPI_NEW_TABLE_DESC *ListHead); - - -/* - * Main routine for the ACPI user-space namespace utility. - * - * Portability note: The utility depends upon the host for command-line - * wildcard support - it is not implemented locally. For example: - * - * Linux/Unix systems: Shell expands wildcards automatically. - * - * Windows: The setargv.obj module must be linked in to automatically - * expand wildcards. - */ -BOOLEAN AcpiGbl_NsLoadOnly = FALSE; - - -#define AN_UTILITY_NAME "ACPI Namespace Dump Utility" -#define AN_SUPPORTED_OPTIONS "?hlv^x:" - - -/****************************************************************************** - * - * FUNCTION: usage - * - * PARAMETERS: None - * - * RETURN: None - * - * DESCRIPTION: Print a usage message - * - *****************************************************************************/ - -static void -usage ( - void) -{ - - ACPI_USAGE_HEADER ("AcpiNames [options] AMLfile"); - ACPI_OPTION ("-?", "Display this message"); - ACPI_OPTION ("-l", "Load namespace only, no display"); - ACPI_OPTION ("-v", "Display version information"); - ACPI_OPTION ("-vd", "Display build date and time"); - ACPI_OPTION ("-x ", "Debug output level"); -} - - -/****************************************************************************** - * - * FUNCTION: main - * - * PARAMETERS: argc, argv - * - * RETURN: Status (pass/fail) - * - * DESCRIPTION: Main routine for NsDump utility - * - *****************************************************************************/ - -int ACPI_SYSTEM_XFACE -main ( - int argc, - char **argv) -{ - ACPI_NEW_TABLE_DESC *ListHead = NULL; - ACPI_STATUS Status; - int j; - - - ACPI_DEBUG_INITIALIZE (); /* For debug version only */ - - /* Init debug globals and ACPICA */ - - AcpiDbgLevel = ACPI_NORMAL_DEFAULT | ACPI_LV_TABLES; - AcpiDbgLayer = 0xFFFFFFFF; - - /* Set flags so that the interpreter is not used */ - - Status = AcpiInitializeSubsystem (); - ACPI_CHECK_OK (AcpiInitializeSubsystem, Status); - if (ACPI_FAILURE (Status)) - { - return (-1); - } - - printf (ACPI_COMMON_SIGNON (AN_UTILITY_NAME)); - if (argc < 2) - { - usage (); - return (0); - } - - /* Get the command line options */ - - while ((j = AcpiGetopt (argc, argv, AN_SUPPORTED_OPTIONS)) != ACPI_OPT_END) switch(j) - { - case 'l': - - AcpiGbl_NsLoadOnly = TRUE; - break; - - case 'v': - - switch (AcpiGbl_Optarg[0]) - { - case '^': /* -v: (Version): signon already emitted, just exit */ - - exit (0); - - case 'd': - - printf (ACPI_COMMON_BUILD_TIME); - return (0); - - default: - - printf ("Unknown option: -v%s\n", AcpiGbl_Optarg); - return (-1); - } - break; - - case 'x': - - AcpiDbgLevel = strtoul (AcpiGbl_Optarg, NULL, 0); - printf ("Debug Level: 0x%8.8X\n", AcpiDbgLevel); - break; - - case '?': - case 'h': - default: - - usage(); - return (0); - } - - /* Get each of the ACPI table files on the command line */ - - while (argv[AcpiGbl_Optind]) - { - /* Get all ACPI AML tables in this file */ - - Status = AcGetAllTablesFromFile (argv[AcpiGbl_Optind], - ACPI_GET_ALL_TABLES, &ListHead); - if (ACPI_FAILURE (Status)) - { - return (-1); - } - - AcpiGbl_Optind++; - } - - printf ("\n"); - - /* - * The next argument is the filename for the DSDT or SSDT. - * Open the file, build namespace and dump it. - */ - return (AnDumpEntireNamespace (ListHead)); -} - - -/****************************************************************************** - * - * FUNCTION: AnDumpEntireNamespace - * - * PARAMETERS: AmlFilename - Filename for DSDT or SSDT AML table - * - * RETURN: Status (pass/fail) - * - * DESCRIPTION: Build an ACPI namespace for the input AML table, and dump the - * formatted namespace contents. - * - *****************************************************************************/ - -static int -AnDumpEntireNamespace ( - ACPI_NEW_TABLE_DESC *ListHead) -{ - ACPI_STATUS Status; - ACPI_HANDLE Handle; - - - /* - * Build a local XSDT with all tables. Normally, here is where the - * RSDP search is performed to find the ACPI tables - */ - Status = AnBuildLocalTables (ListHead); - if (ACPI_FAILURE (Status)) - { - return (-1); - } - - /* Initialize table manager, get XSDT */ - - Status = AcpiInitializeTables (NULL, ACPI_MAX_INIT_TABLES, TRUE); - if (ACPI_FAILURE (Status)) - { - printf ("**** Could not initialize ACPI table manager, %s\n", - AcpiFormatException (Status)); - return (-1); - } - - /* Build the namespace from the tables */ - - Status = AcpiLoadTables (); - if (Status == AE_CTRL_TERMINATE) - { - /* At least one table load failed -- terminate with error */ - - return (-1); - } - - if (ACPI_FAILURE (Status)) - { - printf ("**** While creating namespace, %s\n", - AcpiFormatException (Status)); - return (-1); - } - - if (AcpiGbl_NsLoadOnly) - { - printf ("**** Namespace successfully loaded\n"); - return (0); - } - - /* - * NOTE: - * We don't need to do any further ACPICA initialization, since we don't - * have any hardware, nor is the interpreter configured. - * - * Namely, we don't need these calls: - * AcpiEnableSubsystem - * AcpiInitializeObjects - */ - - - /* - * Perform a namespace walk to dump the contents - */ - AcpiOsPrintf ("\nACPI Namespace:\n"); - - AcpiNsDumpObjects (ACPI_TYPE_ANY, ACPI_DISPLAY_SUMMARY, - ACPI_UINT32_MAX, ACPI_OWNER_ID_MAX, AcpiGbl_RootNode); - - - /* Example: get a handle to the _GPE scope */ - - Status = AcpiGetHandle (NULL, "\\_GPE", &Handle); - ACPI_CHECK_OK (AcpiGetHandle, Status); - - AcDeleteTableList (ListHead); - return (0); -} diff --git a/sys/external/bsd/acpica/dist/tools/acpinames/anstubs.c b/sys/external/bsd/acpica/dist/tools/acpinames/anstubs.c deleted file mode 100644 index ff0cded8e4f8..000000000000 --- a/sys/external/bsd/acpica/dist/tools/acpinames/anstubs.c +++ /dev/null @@ -1,400 +0,0 @@ -/****************************************************************************** - * - * Module Name: anstubs - Stub routines for the AcpiNames utility - * - *****************************************************************************/ - -/* - * Copyright (C) 2000 - 2020, Intel Corp. - * All rights reserved. - * - * 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. - * - * Alternatively, this software may be distributed under the terms of the - * GNU General Public License ("GPL") version 2 as published by the Free - * Software Foundation. - * - * NO WARRANTY - * 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 MERCHANTIBILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. - */ - -#include "acpinames.h" - -#include -#include -#include - -#define _COMPONENT ACPI_TOOLS - ACPI_MODULE_NAME ("anstubs") - - -/****************************************************************************** - * - * DESCRIPTION: Stubs used to facilitate linkage of the NsDump utility. - * - *****************************************************************************/ - - -/* Utilities */ - -#ifdef ACPI_OBSOLETE_FUNCTIONS - -ACPI_STATUS -AcpiUtCopyIobjectToEobject ( - ACPI_OPERAND_OBJECT *Obj, - ACPI_BUFFER *RetBuffer) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiUtCopyEobjectToIobject ( - ACPI_OBJECT *Obj, - ACPI_OPERAND_OBJECT **InternalObj) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiUtCopyIobjectToIobject ( - ACPI_OPERAND_OBJECT *SourceDesc, - ACPI_OPERAND_OBJECT **DestDesc, - ACPI_WALK_STATE *WalkState) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} -#endif - -/* Hardware */ - -UINT32 -AcpiHwGetMode ( - void) -{ - return (0); -} - -/* Event manager */ - -#ifdef ACPI_OBSOLETE_FUNCTIONS - -ACPI_STATUS -AcpiEvInstallRegionHandlers ( - void) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiEvInitializeOpRegions ( - void) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiEvInitializeRegion ( - ACPI_OPERAND_OBJECT *RegionObj) -{ - return (AE_OK); -} -#endif - -ACPI_STATUS -AcpiEvInstallXruptHandlers ( - void) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiEvInitializeEvents ( - void) -{ - return (AE_OK); -} - - -/* AML Interpreter */ - -#ifdef ACPI_OBSOLETE_FUNCTIONS - -ACPI_STATUS -AcpiExReadDataFromField ( - ACPI_WALK_STATE *WalkState, - ACPI_OPERAND_OBJECT *ObjDesc, - ACPI_OPERAND_OBJECT **RetBufferDesc) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiExWriteDataToField ( - ACPI_OPERAND_OBJECT *SourceDesc, - ACPI_OPERAND_OBJECT *ObjDesc, - ACPI_OPERAND_OBJECT **ResultDesc) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiExStoreObjectToNode ( - ACPI_OPERAND_OBJECT *SourceDesc, - ACPI_NAMESPACE_NODE *Node, - ACPI_WALK_STATE *WalkState, - UINT8 ImplicitConversion) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -/* Namespace manager */ - -ACPI_STATUS -AcpiNsEvaluate ( - ACPI_EVALUATE_INFO *Info) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} -#endif - -void -AcpiExDoDebugObject ( - ACPI_OPERAND_OBJECT *SourceDesc, - UINT32 Level, - UINT32 Index) -{ - return; -} - -void -AcpiExStartTraceMethod ( - ACPI_NAMESPACE_NODE *MethodNode, - ACPI_OPERAND_OBJECT *ObjDesc, - ACPI_WALK_STATE *WalkState) -{ - return; -} - -void -AcpiExStopTraceMethod ( - ACPI_NAMESPACE_NODE *MethodNode, - ACPI_OPERAND_OBJECT *ObjDesc, - ACPI_WALK_STATE *WalkState) -{ - return; -} - -void -AcpiExStartTraceOpcode ( - ACPI_PARSE_OBJECT *Op, - ACPI_WALK_STATE *WalkState) -{ - return; -} - -void -AcpiExStopTraceOpcode ( - ACPI_PARSE_OBJECT *Op, - ACPI_WALK_STATE *WalkState) - -{ - return; -} - -void -AcpiExTracePoint ( - ACPI_TRACE_EVENT_TYPE Type, - BOOLEAN Begin, - UINT8 *Aml, - char *Pathname) -{ - return; -} - - -/* Dispatcher */ - -#ifdef ACPI_OBSOLETE_FUNCTIONS - -ACPI_STATUS -AcpiDsAutoSerializeMethod ( - ACPI_NAMESPACE_NODE *Node, - ACPI_OPERAND_OBJECT *ObjDesc) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiDsInitializeRegion ( - ACPI_HANDLE ObjHandle) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiDsCallControlMethod ( - ACPI_THREAD_STATE *Thread, - ACPI_WALK_STATE *WalkState, - ACPI_PARSE_OBJECT *Op) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiDsRestartControlMethod ( - ACPI_WALK_STATE *WalkState, - ACPI_OPERAND_OBJECT *ReturnDesc) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -void -AcpiDsTerminateControlMethod ( - ACPI_OPERAND_OBJECT *MethodDesc, - ACPI_WALK_STATE *WalkState) -{ -} - -ACPI_STATUS -AcpiDsMethodError ( - ACPI_STATUS Status, - ACPI_WALK_STATE *WalkState) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiDsBeginMethodExecution ( - ACPI_NAMESPACE_NODE *MethodNode, - ACPI_OPERAND_OBJECT *ObjDesc, - ACPI_WALK_STATE *WalkState) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiDsGetPredicateValue ( - ACPI_WALK_STATE *WalkState, - ACPI_OPERAND_OBJECT *ResultObj) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} -#endif - -ACPI_STATUS -AcpiDsGetBufferFieldArguments ( - ACPI_OPERAND_OBJECT *ObjDesc) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiDsGetBankFieldArguments ( - ACPI_OPERAND_OBJECT *ObjDesc) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiDsGetRegionArguments ( - ACPI_OPERAND_OBJECT *RgnDesc) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiDsGetBufferArguments ( - ACPI_OPERAND_OBJECT *ObjDesc) -{ - return (AE_OK); -} - -ACPI_STATUS -AcpiDsGetPackageArguments ( - ACPI_OPERAND_OBJECT *ObjDesc) -{ - return (AE_OK); -} - -#ifdef ACPI_OBSOLETE_FUNCTIONS - -ACPI_STATUS -AcpiDsExecBeginOp ( - ACPI_WALK_STATE *WalkState, - ACPI_PARSE_OBJECT **OutOp) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} - -ACPI_STATUS -AcpiDsExecEndOp ( - ACPI_WALK_STATE *State) -{ - ACPI_EXCEPTION ((AE_INFO, AE_NOT_IMPLEMENTED, - "Stubbed function")); - - return (AE_NOT_IMPLEMENTED); -} -#endif diff --git a/sys/external/bsd/acpica/dist/tools/acpinames/antables.c b/sys/external/bsd/acpica/dist/tools/acpinames/antables.c deleted file mode 100644 index 0fc746b63c03..000000000000 --- a/sys/external/bsd/acpica/dist/tools/acpinames/antables.c +++ /dev/null @@ -1,356 +0,0 @@ -/****************************************************************************** - * - * Module Name: antables - ACPI table setup/install for AcpiNames utility - * - *****************************************************************************/ - -/* - * Copyright (C) 2000 - 2020, Intel Corp. - * All rights reserved. - * - * 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. - * - * Alternatively, this software may be distributed under the terms of the - * GNU General Public License ("GPL") version 2 as published by the Free - * Software Foundation. - * - * NO WARRANTY - * 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 MERCHANTIBILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES. - */ - -#include "acpinames.h" - -#define _COMPONENT ACPI_TOOLS - ACPI_MODULE_NAME ("antables") - -/* Local prototypes */ - -static void -AnInitializeTableHeader ( - ACPI_TABLE_HEADER *Header, - char *Signature, - UINT32 Length); - - -/* Non-AML tables that are constructed locally and installed */ - -static ACPI_TABLE_RSDP LocalRSDP; -static ACPI_TABLE_FACS LocalFACS; - -/* - * We need a local FADT so that the hardware subcomponent will function, - * even though the underlying OSD HW access functions don't do anything. - */ -static ACPI_TABLE_FADT LocalFADT; - -/* - * Use XSDT so that both 32- and 64-bit versions of this utility will - * function automatically. - */ -static ACPI_TABLE_XSDT *LocalXSDT; - -#define BASE_XSDT_TABLES 1 -#define BASE_XSDT_SIZE (sizeof (ACPI_TABLE_XSDT) + \ - ((BASE_XSDT_TABLES -1) * sizeof (UINT64))) - - -/****************************************************************************** - * - * FUNCTION: AnInitializeTableHeader - * - * PARAMETERS: Header - A valid standard ACPI table header - * Signature - Signature to insert - * Length - Length of the table - * - * RETURN: None. Header is modified. - * - * DESCRIPTION: Initialize the table header for a local ACPI table. - * - *****************************************************************************/ - -static void -AnInitializeTableHeader ( - ACPI_TABLE_HEADER *Header, - char *Signature, - UINT32 Length) -{ - - ACPI_COPY_NAMESEG (Header->Signature, Signature); - Header->Length = Length; - - Header->OemRevision = 0x1001; - memcpy (Header->OemId, "Intel ", ACPI_OEM_ID_SIZE); - memcpy (Header->OemTableId, "AcpiExec", ACPI_OEM_TABLE_ID_SIZE); - ACPI_COPY_NAMESEG (Header->AslCompilerId, "INTL"); - Header->AslCompilerRevision = ACPI_CA_VERSION; - - /* Set the checksum, must set to zero first */ - - Header->Checksum = 0; - Header->Checksum = (UINT8) -AcpiTbChecksum ( - (void *) Header, Header->Length); -} - - -/****************************************************************************** - * - * FUNCTION: AnBuildLocalTables - * - * PARAMETERS: TableCount - Number of tables on the command line - * TableList - List of actual tables from files - * - * RETURN: Status - * - * DESCRIPTION: Build a complete ACPI table chain, with a local RSDP, XSDT, - * FADT, FACS, and the input DSDT/SSDT. - * - *****************************************************************************/ - -ACPI_STATUS -AnBuildLocalTables ( - ACPI_NEW_TABLE_DESC *TableList) -{ - UINT32 TableCount = 0; - ACPI_PHYSICAL_ADDRESS DsdtAddress = 0; - UINT32 XsdtSize; - ACPI_NEW_TABLE_DESC *NextTable; - UINT32 NextIndex; - ACPI_TABLE_FADT *ExternalFadt = NULL; - - - /* - * Update the table count. For the DSDT, it is not put into the XSDT. - * For the FADT, this table is already accounted for since we usually - * install a local FADT. - */ - NextTable = TableList; - while (NextTable) - { - if (!ACPI_COMPARE_NAMESEG (NextTable->Table->Signature, ACPI_SIG_DSDT) && - !ACPI_COMPARE_NAMESEG (NextTable->Table->Signature, ACPI_SIG_FADT)) - { - TableCount++; - } - - NextTable = NextTable->Next; - } - - XsdtSize = BASE_XSDT_SIZE + (TableCount * sizeof (UINT64)); - - /* Build an XSDT */ - - LocalXSDT = AcpiOsAllocate (XsdtSize); - if (!LocalXSDT) - { - return (AE_NO_MEMORY); - } - - memset (LocalXSDT, 0, XsdtSize); - LocalXSDT->TableOffsetEntry[0] = ACPI_PTR_TO_PHYSADDR (&LocalFADT); - - /* - * Install the user tables. The DSDT must be installed in the FADT. - * All other tables are installed directly into the XSDT. - * - * Note: The tables are loaded in reverse order from the incoming - * input, which makes it match the command line order. - */ - NextIndex = BASE_XSDT_TABLES; - NextTable = TableList; - while (NextTable) - { - /* - * Incoming DSDT or FADT are special cases. All other tables are - * just immediately installed into the XSDT. - */ - if (ACPI_COMPARE_NAMESEG (NextTable->Table->Signature, ACPI_SIG_DSDT)) - { - if (DsdtAddress) - { - printf ("Already found a DSDT, only one allowed\n"); - return (AE_ALREADY_EXISTS); - } - - /* The incoming user table is a DSDT */ - - DsdtAddress = ACPI_PTR_TO_PHYSADDR (NextTable->Table); - } - else if (ACPI_COMPARE_NAMESEG (NextTable->Table->Signature, ACPI_SIG_FADT)) - { - ExternalFadt = - ACPI_CAST_PTR (ACPI_TABLE_FADT, NextTable->Table); - LocalXSDT->TableOffsetEntry[0] = - ACPI_PTR_TO_PHYSADDR (NextTable->Table); - } - else - { - /* Install the table in the XSDT */ - - LocalXSDT->TableOffsetEntry[TableCount - NextIndex + 1] = - ACPI_PTR_TO_PHYSADDR (NextTable->Table); - NextIndex++; - } - - NextTable = NextTable->Next; - } - - /* Build an RSDP. Contains a valid XSDT only, no RSDT */ - - memset (&LocalRSDP, 0, sizeof (ACPI_TABLE_RSDP)); - ACPI_MAKE_RSDP_SIG (LocalRSDP.Signature); - memcpy (LocalRSDP.OemId, "Intel", 6); - - LocalRSDP.Revision = 2; - LocalRSDP.XsdtPhysicalAddress = ACPI_PTR_TO_PHYSADDR (LocalXSDT); - LocalRSDP.Length = sizeof (ACPI_TABLE_XSDT); - - /* Set checksums for both XSDT and RSDP */ - - AnInitializeTableHeader ((void *) LocalXSDT, ACPI_SIG_XSDT, XsdtSize); - - LocalRSDP.Checksum = 0; - LocalRSDP.Checksum = (UINT8) -AcpiTbChecksum ( - (void *) &LocalRSDP, ACPI_RSDP_CHECKSUM_LENGTH); - - if (!DsdtAddress) - { - return (AE_SUPPORT); - } - - /* - * Build an FADT. There are two options for the FADT: - * 1) Incoming external FADT specified on the command line - * 2) A fully featured local FADT - */ - memset (&LocalFADT, 0, sizeof (ACPI_TABLE_FADT)); - - if (ExternalFadt) - { - /* - * Use the external FADT, but we must update the DSDT/FACS - * addresses as well as the checksum - */ - ExternalFadt->Dsdt = (UINT32) DsdtAddress; - ExternalFadt->Facs = ACPI_PTR_TO_PHYSADDR (&LocalFACS); - - /* - * If there room in the FADT for the XDsdt and XFacs 64-bit - * pointers, use them. - */ - if (ExternalFadt->Header.Length > ACPI_PTR_DIFF ( - &ExternalFadt->XDsdt, ExternalFadt)) - { - ExternalFadt->Dsdt = 0; - ExternalFadt->Facs = 0; - ExternalFadt->XDsdt = DsdtAddress; - ExternalFadt->XFacs = ACPI_PTR_TO_PHYSADDR (&LocalFACS); - } - - /* Complete the external FADT with the checksum */ - - ExternalFadt->Header.Checksum = 0; - ExternalFadt->Header.Checksum = (UINT8) -AcpiTbChecksum ( - (void *) ExternalFadt, ExternalFadt->Header.Length); - } - else - { - /* - * Build a local FADT so we can test the hardware/event init - */ - LocalFADT.Header.Revision = 5; - - /* Setup FADT header and DSDT/FACS addresses */ - - LocalFADT.Dsdt = 0; - LocalFADT.Facs = 0; - - LocalFADT.XDsdt = DsdtAddress; - LocalFADT.XFacs = ACPI_PTR_TO_PHYSADDR (&LocalFACS); - - /* Miscellaneous FADT fields */ - - LocalFADT.Gpe0BlockLength = 16; - LocalFADT.Gpe0Block = 0x00001234; - - LocalFADT.Gpe1BlockLength = 6; - LocalFADT.Gpe1Block = 0x00005678; - LocalFADT.Gpe1Base = 96; - - LocalFADT.Pm1EventLength = 4; - LocalFADT.Pm1aEventBlock = 0x00001aaa; - LocalFADT.Pm1bEventBlock = 0x00001bbb; - - LocalFADT.Pm1ControlLength = 2; - LocalFADT.Pm1aControlBlock = 0xB0; - - LocalFADT.PmTimerLength = 4; - LocalFADT.PmTimerBlock = 0xA0; - - LocalFADT.Pm2ControlBlock = 0xC0; - LocalFADT.Pm2ControlLength = 1; - - /* Setup one example X-64 field */ - - LocalFADT.XPm1bEventBlock.SpaceId = ACPI_ADR_SPACE_SYSTEM_IO; - LocalFADT.XPm1bEventBlock.Address = LocalFADT.Pm1bEventBlock; - LocalFADT.XPm1bEventBlock.BitWidth = (UINT8) - ACPI_MUL_8 (LocalFADT.Pm1EventLength); - } - - AnInitializeTableHeader ((void *) &LocalFADT, - ACPI_SIG_FADT, sizeof (ACPI_TABLE_FADT)); - - /* Build a FACS */ - - memset (&LocalFACS, 0, sizeof (ACPI_TABLE_FACS)); - ACPI_COPY_NAMESEG (LocalFACS.Signature, ACPI_SIG_FACS); - - LocalFACS.Length = sizeof (ACPI_TABLE_FACS); - LocalFACS.GlobalLock = 0x11AA0011; - return (AE_OK); -} - - -/****************************************************************************** - * - * FUNCTION: AcpiOsGetRootPointer - * - * PARAMETERS: None - * - * RETURN: Address of the RSDP - * - * DESCRIPTION: Return a local RSDP, used to dynamically load tables via the - * standard ACPI mechanism. - * - *****************************************************************************/ - -ACPI_PHYSICAL_ADDRESS -AcpiOsGetRootPointer ( - void) -{ - - return (ACPI_PTR_TO_PHYSADDR (&LocalRSDP)); -} diff --git a/sys/external/bsd/acpica/dist/utilities/utdecode.c b/sys/external/bsd/acpica/dist/utilities/utdecode.c index 5726f2f15e51..3c8550033a84 100644 --- a/sys/external/bsd/acpica/dist/utilities/utdecode.c +++ b/sys/external/bsd/acpica/dist/utilities/utdecode.c @@ -106,17 +106,18 @@ const UINT8 AcpiGbl_NsProperties[ACPI_NUM_NS_TYPES] = const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS] = { - "SystemMemory", /* 0x00 */ - "SystemIO", /* 0x01 */ - "PCI_Config", /* 0x02 */ - "EmbeddedControl", /* 0x03 */ - "SMBus", /* 0x04 */ - "SystemCMOS", /* 0x05 */ - "PCIBARTarget", /* 0x06 */ - "IPMI", /* 0x07 */ - "GeneralPurposeIo", /* 0x08 */ - "GenericSerialBus", /* 0x09 */ - "PCC" /* 0x0A */ + "SystemMemory", /* 0x00 */ + "SystemIO", /* 0x01 */ + "PCI_Config", /* 0x02 */ + "EmbeddedControl", /* 0x03 */ + "SMBus", /* 0x04 */ + "SystemCMOS", /* 0x05 */ + "PCIBARTarget", /* 0x06 */ + "IPMI", /* 0x07 */ + "GeneralPurposeIo", /* 0x08 */ + "GenericSerialBus", /* 0x09 */ + "PCC", /* 0x0A */ + "PlatformRtMechanism" /* 0x0B */ }; diff --git a/sys/external/bsd/acpica/dist/utilities/utdelete.c b/sys/external/bsd/acpica/dist/utilities/utdelete.c index e5fca9967dae..b0d1ea381126 100644 --- a/sys/external/bsd/acpica/dist/utilities/utdelete.c +++ b/sys/external/bsd/acpica/dist/utilities/utdelete.c @@ -641,11 +641,6 @@ AcpiUtUpdateObjectReference ( NextObject = Object->BufferField.BufferObj; break; - case ACPI_TYPE_LOCAL_REGION_FIELD: - - NextObject = Object->Field.RegionObj; - break; - case ACPI_TYPE_LOCAL_BANK_FIELD: NextObject = Object->BankField.BankObj; @@ -681,6 +676,7 @@ AcpiUtUpdateObjectReference ( } break; + case ACPI_TYPE_LOCAL_REGION_FIELD: case ACPI_TYPE_REGION: default: