svn commit: r271440 - in vendor-sys/acpica/dist: . generate/unix generate/unix/acpiexamples generate/unix/acpiexec generate/unix/acpihelp generate/unix/acpinames generate/unix/iasl source/common so...
Jung-uk Kim
jkim at FreeBSD.org
Thu Sep 11 21:38:14 UTC 2014
Author: jkim
Date: Thu Sep 11 21:38:09 2014
New Revision: 271440
URL: http://svnweb.freebsd.org/changeset/base/271440
Log:
Import ACPICA 20140828.
Added:
vendor-sys/acpica/dist/source/common/ahuuids.c (contents, props changed)
vendor-sys/acpica/dist/source/compiler/aslascii.c (contents, props changed)
vendor-sys/acpica/dist/source/compiler/aslparser.y (contents, props changed)
vendor-sys/acpica/dist/source/compiler/aslrules.y (contents, props changed)
vendor-sys/acpica/dist/source/compiler/aslsupport.y (contents, props changed)
vendor-sys/acpica/dist/source/compiler/asltokens.y (contents, props changed)
vendor-sys/acpica/dist/source/compiler/asltypes.y (contents, props changed)
vendor-sys/acpica/dist/source/components/utilities/uthex.c (contents, props changed)
vendor-sys/acpica/dist/source/components/utilities/utuuid.c (contents, props changed)
Deleted:
vendor-sys/acpica/dist/source/compiler/aslcompiler.y
Modified:
vendor-sys/acpica/dist/changes.txt
vendor-sys/acpica/dist/generate/unix/Makefile.config
vendor-sys/acpica/dist/generate/unix/acpiexamples/Makefile
vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile
vendor-sys/acpica/dist/generate/unix/acpihelp/Makefile
vendor-sys/acpica/dist/generate/unix/acpinames/Makefile
vendor-sys/acpica/dist/generate/unix/iasl/Makefile
vendor-sys/acpica/dist/source/common/adfile.c
vendor-sys/acpica/dist/source/common/adisasm.c
vendor-sys/acpica/dist/source/common/adwalk.c
vendor-sys/acpica/dist/source/common/ahids.c
vendor-sys/acpica/dist/source/common/ahpredef.c
vendor-sys/acpica/dist/source/common/dmextern.c
vendor-sys/acpica/dist/source/common/dmrestag.c
vendor-sys/acpica/dist/source/common/dmtable.c
vendor-sys/acpica/dist/source/common/dmtbdump.c
vendor-sys/acpica/dist/source/common/dmtbinfo.c
vendor-sys/acpica/dist/source/compiler/aslanalyze.c
vendor-sys/acpica/dist/source/compiler/aslbtypes.c
vendor-sys/acpica/dist/source/compiler/aslcodegen.c
vendor-sys/acpica/dist/source/compiler/aslcompile.c
vendor-sys/acpica/dist/source/compiler/aslcompiler.h
vendor-sys/acpica/dist/source/compiler/aslcompiler.l
vendor-sys/acpica/dist/source/compiler/asldefine.h
vendor-sys/acpica/dist/source/compiler/aslerror.c
vendor-sys/acpica/dist/source/compiler/aslfileio.c
vendor-sys/acpica/dist/source/compiler/aslfiles.c
vendor-sys/acpica/dist/source/compiler/aslfold.c
vendor-sys/acpica/dist/source/compiler/aslglobal.h
vendor-sys/acpica/dist/source/compiler/aslhex.c
vendor-sys/acpica/dist/source/compiler/asllength.c
vendor-sys/acpica/dist/source/compiler/aslload.c
vendor-sys/acpica/dist/source/compiler/asllookup.c
vendor-sys/acpica/dist/source/compiler/aslmain.c
vendor-sys/acpica/dist/source/compiler/aslmessages.c
vendor-sys/acpica/dist/source/compiler/aslmessages.h
vendor-sys/acpica/dist/source/compiler/aslmethod.c
vendor-sys/acpica/dist/source/compiler/aslnamesp.c
vendor-sys/acpica/dist/source/compiler/aslopcodes.c
vendor-sys/acpica/dist/source/compiler/asloperands.c
vendor-sys/acpica/dist/source/compiler/aslopt.c
vendor-sys/acpica/dist/source/compiler/aslprepkg.c
vendor-sys/acpica/dist/source/compiler/aslresource.c
vendor-sys/acpica/dist/source/compiler/aslrestype1.c
vendor-sys/acpica/dist/source/compiler/aslrestype1i.c
vendor-sys/acpica/dist/source/compiler/aslrestype2.c
vendor-sys/acpica/dist/source/compiler/aslrestype2d.c
vendor-sys/acpica/dist/source/compiler/aslrestype2e.c
vendor-sys/acpica/dist/source/compiler/aslrestype2q.c
vendor-sys/acpica/dist/source/compiler/aslrestype2s.c
vendor-sys/acpica/dist/source/compiler/aslrestype2w.c
vendor-sys/acpica/dist/source/compiler/aslstartup.c
vendor-sys/acpica/dist/source/compiler/aslsupport.l
vendor-sys/acpica/dist/source/compiler/asltransform.c
vendor-sys/acpica/dist/source/compiler/asltree.c
vendor-sys/acpica/dist/source/compiler/asltypes.h
vendor-sys/acpica/dist/source/compiler/aslutils.c
vendor-sys/acpica/dist/source/compiler/asluuid.c
vendor-sys/acpica/dist/source/compiler/aslwalks.c
vendor-sys/acpica/dist/source/compiler/aslxref.c
vendor-sys/acpica/dist/source/compiler/dtcompile.c
vendor-sys/acpica/dist/source/compiler/dtcompiler.h
vendor-sys/acpica/dist/source/compiler/dtfield.c
vendor-sys/acpica/dist/source/compiler/dtio.c
vendor-sys/acpica/dist/source/compiler/dtsubtable.c
vendor-sys/acpica/dist/source/compiler/dttable.c
vendor-sys/acpica/dist/source/compiler/dttemplate.c
vendor-sys/acpica/dist/source/compiler/dttemplate.h
vendor-sys/acpica/dist/source/compiler/dtutils.c
vendor-sys/acpica/dist/source/compiler/prutils.c
vendor-sys/acpica/dist/source/components/debugger/dbcmds.c
vendor-sys/acpica/dist/source/components/debugger/dbconvert.c
vendor-sys/acpica/dist/source/components/debugger/dbdisply.c
vendor-sys/acpica/dist/source/components/debugger/dbexec.c
vendor-sys/acpica/dist/source/components/debugger/dbfileio.c
vendor-sys/acpica/dist/source/components/debugger/dbhistry.c
vendor-sys/acpica/dist/source/components/debugger/dbinput.c
vendor-sys/acpica/dist/source/components/debugger/dbmethod.c
vendor-sys/acpica/dist/source/components/debugger/dbnames.c
vendor-sys/acpica/dist/source/components/debugger/dbstats.c
vendor-sys/acpica/dist/source/components/debugger/dbutils.c
vendor-sys/acpica/dist/source/components/debugger/dbxface.c
vendor-sys/acpica/dist/source/components/disassembler/dmbuffer.c
vendor-sys/acpica/dist/source/components/disassembler/dmdeferred.c
vendor-sys/acpica/dist/source/components/disassembler/dmnames.c
vendor-sys/acpica/dist/source/components/disassembler/dmobject.c
vendor-sys/acpica/dist/source/components/disassembler/dmopcode.c
vendor-sys/acpica/dist/source/components/disassembler/dmresrc.c
vendor-sys/acpica/dist/source/components/disassembler/dmresrcl.c
vendor-sys/acpica/dist/source/components/disassembler/dmresrcl2.c
vendor-sys/acpica/dist/source/components/disassembler/dmresrcs.c
vendor-sys/acpica/dist/source/components/disassembler/dmutils.c
vendor-sys/acpica/dist/source/components/disassembler/dmwalk.c
vendor-sys/acpica/dist/source/components/dispatcher/dswstate.c
vendor-sys/acpica/dist/source/components/events/evgpe.c
vendor-sys/acpica/dist/source/components/events/evgpeinit.c
vendor-sys/acpica/dist/source/components/events/evhandler.c
vendor-sys/acpica/dist/source/components/events/evregion.c
vendor-sys/acpica/dist/source/components/events/evrgnini.c
vendor-sys/acpica/dist/source/components/events/evxface.c
vendor-sys/acpica/dist/source/components/events/evxfevnt.c
vendor-sys/acpica/dist/source/components/events/evxfgpe.c
vendor-sys/acpica/dist/source/components/executer/exconvrt.c
vendor-sys/acpica/dist/source/components/executer/exdebug.c
vendor-sys/acpica/dist/source/components/executer/exdump.c
vendor-sys/acpica/dist/source/components/executer/exfield.c
vendor-sys/acpica/dist/source/components/executer/exfldio.c
vendor-sys/acpica/dist/source/components/executer/exoparg2.c
vendor-sys/acpica/dist/source/components/executer/exregion.c
vendor-sys/acpica/dist/source/components/namespace/nsalloc.c
vendor-sys/acpica/dist/source/components/namespace/nsinit.c
vendor-sys/acpica/dist/source/components/namespace/nsobject.c
vendor-sys/acpica/dist/source/components/namespace/nsprepkg.c
vendor-sys/acpica/dist/source/components/namespace/nswalk.c
vendor-sys/acpica/dist/source/components/namespace/nsxfeval.c
vendor-sys/acpica/dist/source/components/namespace/nsxfobj.c
vendor-sys/acpica/dist/source/components/parser/psloop.c
vendor-sys/acpica/dist/source/components/parser/psobject.c
vendor-sys/acpica/dist/source/components/parser/psopcode.c
vendor-sys/acpica/dist/source/components/parser/psopinfo.c
vendor-sys/acpica/dist/source/components/parser/psparse.c
vendor-sys/acpica/dist/source/components/parser/psscope.c
vendor-sys/acpica/dist/source/components/parser/pstree.c
vendor-sys/acpica/dist/source/components/parser/psutils.c
vendor-sys/acpica/dist/source/components/parser/pswalk.c
vendor-sys/acpica/dist/source/components/resources/rsdump.c
vendor-sys/acpica/dist/source/components/resources/rsdumpinfo.c
vendor-sys/acpica/dist/source/components/resources/rsutils.c
vendor-sys/acpica/dist/source/components/resources/rsxface.c
vendor-sys/acpica/dist/source/components/utilities/utclib.c
vendor-sys/acpica/dist/source/components/utilities/utdecode.c
vendor-sys/acpica/dist/source/components/utilities/utexcep.c
vendor-sys/acpica/dist/source/components/utilities/utfileio.c
vendor-sys/acpica/dist/source/components/utilities/utinit.c
vendor-sys/acpica/dist/source/components/utilities/utmath.c
vendor-sys/acpica/dist/source/components/utilities/utmisc.c
vendor-sys/acpica/dist/source/components/utilities/utmutex.c
vendor-sys/acpica/dist/source/components/utilities/utownerid.c
vendor-sys/acpica/dist/source/components/utilities/utprint.c
vendor-sys/acpica/dist/source/components/utilities/utresrc.c
vendor-sys/acpica/dist/source/components/utilities/utstate.c
vendor-sys/acpica/dist/source/components/utilities/utstring.c
vendor-sys/acpica/dist/source/components/utilities/utxface.c
vendor-sys/acpica/dist/source/components/utilities/utxfinit.c
vendor-sys/acpica/dist/source/include/acconfig.h
vendor-sys/acpica/dist/source/include/acdisasm.h
vendor-sys/acpica/dist/source/include/acdispat.h
vendor-sys/acpica/dist/source/include/aclocal.h
vendor-sys/acpica/dist/source/include/acnames.h
vendor-sys/acpica/dist/source/include/acparser.h
vendor-sys/acpica/dist/source/include/acpixf.h
vendor-sys/acpica/dist/source/include/acpredef.h
vendor-sys/acpica/dist/source/include/actbl.h
vendor-sys/acpica/dist/source/include/actbl1.h
vendor-sys/acpica/dist/source/include/actbl2.h
vendor-sys/acpica/dist/source/include/actbl3.h
vendor-sys/acpica/dist/source/include/actypes.h
vendor-sys/acpica/dist/source/include/acutils.h
vendor-sys/acpica/dist/source/include/platform/achaiku.h
vendor-sys/acpica/dist/source/include/platform/aclinux.h
vendor-sys/acpica/dist/source/include/platform/aclinuxex.h
vendor-sys/acpica/dist/source/include/platform/acmsvc.h
vendor-sys/acpica/dist/source/os_specific/service_layers/osefixf.c
vendor-sys/acpica/dist/source/os_specific/service_layers/oslibcfs.c
vendor-sys/acpica/dist/source/os_specific/service_layers/osunixxf.c
vendor-sys/acpica/dist/source/os_specific/service_layers/oswintbl.c
vendor-sys/acpica/dist/source/os_specific/service_layers/oswinxf.c
vendor-sys/acpica/dist/source/tools/acpibin/abmain.c
vendor-sys/acpica/dist/source/tools/acpidump/acpidump.h
vendor-sys/acpica/dist/source/tools/acpiexec/aehandlers.c
vendor-sys/acpica/dist/source/tools/acpiexec/aemain.c
vendor-sys/acpica/dist/source/tools/acpihelp/acpihelp.h
vendor-sys/acpica/dist/source/tools/acpihelp/ahdecode.c
vendor-sys/acpica/dist/source/tools/acpihelp/ahmain.c
vendor-sys/acpica/dist/source/tools/acpisrc/acpisrc.h
vendor-sys/acpica/dist/source/tools/acpisrc/asconvrt.c
vendor-sys/acpica/dist/source/tools/acpisrc/asmain.c
vendor-sys/acpica/dist/source/tools/acpisrc/astable.c
vendor-sys/acpica/dist/source/tools/acpisrc/asutils.c
Modified: vendor-sys/acpica/dist/changes.txt
==============================================================================
--- vendor-sys/acpica/dist/changes.txt Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/changes.txt Thu Sep 11 21:38:09 2014 (r271440)
@@ -1,4 +1,159 @@
----------------------------------------
+28 August 2014. Summary of changes for version 20140828:
+
+1) ACPICA kernel-resident subsystem:
+
+Fixed a problem related to the internal use of the Timer() operator where
+a 64-bit divide could cause an attempted link to a double-precision math
+library. This divide is not actually necessary, so the code was
+restructured to eliminate it. Lv Zheng.
+
+ACPI 5.1: Added support for the runtime validation of the _DSD package
+(similar to the iASL support).
+
+ACPI 5.1/Headers: Added support for the GICC affinity subtable to the
+SRAT table. Hanjun Guo <hanjun.guo at linaro.org>.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The
+debug version of the code includes the debug output trace mechanism and
+has a much larger code and data size.
+
+ Current Release:
+ Non-Debug Version: 98.8K Code, 27.3K Data, 126.1K Total
+ Debug Version: 192.1K Code, 79.8K Data, 271.9K Total
+ Previous Release:
+ Non-Debug Version: 98.7K Code, 27.3K Data, 126.0K Total1
+ Debug Version: 192.0K Code, 79.7K Data, 271.7K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+AcpiExec: Fixed a problem on unix systems where the original terminal
+state was not always properly restored upon exit. Seen when using the -v
+option. ACPICA BZ 1104.
+
+iASL: Fixed a problem with the validation of the ranges/length within the
+Memory24 resource descriptor. There was a boundary condition when the
+range was equal to the (length -1) caused by the fact that these values
+are defined in 256-byte blocks, not bytes. ACPICA BZ 1098
+
+Disassembler: Fixed a problem with the GpioInt descriptor interrupt polarity
+flags. The flags are actually 2 bits, not 1, and the "ActiveBoth" keyword is
+now supported properly.
+
+ACPI 5.1: Added the GICC affinity subtable to the SRAT table. Supported
+in the disassembler, data table compiler, and table template generator.
+
+iASL: Added a requirement for Device() objects that one of either a _HID
+or _ADR must exist within the scope of a Device, as per the ACPI
+specification. Remove a similar requirement that was incorrectly in place
+for the _DSD object.
+
+iASL: Added error detection for illegal named references within control
+methods that would cause runtime failures. Now trapped as errors are: 1)
+References to objects within a non-parent control method. 2) Forward
+references (within a method) -- for control methods, AML interpreters use
+a one-pass parse of control methods. ACPICA BZ 1008.
+
+iASL: Added error checking for dependencies related to the _PSx power
+methods. ACPICA BZ 1029.
+1) For _PS0, one of these must exist within the same scope: _PS1, _PS2,
+_PS3.
+2) For _PS1, _PS2, and PS3: A _PS0 object must exist within the same
+scope.
+
+iASL and table compiler: Cleanup miscellaneous memory leaks by fully
+deploying the existing object and string caches and adding new caches for
+the table compiler.
+
+iASL: Split the huge parser source file into multiple subfiles to improve
+manageability. Generation now requires the M4 macro preprocessor, which
+is part of the Bison distribution on both unix and windows platforms.
+
+AcpiSrc: Fixed and removed all extraneous warnings generated during
+entire ACPICA source code scan and/or conversion.
+
+
+----------------------------------------
+
+24 July 2014. Summary of changes for version 20140724:
+
+The ACPI 5.1 specification has been released and is available at:
+http://uefi.org/specs/access
+
+
+0) ACPI 5.1 support in ACPICA:
+
+ACPI 5.1 is fully supported in ACPICA as of this release.
+
+New predefined names. Support includes iASL and runtime ACPICA
+validation.
+ _CCA (Cache Coherency Attribute).
+ _DSD (Device-Specific Data). David Box.
+
+Modifications to existing ACPI tables. Support includes headers, iASL
+Data Table compiler, disassembler, and the template generator.
+ FADT - New fields and flags. Graeme Gregory.
+ GTDT - One new subtable and new fields. Tomasz Nowicki.
+ MADT - Two new subtables. Tomasz Nowicki.
+ PCCT - One new subtable.
+
+Miscellaneous.
+ New notification type for System Resource Affinity change events.
+
+
+1) ACPICA kernel-resident subsystem:
+
+Fixed a regression introduced in 20140627 where a fault can happen during
+the deletion of Alias AML namespace objects. The problem affected both
+the core ACPICA and the ACPICA tools including iASL and AcpiExec.
+
+Implemented a new GPE public interface, AcpiMarkGpeForWake. Provides a
+simple mechanism to enable wake GPEs that have no associated handler or
+control method. Rafael Wysocki.
+
+Updated the AcpiEnableGpe interface to disallow the enable if there is no
+handler or control method associated with the particular GPE. This will
+help avoid meaningless GPEs and even GPE floods. Rafael Wysocki.
+
+Updated GPE handling and dispatch by disabling the GPE before clearing
+the status bit for edge-triggered GPEs. Lv Zheng.
+
+Added Timer() support to the AML Debug object. The current timer value is
+now displayed with each invocation of (Store to) the debug object to
+enable simple generation of execution times for AML code (method
+execution for example.) ACPICA BZ 1093.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The
+debug version of the code includes the debug output trace mechanism and
+has a much larger code and data size.
+
+ Current Release:
+ Non-Debug Version: 98.7K Code, 27.3K Data, 126.0K Total
+ Debug Version: 192.0K Code, 79.7K Data, 271.7K Total
+ Previous Release:
+ Non-Debug Version: 98.7K Code, 27.2K Data, 125.9K Total
+ Debug Version: 191.7K Code, 79.6K Data, 271.3K Total
+
+
+2) iASL Compiler/Disassembler and Tools:
+
+Fixed an issue with the recently added local printf implementation,
+concerning width/precision specifiers that could cause incorrect output.
+Lv Zheng. ACPICA BZ 1094.
+
+Disassembler: Added support to detect buffers that contain UUIDs and
+disassemble them to an invocation of the ToUUID operator. Also emit
+commented descriptions of known ACPI-related UUIDs.
+
+AcpiHelp: Added support to display known ACPI-related UUIDs. New option,
+-u. Adds three new files.
+
+iASL: Update table compiler and disassembler for DMAR table changes that
+were introduced in September 2013. With assistance by David Woodhouse.
+
+----------------------------------------
27 June 2014. Summary of changes for version 20140627:
1) ACPICA kernel-resident subsystem:
Modified: vendor-sys/acpica/dist/generate/unix/Makefile.config
==============================================================================
--- vendor-sys/acpica/dist/generate/unix/Makefile.config Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/generate/unix/Makefile.config Thu Sep 11 21:38:09 2014 (r271440)
@@ -207,6 +207,8 @@ endif
# -Wshadow\
#
+# M4 macro processor is used to build the final parser file
+#
# Bison/Flex configuration
#
# -y: act like yacc
@@ -226,6 +228,9 @@ endif
YACC= bison
YFLAGS += -y
+MACROPROC= m4
+MFLAGS= -P -I$(ASL_COMPILER)
+
LEX= flex
LFLAGS += -i -s
Modified: vendor-sys/acpica/dist/generate/unix/acpiexamples/Makefile
==============================================================================
--- vendor-sys/acpica/dist/generate/unix/acpiexamples/Makefile Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/generate/unix/acpiexamples/Makefile Thu Sep 11 21:38:09 2014 (r271440)
@@ -138,6 +138,7 @@ OBJECTS = \
$(OBJDIR)/uteval.o\
$(OBJDIR)/utexcep.o\
$(OBJDIR)/utglobal.o\
+ $(OBJDIR)/uthex.o\
$(OBJDIR)/utids.o\
$(OBJDIR)/utinit.o\
$(OBJDIR)/utlock.o\
Modified: vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile
==============================================================================
--- vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/generate/unix/acpiexec/Makefile Thu Sep 11 21:38:09 2014 (r271440)
@@ -45,6 +45,7 @@ OBJECTS = \
$(OBJDIR)/aemain.o\
$(OBJDIR)/aetables.o\
$(OBJDIR)/ahids.o\
+ $(OBJDIR)/ahuuids.o\
$(OBJDIR)/cmfsize.o\
$(OBJDIR)/dbcmds.o\
$(OBJDIR)/dbconvert.o\
@@ -204,6 +205,7 @@ OBJECTS = \
$(OBJDIR)/utexcep.o\
$(OBJDIR)/utfileio.o\
$(OBJDIR)/utglobal.o\
+ $(OBJDIR)/uthex.o\
$(OBJDIR)/utids.o\
$(OBJDIR)/utinit.o\
$(OBJDIR)/utlock.o\
@@ -219,6 +221,7 @@ OBJECTS = \
$(OBJDIR)/utstate.o\
$(OBJDIR)/utstring.o\
$(OBJDIR)/uttrack.o\
+ $(OBJDIR)/utuuid.o\
$(OBJDIR)/utxface.o\
$(OBJDIR)/utxferror.o\
$(OBJDIR)/utxfinit.o\
Modified: vendor-sys/acpica/dist/generate/unix/acpihelp/Makefile
==============================================================================
--- vendor-sys/acpica/dist/generate/unix/acpihelp/Makefile Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/generate/unix/acpihelp/Makefile Thu Sep 11 21:38:09 2014 (r271440)
@@ -35,15 +35,18 @@ OBJECTS = \
$(OBJDIR)/ahids.o\
$(OBJDIR)/ahpredef.o\
$(OBJDIR)/ahmain.o\
+ $(OBJDIR)/ahuuids.o\
$(OBJDIR)/getopt.o\
$(OBJDIR)/oslibcfs.o\
$(OBJDIR)/osunixxf.o\
$(OBJDIR)/utdebug.o\
$(OBJDIR)/utexcep.o\
$(OBJDIR)/utglobal.o\
+ $(OBJDIR)/uthex.o\
$(OBJDIR)/utmath.o\
$(OBJDIR)/utpredef.o\
- $(OBJDIR)/utprint.o
+ $(OBJDIR)/utprint.o\
+ $(OBJDIR)/utuuid.o
#
# Flags specific to acpihelp
Modified: vendor-sys/acpica/dist/generate/unix/acpinames/Makefile
==============================================================================
--- vendor-sys/acpica/dist/generate/unix/acpinames/Makefile Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/generate/unix/acpinames/Makefile Thu Sep 11 21:38:09 2014 (r271440)
@@ -103,6 +103,7 @@ OBJECTS = \
$(OBJDIR)/utexcep.o\
$(OBJDIR)/utfileio.o\
$(OBJDIR)/utglobal.o\
+ $(OBJDIR)/uthex.o\
$(OBJDIR)/utids.o\
$(OBJDIR)/utinit.o\
$(OBJDIR)/utlock.o\
Modified: vendor-sys/acpica/dist/generate/unix/iasl/Makefile
==============================================================================
--- vendor-sys/acpica/dist/generate/unix/iasl/Makefile Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/generate/unix/iasl/Makefile Thu Sep 11 21:38:09 2014 (r271440)
@@ -48,7 +48,9 @@ OBJECTS = \
$(OBJDIR)/adwalk.o\
$(OBJDIR)/ahids.o\
$(OBJDIR)/ahpredef.o\
+ $(OBJDIR)/ahuuids.o\
$(OBJDIR)/aslanalyze.o\
+ $(OBJDIR)/aslascii.o\
$(OBJDIR)/aslbtypes.o\
$(OBJDIR)/aslcodegen.o\
$(OBJDIR)/aslcompile.o\
@@ -193,6 +195,7 @@ OBJECTS = \
$(OBJDIR)/utexcep.o\
$(OBJDIR)/utfileio.o\
$(OBJDIR)/utglobal.o\
+ $(OBJDIR)/uthex.o\
$(OBJDIR)/utinit.o\
$(OBJDIR)/utlock.o\
$(OBJDIR)/utmath.o\
@@ -205,10 +208,12 @@ OBJECTS = \
$(OBJDIR)/utresrc.o\
$(OBJDIR)/utstate.o\
$(OBJDIR)/utstring.o\
+ $(OBJDIR)/utuuid.o\
$(OBJDIR)/utxface.o\
$(OBJDIR)/utxferror.o
INTERMEDIATES = \
+ $(OBJDIR)/aslcompiler.y\
$(OBJDIR)/aslcompilerlex.c\
$(OBJDIR)/aslcompilerparse.c\
$(OBJDIR)/dtparserlex.c\
@@ -221,6 +226,18 @@ MISC = \
$(OBJDIR)/dtparser.y.h\
$(OBJDIR)/prparser.y.h
+ASL_PARSER = \
+ $(ASL_COMPILER)/aslparser.y\
+ $(ASL_COMPILER)/asltokens.y\
+ $(ASL_COMPILER)/asltypes.y\
+ $(ASL_COMPILER)/aslrules.y
+
+ASL_LEXER = \
+ $(ASL_COMPILER)/aslcompiler.l\
+ $(ASL_COMPILER)/aslsupport.l\
+ $(OBJDIR)/aslcompiler.y.h
+
+
#
# Flags specific to iASL compiler
#
@@ -234,17 +251,22 @@ CFLAGS += \
#
include ../Makefile.rules
+#
+# Macro processing for iASL .y files
+#
+$(OBJDIR)/aslcompiler.y : $(ASL_PARSER)
+ $(MACROPROC) $(MFLAGS) $(ASL_COMPILER)/aslparser.y > $(OBJDIR)/aslcompiler.y
#
# Parser and Lexer - intermediate C files
#
-$(OBJDIR)/aslcompilerlex.c : $(ASL_COMPILER)/aslcompiler.l $(ASL_COMPILER)/aslsupport.l $(OBJDIR)/aslcompiler.y.h
+$(OBJDIR)/aslcompilerlex.c : $(ASL_LEXER)
$(LEX) $(LFLAGS) -PAslCompiler -o$@ $(ASL_COMPILER)/aslcompiler.l
-$(OBJDIR)/aslcompiler.y.h : $(ASL_COMPILER)/aslcompiler.y
+$(OBJDIR)/aslcompiler.y.h : $(OBJDIR)/aslcompiler.y
$(YACC) $(YFLAGS) -pAslCompiler -o/dev/null --defines=$@ $<
-$(OBJDIR)/aslcompilerparse.c : $(ASL_COMPILER)/aslcompiler.y
+$(OBJDIR)/aslcompilerparse.c : $(OBJDIR)/aslcompiler.y
$(YACC) $(YFLAGS) -pAslCompiler -o$@ --defines=/dev/null $<
$(OBJDIR)/dtparserlex.c : $(ASL_COMPILER)/dtparser.l $(OBJDIR)/dtparser.y.h
Modified: vendor-sys/acpica/dist/source/common/adfile.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/adfile.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/adfile.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -41,7 +41,7 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
+#include "aslcompiler.h"
#include "acpi.h"
#include "accommon.h"
#include "acapps.h"
@@ -206,7 +206,7 @@ FlGenerateFilename (
* Copy the original filename to a new buffer. Leave room for the worst
* case where we append the suffix, an added dot and the null terminator.
*/
- NewFilename = ACPI_ALLOCATE_ZEROED ((ACPI_SIZE)
+ NewFilename = UtStringCacheCalloc ((ACPI_SIZE)
strlen (InputFilename) + strlen (Suffix) + 2);
if (!NewFilename)
{
@@ -255,7 +255,7 @@ FlStrdup (
char *NewString;
- NewString = ACPI_ALLOCATE ((ACPI_SIZE) strlen (String) + 1);
+ NewString = UtStringCacheCalloc ((ACPI_SIZE) strlen (String) + 1);
if (!NewString)
{
return (NULL);
@@ -337,7 +337,6 @@ FlSplitInputPathname (
if (!Filename)
{
- ACPI_FREE (DirectoryPath);
return (AE_NO_MEMORY);
}
@@ -349,6 +348,5 @@ FlSplitInputPathname (
return (AE_OK);
}
- ACPI_FREE (Filename);
return (AE_OK);
}
Modified: vendor-sys/acpica/dist/source/common/adisasm.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/adisasm.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/adisasm.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -41,12 +41,9 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
-#include "acpi.h"
-#include "accommon.h"
+#include "aslcompiler.h"
#include "acparser.h"
#include "amlcode.h"
-#include "acdebug.h"
#include "acdisasm.h"
#include "acdispat.h"
#include "acnamesp.h"
@@ -60,23 +57,6 @@
#define _COMPONENT ACPI_TOOLS
ACPI_MODULE_NAME ("adisasm")
-/*
- * Older versions of Bison won't emit this external in the generated header.
- * Newer versions do emit the external, so we don't need to do it.
- */
-#ifndef ASLCOMPILER_ASLCOMPILERPARSE_H
-extern int AslCompilerdebug;
-#endif
-
-ACPI_STATUS
-NsDisplayNamespace (
- void);
-
-void
-NsSetupNamespaceListing (
- void *Handle);
-
-
/* Local prototypes */
static void
@@ -654,7 +634,7 @@ AdCreateTableHeader (
}
else
{
- NewFilename = ACPI_ALLOCATE_ZEROED (9);
+ NewFilename = UtStringCacheCalloc (9);
if (NewFilename)
{
strncat (NewFilename, Table->Signature, 4);
@@ -674,8 +654,6 @@ AdCreateTableHeader (
"DefinitionBlock (\"%s\", \"%4.4s\", %hu, \"%.6s\", \"%.8s\", 0x%8.8X)\n",
NewFilename, Table->Signature, Table->Revision,
Table->OemId, Table->OemTableId, Table->OemRevision);
-
- ACPI_FREE (NewFilename);
}
Modified: vendor-sys/acpica/dist/source/common/adwalk.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/adwalk.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/adwalk.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -41,7 +41,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#include "acpi.h"
#include "accommon.h"
#include "acparser.h"
Modified: vendor-sys/acpica/dist/source/common/ahids.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/ahids.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/ahids.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -174,7 +174,11 @@ const AH_DEVICE_ID AslDeviceIds[] =
{"PNP0C60", "Display Sensor Device"},
{"PNP0C70", "Dock Sensor Device"},
{"PNP0C80", "Memory Device"},
- {"PNP0D40", "Standard Compliant SD Host Controller"},
+ {"PNP0D10", "XHCI USB Controller with debug"},
+ {"PNP0D15", "XHCI USB Controller without debug"},
+ {"PNP0D20", "EHCI USB Controller without debug"},
+ {"PNP0D25", "EHCI USB Controller with debug"},
+ {"PNP0D40", "SDA Standard Compliant SD Host Controller"},
{"PNP0D80", "Windows-compatible System Power Management Controller"},
{"PNP0F03", "Microsoft PS/2-style Mouse"},
{"SMO91D0", "Sensor Hub"},
Modified: vendor-sys/acpica/dist/source/common/ahpredef.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/ahpredef.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/ahpredef.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -97,6 +97,7 @@ const AH_PREDEFINED_NAME AslPredefine
AH_PREDEF ("_BTM", "Battery Time", "Returns the battery runtime"),
AH_PREDEF ("_BTP", "Battery Trip Point", "Sets a Control Method Battery trip point"),
AH_PREDEF ("_CBA", "Configuration Base Address", "Sets the base address for a PCI Express host bridge"),
+ AH_PREDEF ("_CCA", "Cache Coherency Attribute", "Returns a device's support level for cache coherency"),
AH_PREDEF ("_CDM", "Clock Domain", "Returns a logical processor's clock domain identifier"),
AH_PREDEF ("_CID", "Compatible ID", "Returns a device's Plug and Play Compatible ID list"),
AH_PREDEF ("_CLS", "Class Code", "Returns PCI class code and subclass"),
@@ -121,6 +122,7 @@ const AH_PREDEFINED_NAME AslPredefine
AH_PREDEF ("_DOS", "Disable Output Switching", "Sets the display output switching mode"),
AH_PREDEF ("_DPL", "Device Selection Polarity", "Polarity of Device Selection signal, Resource Descriptor field"),
AH_PREDEF ("_DRS", "Drive Strength", "Drive Strength setting for GPIO connection, Resource Descriptor field"),
+ AH_PREDEF ("_DSD", "Device-Specific Data", "Returns a list of device property information"),
AH_PREDEF ("_DSM", "Device-Specific Method", "Executes device-specific functions"),
AH_PREDEF ("_DSS", "Device Set State", "Sets the display device state"),
AH_PREDEF ("_DSW", "Device Sleep Wake", "Sets the sleep and wake transition states for a device"),
Added: vendor-sys/acpica/dist/source/common/ahuuids.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor-sys/acpica/dist/source/common/ahuuids.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -0,0 +1,132 @@
+/******************************************************************************
+ *
+ * Module Name: ahuuids - Table of known ACPI-related UUIDs
+ *
+ *****************************************************************************/
+
+/*
+ * Copyright (C) 2000 - 2014, 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 "acpi.h"
+#include "accommon.h"
+
+#define _COMPONENT ACPI_UTILITIES
+ ACPI_MODULE_NAME ("ahuuids")
+
+/*
+ * Table of "known" (ACPI-related) UUIDs
+ */
+const AH_UUID AcpiUuids[] =
+{
+ {"PCI Host Bridge Device",
+ "33db4d5b-1ff7-401c-9657-7441c03dd766"},
+
+ {"Platform-wide Capabilities",
+ "0811b06e-4a27-44f9-8d60-3cbbc22e7b48"},
+
+ {"Dynamic Enumeration",
+ "d8c1a3a6-be9b-4c9b-91bf-c3cb81fc5daf"},
+
+ {"GPIO Controller",
+ "4f248f40-d5e2-499f-834c-27758ea1cd3f"},
+
+ {"Battery Thermal Limit",
+ "4c2067e3-887d-475c-9720-4af1d3ed602e"},
+
+ {"Thermal Extensions",
+ "14d399cd-7a27-4b18-8fb4-7cb7b9f4e500"},
+
+ {"USB Controller",
+ "ce2ee385-00e6-48cb-9f05-2edb927c4899"},
+
+ {"HID I2C Device",
+ "3cdff6f7-4267-4555-ad05-b30a3d8938de"},
+
+ {"Power Button Device",
+ "dfbcf3c5-e7a5-44e6-9c1f-29c76f6e059c"},
+
+ {"Device Labeling Interface",
+ "e5c937d0-3553-4d7a-9117-ea4d19c3434d"},
+
+ {"SATA Controller",
+ "e4db149b-fcfe-425b-a6d8-92357d78fc7f"},
+
+ {"Physical Presence Interface",
+ "3dddfaa6-361b-4eb4-a424-8d10089d1653"},
+
+ {"Device Properties for _DSD",
+ "daffd814-6eba-4d8c-8a91-bc9bbf4aa301"},
+
+ {NULL, NULL}
+};
+
+
+/*******************************************************************************
+ *
+ * FUNCTION: AcpiAhMatchUuid
+ *
+ * PARAMETERS: Data - Data buffer containing a UUID
+ *
+ * RETURN: ASCII description string for the UUID if it is found.
+ *
+ * DESCRIPTION: Returns a description string for "known" UUIDs, which are
+ * are UUIDs that are related to ACPI in some way.
+ *
+ ******************************************************************************/
+
+const char *
+AcpiAhMatchUuid (
+ UINT8 *Data)
+{
+ const AH_UUID *Info;
+ UINT8 UuidBuffer[UUID_BUFFER_LENGTH];
+
+
+ /* Walk the table of known ACPI-related UUIDs */
+
+ for (Info = AcpiUuids; Info->Description; Info++)
+ {
+ AcpiUtConvertStringToUuid (Info->String, UuidBuffer);
+
+ if (!ACPI_MEMCMP (Data, UuidBuffer, UUID_BUFFER_LENGTH))
+ {
+ return (Info->Description);
+ }
+ }
+
+ return (NULL);
+}
Modified: vendor-sys/acpica/dist/source/common/dmextern.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/dmextern.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/dmextern.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -406,18 +406,37 @@ AcpiDmGetExternalsFromFile (
while (fgets (StringBuffer, ASL_MSG_BUFFER_SIZE, ExternalRefFile))
{
Token = strtok (StringBuffer, METHOD_SEPARATORS); /* "External" */
- if (!Token) continue;
- if (strcmp (Token, "External")) continue;
+ if (!Token)
+ {
+ continue;
+ }
+ if (strcmp (Token, "External"))
+ {
+ continue;
+ }
MethodName = strtok (NULL, METHOD_SEPARATORS); /* Method namepath */
- if (!MethodName) continue;
+ if (!MethodName)
+ {
+ continue;
+ }
Token = strtok (NULL, METHOD_SEPARATORS); /* "MethodObj" */
- if (!Token) continue;
- if (strcmp (Token, "MethodObj")) continue;
+ if (!Token)
+ {
+ continue;
+ }
+
+ if (strcmp (Token, "MethodObj"))
+ {
+ continue;
+ }
Token = strtok (NULL, METHOD_SEPARATORS); /* Arg count */
- if (!Token) continue;
+ if (!Token)
+ {
+ continue;
+ }
/* Convert arg count string to an integer */
Modified: vendor-sys/acpica/dist/source/common/dmrestag.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/dmrestag.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/dmrestag.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -41,7 +41,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#include "acpi.h"
#include "accommon.h"
#include "acparser.h"
Modified: vendor-sys/acpica/dist/source/common/dmtable.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/dmtable.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/dmtable.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -87,9 +87,21 @@ static const char *AcpiDmDmarS
"Reserved Memory Region",
"Root Port ATS Capability",
"Remapping Hardware Static Affinity",
+ "ACPI Namespace Device Declaration",
"Unknown SubTable Type" /* Reserved */
};
+static const char *AcpiDmDmarScope[] =
+{
+ "Reserved value",
+ "PCI Endpoint Device",
+ "PCI Bridge Device",
+ "IOAPIC Device",
+ "Message-capable HPET Device",
+ "Namespace Device",
+ "Unknown Scope Type" /* Reserved */
+};
+
static const char *AcpiDmEinjActions[] =
{
"Begin Operation",
@@ -160,6 +172,13 @@ static const char *AcpiDmErstI
"Unknown Instruction"
};
+static const char *AcpiDmGtdtSubnames[] =
+{
+ "Generic Timer Block",
+ "Generic Watchdog Timer",
+ "Unknown SubTable Type" /* Reserved */
+};
+
static const char *AcpiDmHestSubnames[] =
{
"IA-32 Machine Check Exception",
@@ -189,25 +208,28 @@ static const char *AcpiDmHestN
static const char *AcpiDmMadtSubnames[] =
{
- "Processor Local APIC", /* ACPI_MADT_TYPE_LOCAL_APIC */
- "I/O APIC", /* ACPI_MADT_TYPE_IO_APIC */
- "Interrupt Source Override", /* ACPI_MADT_TYPE_INTERRUPT_OVERRIDE */
- "NMI Source", /* ACPI_MADT_TYPE_NMI_SOURCE */
- "Local APIC NMI", /* ACPI_MADT_TYPE_LOCAL_APIC_NMI */
- "Local APIC Address Override", /* ACPI_MADT_TYPE_LOCAL_APIC_OVERRIDE */
- "I/O SAPIC", /* ACPI_MADT_TYPE_IO_SAPIC */
- "Local SAPIC", /* ACPI_MADT_TYPE_LOCAL_SAPIC */
- "Platform Interrupt Sources", /* ACPI_MADT_TYPE_INTERRUPT_SOURCE */
- "Processor Local x2APIC", /* ACPI_MADT_TYPE_LOCAL_X2APIC */
- "Local x2APIC NMI", /* ACPI_MADT_TYPE_LOCAL_X2APIC_NMI */
- "Generic Interrupt Controller", /* ACPI_MADT_GENERIC_INTERRUPT */
- "Generic Interrupt Distributor",/* ACPI_MADT_GENERIC_DISTRIBUTOR */
- "Unknown SubTable Type" /* Reserved */
+ "Processor Local APIC", /* ACPI_MADT_TYPE_LOCAL_APIC */
+ "I/O APIC", /* ACPI_MADT_TYPE_IO_APIC */
+ "Interrupt Source Override", /* ACPI_MADT_TYPE_INTERRUPT_OVERRIDE */
+ "NMI Source", /* ACPI_MADT_TYPE_NMI_SOURCE */
+ "Local APIC NMI", /* ACPI_MADT_TYPE_LOCAL_APIC_NMI */
+ "Local APIC Address Override", /* ACPI_MADT_TYPE_LOCAL_APIC_OVERRIDE */
+ "I/O SAPIC", /* ACPI_MADT_TYPE_IO_SAPIC */
+ "Local SAPIC", /* ACPI_MADT_TYPE_LOCAL_SAPIC */
+ "Platform Interrupt Sources", /* ACPI_MADT_TYPE_INTERRUPT_SOURCE */
+ "Processor Local x2APIC", /* ACPI_MADT_TYPE_LOCAL_X2APIC */
+ "Local x2APIC NMI", /* ACPI_MADT_TYPE_LOCAL_X2APIC_NMI */
+ "Generic Interrupt Controller", /* ACPI_MADT_GENERIC_INTERRUPT */
+ "Generic Interrupt Distributor", /* ACPI_MADT_GENERIC_DISTRIBUTOR */
+ "Generic MSI Frame", /* ACPI_MADT_GENERIC_MSI_FRAME */
+ "Generic Interrupt Redistributor", /* ACPI_MADT_GENERIC_REDISTRIBUTOR */
+ "Unknown SubTable Type" /* Reserved */
};
static const char *AcpiDmPcctSubnames[] =
{
"Generic Communications Subspace", /* ACPI_PCCT_TYPE_GENERIC_SUBSPACE */
+ "HW-Reduced Communications Subspace",
"Unknown SubTable Type" /* Reserved */
};
@@ -231,6 +253,7 @@ static const char *AcpiDmSratS
"Processor Local APIC/SAPIC Affinity",
"Memory Affinity",
"Processor Local x2APIC Affinity",
+ "GICC Affinity",
"Unknown SubTable Type" /* Reserved */
};
@@ -306,7 +329,7 @@ ACPI_DMTABLE_DATA AcpiDmTableData[] =
{ACPI_SIG_ERST, NULL, AcpiDmDumpErst, DtCompileErst, TemplateErst, "Error Record Serialization Table"},
{ACPI_SIG_FADT, NULL, AcpiDmDumpFadt, DtCompileFadt, TemplateFadt, "Fixed ACPI Description Table (FADT)"},
{ACPI_SIG_FPDT, NULL, AcpiDmDumpFpdt, DtCompileFpdt, TemplateFpdt, "Firmware Performance Data Table"},
- {ACPI_SIG_GTDT, AcpiDmTableInfoGtdt, NULL, NULL, TemplateGtdt, "Generic Timer Description Table"},
+ {ACPI_SIG_GTDT, NULL, AcpiDmDumpGtdt, DtCompileGtdt, TemplateGtdt, "Generic Timer Description Table"},
{ACPI_SIG_HEST, NULL, AcpiDmDumpHest, DtCompileHest, TemplateHest, "Hardware Error Source Table"},
{ACPI_SIG_HPET, AcpiDmTableInfoHpet, NULL, NULL, TemplateHpet, "High Precision Event Timer table"},
{ACPI_SIG_IVRS, NULL, AcpiDmDumpIvrs, DtCompileIvrs, TemplateIvrs, "I/O Virtualization Reporting Structure"},
@@ -705,6 +728,7 @@ AcpiDmDumpTable (
case ACPI_DMT_SPACEID:
case ACPI_DMT_ACCWIDTH:
case ACPI_DMT_IVRS:
+ case ACPI_DMT_GTDT:
case ACPI_DMT_MADT:
case ACPI_DMT_PCCT:
case ACPI_DMT_PMTT:
@@ -716,6 +740,7 @@ AcpiDmDumpTable (
case ACPI_DMT_EINJINST:
case ACPI_DMT_ERSTACT:
case ACPI_DMT_ERSTINST:
+ case ACPI_DMT_DMAR_SCOPE:
ByteLength = 1;
break;
@@ -1047,6 +1072,19 @@ AcpiDmDumpTable (
AcpiOsPrintf (UINT16_FORMAT, ACPI_GET16 (Target), AcpiDmDmarSubnames[Temp16]);
break;
+ case ACPI_DMT_DMAR_SCOPE:
+
+ /* DMAR device scope types */
+
+ Temp8 = *Target;
+ if (Temp8 > ACPI_DMAR_SCOPE_TYPE_RESERVED)
+ {
+ Temp8 = ACPI_DMAR_SCOPE_TYPE_RESERVED;
+ }
+
+ AcpiOsPrintf (UINT8_FORMAT, *Target, AcpiDmDmarScope[Temp8]);
+ break;
+
case ACPI_DMT_EINJACT:
/* EINJ Action types */
@@ -1099,6 +1137,19 @@ AcpiDmDumpTable (
AcpiOsPrintf (UINT8_FORMAT, *Target, AcpiDmErstInstructions[Temp8]);
break;
+ case ACPI_DMT_GTDT:
+
+ /* GTDT subtable types */
+
+ Temp8 = *Target;
+ if (Temp8 > ACPI_GTDT_TYPE_RESERVED)
+ {
+ Temp8 = ACPI_GTDT_TYPE_RESERVED;
+ }
+
+ AcpiOsPrintf (UINT8_FORMAT, *Target, AcpiDmGtdtSubnames[Temp8]);
+ break;
+
case ACPI_DMT_HEST:
/* HEST subtable types */
Modified: vendor-sys/acpica/dist/source/common/dmtbdump.c
==============================================================================
--- vendor-sys/acpica/dist/source/common/dmtbdump.c Thu Sep 11 21:15:20 2014 (r271439)
+++ vendor-sys/acpica/dist/source/common/dmtbdump.c Thu Sep 11 21:38:09 2014 (r271440)
@@ -891,18 +891,24 @@ AcpiDmDumpDmar (
ScopeOffset = sizeof (ACPI_DMAR_RESERVED_MEMORY);
break;
- case ACPI_DMAR_TYPE_ATSR:
+ case ACPI_DMAR_TYPE_ROOT_ATS:
InfoTable = AcpiDmTableInfoDmar2;
ScopeOffset = sizeof (ACPI_DMAR_ATSR);
break;
- case ACPI_DMAR_HARDWARE_AFFINITY:
+ case ACPI_DMAR_TYPE_HARDWARE_AFFINITY:
InfoTable = AcpiDmTableInfoDmar3;
ScopeOffset = sizeof (ACPI_DMAR_RHSA);
break;
+ case ACPI_DMAR_TYPE_NAMESPACE:
+
+ InfoTable = AcpiDmTableInfoDmar4;
+ ScopeOffset = sizeof (ACPI_DMAR_ANDD);
+ break;
+
default:
AcpiOsPrintf ("\n**** Unknown DMAR subtable type 0x%X\n\n", SubTable->Type);
@@ -916,7 +922,16 @@ AcpiDmDumpDmar (
return;
}
- /* Dump the device scope entries (if any) */
+ /*
+ * Dump the optional device scope entries
+ */
+ if ((SubTable->Type == ACPI_DMAR_TYPE_HARDWARE_AFFINITY) ||
+ (SubTable->Type == ACPI_DMAR_TYPE_NAMESPACE))
+ {
+ /* These types do not support device scopes */
+
+ goto NextSubtable;
+ }
ScopeTable = ACPI_ADD_PTR (ACPI_DMAR_DEVICE_SCOPE, SubTable, ScopeOffset);
while (ScopeOffset < SubTable->Length)
@@ -956,6 +971,7 @@ AcpiDmDumpDmar (
ScopeTable, ScopeTable->Length);
}
+NextSubtable:
/* Point to next subtable */
Offset += SubTable->Length;
@@ -1155,6 +1171,123 @@ NextSubTable:
/*******************************************************************************
*
+ * FUNCTION: AcpiDmDumpGtdt
+ *
+ * PARAMETERS: Table - A GTDT table
+ *
+ * RETURN: None
+ *
+ * DESCRIPTION: Format the contents of a GTDT. This table type consists
+ * of an open-ended number of subtables.
+ *
+ ******************************************************************************/
+
+void
+AcpiDmDumpGtdt (
+ ACPI_TABLE_HEADER *Table)
+{
+ ACPI_STATUS Status;
+ ACPI_GTDT_HEADER *SubTable;
+ UINT32 Length = Table->Length;
+ UINT32 Offset = sizeof (ACPI_TABLE_GTDT);
+ ACPI_DMTABLE_INFO *InfoTable;
+ UINT32 SubTableLength;
+ UINT32 GtCount;
+ ACPI_GTDT_TIMER_ENTRY *GtxTable;
+
+
+ /* Main table */
+
+ Status = AcpiDmDumpTable (Length, 0, Table, 0, AcpiDmTableInfoGtdt);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ /* Subtables */
+
+ SubTable = ACPI_ADD_PTR (ACPI_GTDT_HEADER, Table, Offset);
+ while (Offset < Table->Length)
+ {
+ /* Common subtable header */
+
+ AcpiOsPrintf ("\n");
+ Status = AcpiDmDumpTable (Length, Offset, SubTable,
+ SubTable->Length, AcpiDmTableInfoGtdtHdr);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ GtCount = 0;
+ switch (SubTable->Type)
+ {
+ case ACPI_GTDT_TYPE_TIMER_BLOCK:
+
+ SubTableLength = sizeof (ACPI_GTDT_TIMER_BLOCK);
+ GtCount = (ACPI_CAST_PTR (ACPI_GTDT_TIMER_BLOCK,
+ SubTable))->TimerCount;
+
+ InfoTable = AcpiDmTableInfoGtdt0;
+ break;
+
+ case ACPI_GTDT_TYPE_WATCHDOG:
+
+ SubTableLength = sizeof (ACPI_GTDT_WATCHDOG);
+
+ InfoTable = AcpiDmTableInfoGtdt1;
+ break;
+
+ default:
+
+ /* Cannot continue on unknown type - no length */
+
+ AcpiOsPrintf ("\n**** Unknown GTDT subtable type 0x%X\n", SubTable->Type);
+ return;
+ }
+
+ Status = AcpiDmDumpTable (Length, Offset, SubTable,
+ SubTable->Length, InfoTable);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ /* Point to end of current subtable (each subtable above is of fixed length) */
+
+ Offset += SubTableLength;
+
+ /* If there are any Gt Timer Blocks from above, dump them now */
+
+ if (GtCount)
+ {
+ GtxTable = ACPI_ADD_PTR (ACPI_GTDT_TIMER_ENTRY, SubTable, SubTableLength);
+ SubTableLength += GtCount * sizeof (ACPI_GTDT_TIMER_ENTRY);
+
+ while (GtCount)
+ {
+ AcpiOsPrintf ("\n");
+ Status = AcpiDmDumpTable (Length, Offset, GtxTable,
+ sizeof (ACPI_GTDT_TIMER_ENTRY), AcpiDmTableInfoGtdt0a);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+ Offset += sizeof (ACPI_GTDT_TIMER_ENTRY);
+ GtxTable++;
+ GtCount--;
+ }
+ }
+
+ /* Point to next subtable */
+
+ SubTable = ACPI_ADD_PTR (ACPI_GTDT_HEADER, SubTable, SubTableLength);
+ }
+}
+
+
+/*******************************************************************************
+ *
* FUNCTION: AcpiDmDumpHest
*
* PARAMETERS: Table - A HEST table
@@ -1662,6 +1795,16 @@ AcpiDmDumpMadt (
InfoTable = AcpiDmTableInfoMadt12;
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-all
mailing list