Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/external/bsd/acpica/dist Import ACPICA 20110623.



details:   https://anonhg.NetBSD.org/src/rev/44626a12e6d1
branches:  trunk
changeset: 766580:44626a12e6d1
user:      jruoho <jruoho%NetBSD.org@localhost>
date:      Tue Jun 28 09:01:37 2011 +0000

description:
Import ACPICA 20110623.

Selected changes since 20110211 include, among other things, fixes to _PRW
parsing, fix to a regression with the Load() operator, improvements in NULL
package element removal, support for "spurious" global lock interrupts,
execution of orphaned _REG methods under acpiec(4), and smaller iasl(8)
improvements.

diffstat:

 sys/external/bsd/acpica/dist/README                                |  186 +-
 sys/external/bsd/acpica/dist/changes.txt                           |  799 +++++----
 sys/external/bsd/acpica/dist/common/dmtable.c                      |  128 +-
 sys/external/bsd/acpica/dist/common/dmtbdump.c                     |   81 +-
 sys/external/bsd/acpica/dist/compiler/Makefile                     |   99 +-
 sys/external/bsd/acpica/dist/compiler/aslanalyze.c                 |   53 +
 sys/external/bsd/acpica/dist/compiler/aslcompiler.h                |   15 +-
 sys/external/bsd/acpica/dist/compiler/aslcompiler.y                |   87 +-
 sys/external/bsd/acpica/dist/compiler/asldefine.h                  |   17 +-
 sys/external/bsd/acpica/dist/compiler/aslerror.c                   |    8 +-
 sys/external/bsd/acpica/dist/compiler/aslglobal.h                  |    1 +
 sys/external/bsd/acpica/dist/compiler/asllookup.c                  |    8 +-
 sys/external/bsd/acpica/dist/compiler/aslmain.c                    |    4 +-
 sys/external/bsd/acpica/dist/compiler/aslmap.c                     |   18 +-
 sys/external/bsd/acpica/dist/compiler/aslmessages.h                |    3 +-
 sys/external/bsd/acpica/dist/compiler/aslpredef.c                  |    6 +-
 sys/external/bsd/acpica/dist/compiler/aslstubs.c                   |   17 +
 sys/external/bsd/acpica/dist/compiler/asltypes.h                   |    1 +
 sys/external/bsd/acpica/dist/compiler/aslwalks.c                   |   30 +-
 sys/external/bsd/acpica/dist/compiler/dtcompile.c                  |   55 +-
 sys/external/bsd/acpica/dist/compiler/dtcompiler.h                 |   45 +-
 sys/external/bsd/acpica/dist/compiler/dtexpress.c                  |  336 ++-
 sys/external/bsd/acpica/dist/compiler/dtfield.c                    |    7 +-
 sys/external/bsd/acpica/dist/compiler/dtio.c                       |  135 +-
 sys/external/bsd/acpica/dist/compiler/dtparser.l                   |  133 +
 sys/external/bsd/acpica/dist/compiler/dtparser.y                   |  273 +++
 sys/external/bsd/acpica/dist/compiler/dtsubtable.c                 |   42 +
 sys/external/bsd/acpica/dist/compiler/dttable.c                    |  201 +-
 sys/external/bsd/acpica/dist/compiler/dttemplate.c                 |    3 +-
 sys/external/bsd/acpica/dist/compiler/dttemplate.h                 |  113 +-
 sys/external/bsd/acpica/dist/compiler/dtutils.c                    |   44 +-
 sys/external/bsd/acpica/dist/debugger/dbxface.c                    |    8 +-
 sys/external/bsd/acpica/dist/dispatcher/dswload.c                  |    2 +-
 sys/external/bsd/acpica/dist/dispatcher/dswload2.c                 |    2 +-
 sys/external/bsd/acpica/dist/events/evglock.c                      |  367 ++++
 sys/external/bsd/acpica/dist/events/evmisc.c                       |  296 ---
 sys/external/bsd/acpica/dist/events/evregion.c                     |  130 +-
 sys/external/bsd/acpica/dist/events/evxfgpe.c                      |   12 +-
 sys/external/bsd/acpica/dist/events/evxfregn.c                     |   13 +-
 sys/external/bsd/acpica/dist/executer/excreate.c                   |    3 +-
 sys/external/bsd/acpica/dist/generate/lint/options.lnt             |    2 +
 sys/external/bsd/acpica/dist/generate/unix/Makefile                |   21 +-
 sys/external/bsd/acpica/dist/generate/unix/Makefile.config         |  117 +-
 sys/external/bsd/acpica/dist/generate/unix/acpibin/Makefile        |  109 +
 sys/external/bsd/acpica/dist/generate/unix/acpiexec/Makefile       |   35 +-
 sys/external/bsd/acpica/dist/generate/unix/acpihelp/Makefile       |   72 +
 sys/external/bsd/acpica/dist/generate/unix/acpinames/Makefile      |   30 +-
 sys/external/bsd/acpica/dist/generate/unix/acpisrc/Makefile        |   27 +-
 sys/external/bsd/acpica/dist/generate/unix/acpixtract/Makefile     |   35 +-
 sys/external/bsd/acpica/dist/generate/unix/iasl/Makefile           |   56 +-
 sys/external/bsd/acpica/dist/generate/unix/readme.txt              |   85 +-
 sys/external/bsd/acpica/dist/include/acconfig.h                    |    4 +-
 sys/external/bsd/acpica/dist/include/acevents.h                    |   28 +-
 sys/external/bsd/acpica/dist/include/acpredef.h                    |    1 +
 sys/external/bsd/acpica/dist/include/actbl2.h                      |   77 +-
 sys/external/bsd/acpica/dist/include/amlcode.h                     |   18 -
 sys/external/bsd/acpica/dist/include/platform/acenv.h              |   23 +-
 sys/external/bsd/acpica/dist/include/platform/aclinux.h            |    3 +-
 sys/external/bsd/acpica/dist/include/platform/acmsvc.h             |   22 +
 sys/external/bsd/acpica/dist/namespace/nspredef.c                  |   19 +-
 sys/external/bsd/acpica/dist/namespace/nsrepair.c                  |   13 +-
 sys/external/bsd/acpica/dist/os_specific/service_layers/osunixxf.c |  148 +-
 sys/external/bsd/acpica/dist/os_specific/service_layers/oswinxf.c  |  136 +-
 sys/external/bsd/acpica/dist/tables/tbinstal.c                     |   26 +-
 sys/external/bsd/acpica/dist/tests/misc/badcode.asl                |   15 +
 sys/external/bsd/acpica/dist/tools/acpibin/Makefile                |  139 +
 sys/external/bsd/acpica/dist/tools/acpibin/abcompare.c             |  767 +++++++++
 sys/external/bsd/acpica/dist/tools/acpibin/abmain.c                |  190 ++
 sys/external/bsd/acpica/dist/tools/acpibin/acpibin.h               |  113 +
 sys/external/bsd/acpica/dist/tools/acpiexec/Makefile               |   69 +-
 sys/external/bsd/acpica/dist/tools/acpiexec/aehandlers.c           |   25 +-
 sys/external/bsd/acpica/dist/tools/acpiexec/aemain.c               |    7 +-
 sys/external/bsd/acpica/dist/tools/acpiexec/aetables.c             |    8 +-
 sys/external/bsd/acpica/dist/tools/acpiexec/aetables.h             |   48 +
 sys/external/bsd/acpica/dist/tools/acpihelp/Makefile               |  101 +
 sys/external/bsd/acpica/dist/tools/acpihelp/acpihelp.h             |  143 +
 sys/external/bsd/acpica/dist/tools/acpihelp/ahamlops.c             |  325 ++++
 sys/external/bsd/acpica/dist/tools/acpihelp/ahaslkey.c             |  112 +
 sys/external/bsd/acpica/dist/tools/acpihelp/ahaslops.c             |  358 ++++
 sys/external/bsd/acpica/dist/tools/acpihelp/ahdecode.c             |  732 +++++++++
 sys/external/bsd/acpica/dist/tools/acpihelp/ahmain.c               |  221 ++
 sys/external/bsd/acpica/dist/tools/acpihelp/ahpredef.c             |  277 +++
 sys/external/bsd/acpica/dist/tools/acpinames/Makefile              |   64 +-
 sys/external/bsd/acpica/dist/tools/acpinames/anstubs.c             |   16 +
 sys/external/bsd/acpica/dist/tools/acpisrc/Makefile                |  120 +-
 sys/external/bsd/acpica/dist/tools/acpisrc/acpisrc.h               |    5 +-
 sys/external/bsd/acpica/dist/tools/acpixtract/Makefile             |   79 +-
 sys/external/bsd/acpica/dist/tools/acpixtract/acpixtract.c         |   24 +-
 sys/external/bsd/acpica/dist/tools/examples/examples.c             |   15 +
 89 files changed, 7350 insertions(+), 1511 deletions(-)

diffs (truncated from 12079 to 300 lines):

diff -r 2ad89423e2f5 -r 44626a12e6d1 sys/external/bsd/acpica/dist/README
--- a/sys/external/bsd/acpica/dist/README       Tue Jun 28 07:52:40 2011 +0000
+++ b/sys/external/bsd/acpica/dist/README       Tue Jun 28 09:01:37 2011 +0000
@@ -1,24 +1,130 @@
-acpica-unix
------------
+Makefiles for tool generation from the unix tarball
+---------------------------------------------------
+
+These makefiles are intended to generate the ACPICA utilities in
+a Linux or Unix-like environment, from the ACPICA source code
+as released in the unix tarball.
+
+Windows binary versions of these tools are available at:
+
+http://www.acpica.org/downloads/binary_tools.php
+
+Documentation is available at acpica.org:
+
+http://www.acpica.org/documentation/
+
+The acpica/source/tools directory contains the following utilities.
+Note: These utilities are tested and supported as 32-bit versions
+only.
+
+acpibin
+acpiexec
+acpihelp
+acpinames
+acpisrc
+acpixtract
+iasl
+
 
-This source release includes:
+Requirements
+------------
+
+make
+gcc compiler (4+)
+bison or yacc
+flex or lex
+
+
+Configuration
+-------------
+
+The Makefiles contain this configuration information:
+
+HOST =       _LINUX             /* Host system, must appear in acenv.h */
+CC =         gcc                /* C compiler */
+
+
+1) acpibin, an AML file tool
+
+acpibin compares AML files, dumps AML binary files to text files,
+extracts binary AML from text files, and other AML file
+manipulation.
+
+To compile:
+
+cd acpica/source/tools/acpibin
+make
+make install   /* install the binary to /usr/bin */
 
 
-1) a cross-OS AML interpreter
+2) acpiexec, a user-space AML interpreter
+
+acpiexec allows the loading of ACPI tables and execution of control
+methods from user space. Useful for debugging AML code and testing
+the AML interpreter. Hardware access is simulated.
+
+To compile:
+
+cd acpica/source/tools/acpiexec
+make
+make install   /* install the binary to /usr/bin */
 
-This is intended to allow commercial and open source operating systems
-to be enabled for ACPI. OS specific code is still needed, but the
-AML interpreter should greatly improve the development speed of ACPI
-support.
+
+3) acpihelp, syntax help for ASL operators and reserved names
 
-The AML interpreter source should be integrated into the kernel's
-build process. We recommend establishing an automated method for
-this, so later versions can also be incorporated easily. Please see
-the documentation on the website for API and other implementation
-information.
+acpihelp displays the syntax for all of the ASL operators, as well
+as information about the ASL/ACPI reserved names (4-char names that
+start with underscore.)
+
+To compile:
+
+cd acpica/source/tools/acpihelp
+make
+make install   /* install the binary to /usr/bin */
 
 
-2) iasl, an ASL compiler/decompiler
+4) acpinames, load and dump acpi namespace
+
+acpinames loads an ACPI namespace from a binary ACPI table file.
+This is a smaller version of acpiexec that loads an acpi table and
+dumps the resulting namespace. It is primarily intended to demonstrate
+the configurability of ACPICA.
+
+To compile:
+
+cd acpica/source/tools/acpinames
+make
+make install   /* install the binary to /usr/bin */
+
+
+5) acpisrc, a source code conversion tool
+
+acpisrc converts the standard form of the acpica source release (included
+here) into a version that meets Linux coding guidelines. This consists
+mainly of performing a series of string replacements and transformations
+to the code. It can also be used to clean the acpica source and generate
+statistics.
+
+To compile:
+
+cd acpica/source/tools/acpisrc
+make
+make install   /* install the binary to /usr/bin */
+
+
+6) acpixtract, extract binary ACPI tables from an acpidump
+
+acpixtract is used to extract binary ACPI tables from the ASCII text
+output of an acpidump utility (available on several different hosts.)
+
+To compile:
+
+cd acpica/source/tools/acpixtract
+make
+make install   /* install the binary to /usr/bin */
+
+
+7) iasl, an optimizing ASL compiler/disassembler
 
 iasl compiles ASL (ACPI Source Language) into AML (ACPI Machine
 Language). This AML is suitable for inclusion as a DSDT in system
@@ -26,54 +132,6 @@
 
 To compile:
 
-cd compiler
-make
-
-It has been compiled on Linux, but should easily port to other Unix
-environments.
-
-Run 'iasl -h' for more information, or download the binary version for
-documentation in PDF format.
-
-
-3) acpisrc, a source code conversion tool
-
-acpisrc converts the standard form of the acpica source release (included
-here) into a version that meets Linux coding guidelines. This consists
-mainly of performing a series of string replacements and transformations
-to the code.
-
-To compile:
-
-cd tools/acpisrc
+cd acpica/source/compiler
 make
-
-It has been compiled on Linux, but should easily port to other Unix
-environments.
-
-
-4) acpibin, an AML file tool
-
-acpibin compares AML files, dumps AML binary files to text files,
-extracts binary AML from text files, and other AML file
-manipulation.
-
-To compile:
-
-cd tools/acpibin
-make
-
-
-5) acpiexec, a user-space AML interpreter
-
-acpiexec allows the loading of ACPI tables and execution of control
-methods from user space.  Useful for debugging AML code and testing
-the AML interpreter.
-
-To compile:
-
-cd tools/acpiexec
-make
-
-
-Thanks -- The ACPI CA Team
+make install   /* install the binary to /usr/bin */
diff -r 2ad89423e2f5 -r 44626a12e6d1 sys/external/bsd/acpica/dist/changes.txt
--- a/sys/external/bsd/acpica/dist/changes.txt  Tue Jun 28 07:52:40 2011 +0000
+++ b/sys/external/bsd/acpica/dist/changes.txt  Tue Jun 28 09:01:37 2011 +0000
@@ -1,8 +1,274 @@
 ----------------------------------------
+23 June 2011. Summary of changes for version 20110623:
+
+1) ACPI CA Core Subsystem:
+
+Updated the predefined name repair mechanism to not attempt repair of a _TSS 
+return object if a _PSS object is present. We can only sort the _TSS return 
+package if there is no _PSS within the same scope. This is because if _PSS is 
+present, the ACPI specification dictates that the _TSS Power Dissipation field 
+is to be ignored, and therefore some BIOSs leave garbage values in the _TSS 
+Power field(s). In this case, it is best to just return the _TSS package as-
+is. Reported by, and fixed with assistance from Fenghua Yu.
+
+Added an option to globally disable the control method return value validation 
+and repair. This runtime option can be used to disable return value repair if 
+this is causing a problem on a particular machine. Also added an option to 
+AcpiExec (-dr) to set this disable flag.
+
+All makefiles and project files: Major changes to improve generation of ACPICA 
+tools. ACPICA BZ 912:
+    Reduce default optimization levels to improve compatibility
+    For Linux, add strict-aliasing=0 for gcc 4
+    Cleanup and simplify use of command line defines
+    Cleanup multithread library support
+    Improve usage messages
+
+Linux-specific header: update handling of THREAD_ID and pthread. For the 32-
+bit case, improve casting to eliminate possible warnings, especially with the 
+acpica tools.
+
+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.
+
+  Previous Release (VC 9.0):
+    Non-Debug Version:  90.1K Code, 23.9K Data, 114.0K Total
+    Debug Version:     165.6K Code, 68.4K Data, 234.0K Total
+  Current Release (VC 9.0):
+    Non-Debug Version:  90.2K Code, 23.9K Data, 114.1K Total
+    Debug Version:     165.6K Code, 68.4K Data, 234.0K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+With this release, a new utility named "acpihelp" has been added to the ACPICA 
+package. This utility summarizes the ACPI specification chapters for the ASL 
+and AML languages. It generates under Linux/Unix as well as Windows, and 
+provides the following functionality:
+    Find/display ASL operator(s) -- with description and syntax.
+    Find/display ASL keyword(s) -- with exact spelling and descriptions.
+    Find/display ACPI predefined name(s) -- with description, number
+        of arguments, and the return value data type.
+    Find/display AML opcode name(s) -- with opcode, arguments, and grammar.
+    Decode/display AML opcode -- with opcode name, arguments, and grammar.
+
+Service Layers: Make multi-thread support configurable. Conditionally compile 
+the multi-thread support so that threading libraries will not be linked if not 
+necessary. The only tool that requires multi-thread support is AcpiExec.
+
+iASL: Update yyerrror/AslCompilerError for "const" errors. Newer versions of 
+Bison appear to want the interface to yyerror to be a const char * (or at 
+least this is a problem when generating iASL on some systems.) ACPICA BZ 923 
+Pierre Lejeune.
+
+Tools: Fix for systems where O_BINARY is not defined. Only used for Windows 
+versions of the tools.
+
+----------------------------------------
+27 May 2011. Summary of changes for version 20110527:
+
+1) ACPI CA Core Subsystem:
+
+ASL Load() operator: Reinstate most restrictions on the incoming ACPI table 
+signature. Now, only allow SSDT, OEMx, and a null signature. History:
+    1) Originally, we checked the table signature for "SSDT" or "PSDT".
+       (PSDT is now obsolete.)
+    2) We added support for OEMx tables, signature "OEM" plus a fourth
+       "don't care" character.
+    3) Valid tables were encountered with a null signature, so we just
+       gave up on validating the signature, (05/2008).
+    4) We encountered non-AML tables such as the MADT, which caused
+       interpreter errors and kernel faults. So now, we once again allow
+       only SSDT, OEMx, and now, also a null signature. (05/2011).
+
+Added the missing _TDL predefined name to the global name list in order to 
+enable validation. Affects both the core ACPICA code and the iASL compiler.
+
+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.



Home | Main Index | Thread Index | Old Index