svn commit: r253690 - in head/sys/contrib/dev/acpica: . common compiler components/executer components/hardware components/namespace components/tables components/utilities include

Jung-uk Kim jkim at FreeBSD.org
Fri Jul 26 21:34:10 UTC 2013


Author: jkim
Date: Fri Jul 26 21:34:09 2013
New Revision: 253690
URL: http://svnweb.freebsd.org/changeset/base/253690

Log:
  Merge ACPICA 20130725.

Modified:
  head/sys/contrib/dev/acpica/changes.txt   (contents, props changed)
  head/sys/contrib/dev/acpica/common/dmextern.c
  head/sys/contrib/dev/acpica/common/getopt.c
  head/sys/contrib/dev/acpica/compiler/asloffset.c
  head/sys/contrib/dev/acpica/compiler/asloperands.c
  head/sys/contrib/dev/acpica/compiler/asloptions.c
  head/sys/contrib/dev/acpica/compiler/dttemplate.c
  head/sys/contrib/dev/acpica/components/executer/exoparg1.c
  head/sys/contrib/dev/acpica/components/hardware/hwtimer.c
  head/sys/contrib/dev/acpica/components/namespace/nspredef.c
  head/sys/contrib/dev/acpica/components/namespace/nswalk.c
  head/sys/contrib/dev/acpica/components/namespace/nsxfeval.c
  head/sys/contrib/dev/acpica/components/tables/tbfadt.c
  head/sys/contrib/dev/acpica/components/tables/tbxfroot.c
  head/sys/contrib/dev/acpica/components/utilities/utglobal.c
  head/sys/contrib/dev/acpica/components/utilities/utosi.c
  head/sys/contrib/dev/acpica/components/utilities/utxface.c
  head/sys/contrib/dev/acpica/include/acglobal.h
  head/sys/contrib/dev/acpica/include/aclocal.h
  head/sys/contrib/dev/acpica/include/acnamesp.h
  head/sys/contrib/dev/acpica/include/acpixf.h
  head/sys/contrib/dev/acpica/include/actables.h
  head/sys/contrib/dev/acpica/include/actypes.h
  head/sys/contrib/dev/acpica/include/acutils.h
Directory Properties:
  head/sys/contrib/dev/acpica/   (props changed)
  head/sys/contrib/dev/acpica/common/   (props changed)
  head/sys/contrib/dev/acpica/compiler/   (props changed)
  head/sys/contrib/dev/acpica/components/debugger/   (props changed)
  head/sys/contrib/dev/acpica/components/disassembler/   (props changed)
  head/sys/contrib/dev/acpica/components/dispatcher/   (props changed)
  head/sys/contrib/dev/acpica/components/events/   (props changed)
  head/sys/contrib/dev/acpica/components/executer/   (props changed)
  head/sys/contrib/dev/acpica/components/hardware/   (props changed)
  head/sys/contrib/dev/acpica/components/namespace/   (props changed)
  head/sys/contrib/dev/acpica/components/parser/   (props changed)
  head/sys/contrib/dev/acpica/components/resources/   (props changed)
  head/sys/contrib/dev/acpica/components/tables/   (props changed)
  head/sys/contrib/dev/acpica/components/utilities/   (props changed)
  head/sys/contrib/dev/acpica/include/   (props changed)
  head/sys/contrib/dev/acpica/os_specific/   (props changed)

Modified: head/sys/contrib/dev/acpica/changes.txt
==============================================================================
--- head/sys/contrib/dev/acpica/changes.txt	Fri Jul 26 21:25:18 2013	(r253689)
+++ head/sys/contrib/dev/acpica/changes.txt	Fri Jul 26 21:34:09 2013	(r253690)
@@ -1,4 +1,76 @@
 ----------------------------------------
+25 July 2013. Summary of changes for version 20130725:
+
+1) ACPICA kernel-resident subsystem:
+
+Fixed a problem with the DerefOf operator where references to FieldUnits 
+and BufferFields incorrectly returned the parent object, not the actual 
+value of the object. After this change, a dereference of a FieldUnit 
+reference results in a read operation on the field to get the value, and 
+likewise, the appropriate BufferField value is extracted from the target 
+buffer.
+
+Fixed a problem where the _WAK method could cause a fault under these 
+circumstances: 1) Interpreter slack mode was not enabled, and 2) the _WAK 
+method returned no value. The problem is rarely seen because most kernels 
+run ACPICA in slack mode.
+
+For the DerefOf operator, a fatal error now results if an attempt is made 
+to dereference a reference (created by the Index operator) to a NULL 
+package element. Provides compatibility with other ACPI implementations, 
+and this behavior will be added to a future version of the ACPI 
+specification.
+
+The ACPI Power Management Timer (defined in the FADT) is now optional. 
+This provides compatibility with other ACPI implementations and will 
+appear in the next version of the ACPI specification. If there is no PM 
+Timer on the platform, AcpiGetTimer returns AE_SUPPORT. An address of 
+zero in the FADT indicates no PM timer.
+
+Implemented a new interface for _OSI support, AcpiUpdateInterfaces. This 
+allows the host to globally enable/disable all vendor strings, all 
+feature strings, or both. Intended to be primarily used for debugging 
+purposes only. Lv Zheng.
+
+Expose the collected _OSI data to the host via a global variable. This 
+data tracks the highest level vendor ID that has been invoked by the BIOS 
+so that the host (and potentially ACPICA itself) can change behaviors 
+based upon the age of the BIOS.
+
+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:  96.2K Code, 27.1K Data, 123.3K Total
+    Debug Version:     184.4K Code, 76.8K Data, 261.2K Total
+  Previous Release:
+    Non-Debug Version:  95.9K Code, 26.9K Data, 122.8K Total
+    Debug Version:     184.1K Code, 76.7K Data, 260.8K Total
+
+
+2) iASL Compiler/Disassembler and Tools:
+
+iASL: Created the following enhancements for the -so option (create 
+offset table):
+1)Add offsets for the last nameseg in each namepath for every supported 
+object type
+2)Add support for Processor, Device, Thermal Zone, and Scope objects
+3)Add the actual AML opcode for the parent object of every supported 
+object type
+4)Add support for the ZERO/ONE/ONES AML opcodes for integer objects
+
+Disassembler: Emit all unresolved external symbols in a single block. 
+These are external references to control methods that could not be 
+resolved, and thus, the disassembler had to make a guess at the number of 
+arguments to parse.
+
+iASL: The argument to the -T option (create table template) is now 
+optional. If not specified, the default table is a DSDT, typically the 
+most common case.
+
+----------------------------------------
 26 June 2013. Summary of changes for version 20130626:
 
 1) ACPICA kernel-resident subsystem:
@@ -65,12 +137,14 @@ longer executed properly because of a me
 initialized correctly. ACPICA BZ 1016. Tomasz Nowicki 
 <tomasz.nowicki at linaro.org>.
 
-Fixed a possible problem with the new extended sleep registers in the ACPI 
+Fixed a possible problem with the new extended sleep registers in the 
+ACPI 
 5.0 FADT. Do not use these registers (even if populated) unless the HW-
 reduced bit is set in the FADT (as per the ACPI specification). ACPICA BZ 
 1020. Lv Zheng.
 
-Implemented return value repair code for _CST predefined objects: Sort the 
+Implemented return value repair code for _CST predefined objects: Sort 
+the 
 list and detect/remove invalid entries. ACPICA BZ 890. Lv Zheng.
 
 Implemented a debug-only option to disable loading of SSDTs from the 
@@ -87,7 +161,8 @@ BZ 1013.
 4) Clear debug buffer global on termination to prevent possible multiple 
 delete. ACPICA BZ 1010.
 
-Standardized all switch() blocks across the entire source base. After many 
+Standardized all switch() blocks across the entire source base. After 
+many 
 years, different formatting for switch() had crept in. This change makes 
 the formatting of every switch block identical. ACPICA BZ 997. Chao Guan.
 
@@ -118,7 +193,8 @@ has a much larger code and data size.
 2) iASL Compiler/Disassembler and Tools:
 
 New utility: Implemented an easily portable version of the acpidump 
-utility to extract ACPI tables from the system (or a file) in an ASCII hex 
+utility to extract ACPI tables from the system (or a file) in an ASCII 
+hex 
 dump format. The top-level code implements the various command line 
 options, file I/O, and table dump routines. To port to a new host, only 
 three functions need to be implemented to get tables -- since this 
@@ -152,7 +228,8 @@ iASL: Added control method and package s
 
 iASL: issue a remark if a non-serialized method creates named objects. If 
 a thread blocks within the method for any reason, and another thread 
-enters the method, the method will fail because an attempt will be made to 
+enters the method, the method will fail because an attempt will be made 
+to 
 create the same (named) object twice. In this case, issue a remark that 
 the method should be marked serialized. NOTE: may become a warning later. 
 ACPICA BZ 909.
@@ -165,10 +242,13 @@ ACPICA BZ 909.
 Fixed a possible buffer overrun during some rare but specific field unit 
 read operations. This overrun can only happen if the DSDT version is 1 -- 
 meaning that all AML integers are 32 bits -- and the field length is 
-between 33 and 55 bits long. During the read, an internal buffer object is 
-created for the field unit because the field is larger than an integer (32 
+between 33 and 55 bits long. During the read, an internal buffer object 
+is 
+created for the field unit because the field is larger than an integer 
+(32 
 bits). However, in this case, the buffer will be incorrectly written 
-beyond the end because the buffer length is less than the internal minimum 
+beyond the end because the buffer length is less than the internal 
+minimum 
 of 64 bits (8 bytes) long. The buffer will be either 5, 6, or 7 bytes 
 long, but a full 8 bytes will be written.
 
@@ -220,7 +300,8 @@ has a much larger code and data size.
 2) iASL Compiler/Disassembler and Tools:
 
 AcpiExec: Added installation of a handler for the SystemCMOS address 
-space. This prevents control method abort if a method accesses this space.
+space. This prevents control method abort if a method accesses this 
+space.
 
 AcpiExec: Added support for multiple EC devices, and now install EC 
 operation region handler(s) at the actual EC device instead of the 
@@ -235,7 +316,8 @@ AcpiExec installs a handler for every po
 Debugger: Enhanced the "handlers" command to display non-root handlers. 
 This change enhances the handlers command to display handlers associated 
 with individual devices throughout the namespace, in addition to the 
-currently supported display of handlers associated with the root namespace 
+currently supported display of handlers associated with the root 
+namespace 
 node.
 
 ASL Test Suite: Several test suite errors have been identified and 
@@ -264,7 +346,8 @@ return from this interface. Handles a po
 ACPI_WAIT_FOREVER is modified by the host to be a value less than 
 "forever". Jung-uk Kim.
 
-Predefined name support: Add allowed/required argument type information to 
+Predefined name support: Add allowed/required argument type information 
+to 
 the master predefined info table. This change adds the infrastructure to 
 enable typechecking on incoming arguments for all predefined 
 methods/objects. It does not actually contain the code that will fully 
@@ -287,10 +370,12 @@ has a much larger code and data size.
 
 2) iASL Compiler/Disassembler and Tools:
 
-iASL: Implemented a new option to simplify the development of ACPI-related 
+iASL: Implemented a new option to simplify the development of ACPI-
+related 
 BIOS code. Adds support for a new "offset table" output file. The -so 
 option will create a C table containing the AML table offsets of various 
-named objects in the namespace so that BIOS code can modify them easily at 
+named objects in the namespace so that BIOS code can modify them easily 
+at 
 boot time. This can simplify BIOS runtime code by eliminating expensive 
 searches for "magic values", enhancing boot times and adding greater 
 reliability. With assistance from Lee Hamel.
@@ -324,11 +409,13 @@ names table (above).
 Fixed a possible regression on some hosts: Reinstated the safe return 
 macros (return_ACPI_STATUS, etc.) that ensure that the argument is 
 evaluated only once. Although these macros are not needed for the ACPICA 
-code itself, they are often used by ACPI-related host device drivers where 
+code itself, they are often used by ACPI-related host device drivers 
+where 
 the safe feature may be necessary.
 
 Fixed several issues related to the ACPI 5.0 reduced hardware support 
-(SOC): Now ensure that if the platform declares itself as hardware-reduced 
+(SOC): Now ensure that if the platform declares itself as hardware-
+reduced 
 via the FADT, the following functions become NOOPs (and always return 
 AE_OK) because ACPI is always enabled by definition on these machines:
   AcpiEnable
@@ -341,13 +428,15 @@ predefined name return values. Both of t
 the related device drivers that invoke these methods:
 1) For the _STR and _MLS names, automatically repair/convert an ASCII 
 string to a Unicode buffer. 
-2) For the _CRS, _PRS, and _DMA names, return a resource descriptor with a 
+2) For the _CRS, _PRS, and _DMA names, return a resource descriptor with 
+a 
 lone end tag descriptor in the following cases: A Return(0) was executed, 
 a null buffer was returned, or no object at all was returned (non-slack 
 mode only). Adds a new file, nsconvert.c
 ACPICA BZ 998. Bob Moore, Lv Zheng.
 
-Resource Manager: Added additional code to prevent possible infinite loops 
+Resource Manager: Added additional code to prevent possible infinite 
+loops 
 while traversing corrupted or ill-formed resource template buffers. Check 
 for zero-length resource descriptors in all code that loops through 
 resource templates (the length field is used to index through the 
@@ -388,7 +477,8 @@ iASL: Implemented compile-time validatio
 predefined names. This new feature validates static package objects 
 returned by the various predefined names defined to return packages. Both 
 object types and package lengths are validated, for both parent packages 
-and sub-packages, if any. The code is similar in structure and behavior to 
+and sub-packages, if any. The code is similar in structure and behavior 
+to 
 the runtime repair mechanism within the AML interpreter and uses the 
 existing predefined name information table. Adds a new file, aslprepkg.c. 
 ACPICA BZ 938.
@@ -405,7 +495,8 @@ assumes zero method arguments in these c
 actual number of arguments without resolution/definition of the method).
 
 Debugger: Added support to display all resources with a single command. 
-Invocation of the resources command with no arguments will now display all 
+Invocation of the resources command with no arguments will now display 
+all 
 resources within the current namespace.
 
 AcpiHelp: Added descriptive text for each ACPICA exception code displayed 
@@ -418,8 +509,10 @@ via the -e option.
 
 Updated the AcpiGetSleepTypeData interface: Allow the \_Sx methods to 
 return either 1 or 2 integers. Although the ACPI spec defines the \_Sx 
-objects to return a package containing one integer, most BIOS code returns 
-two integers and the previous code reflects that. However, we also need to 
+objects to return a package containing one integer, most BIOS code 
+returns 
+two integers and the previous code reflects that. However, we also need 
+to 
 support BIOS code that actually implements to the ACPI spec, and this 
 change reflects this.
 
@@ -463,12 +556,15 @@ attempt to flush data to the output file
 This can cause an infinite loop as the max error count code essentially 
 keeps calling itself.
 
-iASL/Disassembler: Added an option (-in) to ignore NOOP opcodes/operators. 
+iASL/Disassembler: Added an option (-in) to ignore NOOP 
+opcodes/operators. 
 Implemented for both the compiler and the disassembler. Often, the NOOP 
-opcode is used as padding for packages that are changed dynamically by the 
+opcode is used as padding for packages that are changed dynamically by 
+the 
 BIOS. When disassembled and recompiled, these NOOPs will cause syntax 
 errors. This option causes the disassembler to ignore all NOOP opcodes 
-(0xA3), and it also causes the compiler to ignore all ASL source code NOOP 
+(0xA3), and it also causes the compiler to ignore all ASL source code 
+NOOP 
 statements as well.
 
 Debugger: Enhanced the Sleep command to execute all sleep states. This 
@@ -499,7 +595,8 @@ the existing share bit. Reported by Aaro
 Interpreter: Fix Store() when an implicit conversion is not possible. For 
 example, in the cases such as a store of a string to an existing package 
 object, implement the store as a CopyObject(). This is a small departure 
-from the ACPI specification which states that the control method should be 
+from the ACPI specification which states that the control method should 
+be 
 aborted in this case. However, the ASLTS suite depends on this behavior.
 
 Performance improvement for the various FUNCTION_TRACE and DEBUG_PRINT 
@@ -538,15 +635,18 @@ iASL: Disallow a method call as argument
 This change tracks an errata to the ACPI 5.0 document. The AML grammar 
 will not allow the interpreter to differentiate between a method and a 
 method invocation when these are used as an argument to the ObjectType 
-operator. The ACPI specification change is to disallow a method invocation 
+operator. The ACPI specification change is to disallow a method 
+invocation 
 (UserTerm) for the ObjectType operator.
 
 Finish support for the TPM2 and CSRT tables in the headers, table 
 compiler, and disassembler.
 
 Unix user-space OSL: Fix a problem with WaitSemaphore where the timeout 
-always expires immediately if the semaphore is not available. The original 
-code was using a relative-time timeout, but sem_timedwait requires the use 
+always expires immediately if the semaphore is not available. The 
+original 
+code was using a relative-time timeout, but sem_timedwait requires the 
+use 
 of an absolute time.
 
 iASL: Added a remark if the Timer() operator is used within a 32-bit 
@@ -566,14 +666,18 @@ been updated.
 
 Implemented a performance enhancement for ACPI/AML Package objects. This 
 change greatly increases the performance of Package objects within the 
-interpreter. It changes the processing of reference counts for packages by 
+interpreter. It changes the processing of reference counts for packages 
+by 
 optimizing for the most common case where the package sub-objects are 
-either Integers, Strings, or Buffers. Increases the overall performance of 
-the ASLTS test suite by 1.5X (Increases the Slack Mode performance by 2X.) 
+either Integers, Strings, or Buffers. Increases the overall performance 
+of 
+the ASLTS test suite by 1.5X (Increases the Slack Mode performance by 
+2X.) 
 Chao Guan. ACPICA BZ 943.
 
 Implemented and deployed common macros to extract flag bits from resource 
-descriptors. Improves readability and maintainability of the code. Fixes a 
+descriptors. Improves readability and maintainability of the code. Fixes 
+a 
 problem with the UART serial bus descriptor for the number of data bits 
 flags (was incorrectly 2 bits, should be 3).
 
@@ -607,14 +711,17 @@ carats (^). ACPICA BZ 984.
 
 Debugger: Completed a major update for the Disassemble<method> command. 
 This command was out-of-date and did not properly disassemble control 
-methods that had any reasonable complexity. This fix brings the command up 
+methods that had any reasonable complexity. This fix brings the command 
+up 
 to the same level as the rest of the disassembler. Adds one new file, 
 dmdeferred.c, which is existing code that is now common with the main 
 disassembler and the debugger disassemble command. ACPICA MZ 978.
 
 iASL: Moved the parser entry prototype to avoid a duplicate declaration. 
-Newer versions of Bison emit this prototype, so moved the prototype out of 
-the iASL header to where it is actually used in order to avoid a duplicate 
+Newer versions of Bison emit this prototype, so moved the prototype out 
+of 
+the iASL header to where it is actually used in order to avoid a 
+duplicate 
 declaration.
 
 iASL/Tools: Standardized use of the stream I/O functions:
@@ -622,7 +729,8 @@ iASL/Tools: Standardized use of the stre
   2) Ensure proper order of size/count arguments for fread/fwrite
   3) Use test of (Actual != Requested) after all fwrite, and most fread
   4) Standardize I/O error messages
-Improves reliability and maintainability of the code. Bob Moore, Lv Zheng. 
+Improves reliability and maintainability of the code. Bob Moore, Lv 
+Zheng. 
 ACPICA BZ 981.
 
 Disassembler: Prevent duplicate External() statements. During generation 
@@ -744,7 +852,8 @@ ACPICA 
 BZ 846.
 
 Makefiles: Completely removed the obsolete "Linux" makefiles under 
-acpica/generate/linux. These makefiles are obsolete and have been replaced 
+acpica/generate/linux. These makefiles are obsolete and have been 
+replaced 
 by 
 the generic unix makefiles under acpica/generate/unix.
 
@@ -783,7 +892,8 @@ that is a named object. This change fixe
 
 iASL: Fixed a regression where the AML file is not deleted on errors. The 
 AML 
-output file should be deleted if there are any errors during the compiler. 
+output file should be deleted if there are any errors during the 
+compiler. 
 The 
 only exception is if the -f (force output) option is used. ACPICA BZ 974.
 
@@ -838,7 +948,8 @@ ACPICA BZ 969.
 
 Implemented support for complex bit-packed buffers returned from the _PLD 
 (Physical Location of Device) predefined method. Adds a new external 
-interface, AcpiDecodePldBuffer that parses the buffer into a more usable C 
+interface, AcpiDecodePldBuffer that parses the buffer into a more usable 
+C 
 structure. Note: C Bitfields cannot be used for this type of predefined 
 structure since the memory layout of individual bitfields is not defined 
 by 
@@ -853,7 +964,8 @@ during 
 execution of module-level ASL code (code that is executed at table load 
 time.) Lin Ming.
 
-Added the Windows8/Server2012 string for the _OSI method. This change adds 
+Added the Windows8/Server2012 string for the _OSI method. This change 
+adds 
 a 
 new _OSI string, "Windows 2012" for both Windows 8 and Windows Server 
 2012.
@@ -870,14 +982,16 @@ GPE support: Removed an extraneous param
 internal GPE functions. Tang Feng.
 
 Removed the linux makefiles from the unix packages. The generate/linux 
-makefiles are obsolete and have been removed from the unix tarball release 
+makefiles are obsolete and have been removed from the unix tarball 
+release 
 packages. The replacement makefiles are under generate/unix, and there is 
 a 
 top-level makefile under the main acpica directory. ACPICA BZ 967, 912.
 
 Updates for Unix makefiles:
 1) Add -D_FORTIFY_SOURCE=2 for gcc generation. Arjan van de Ven.
-2) Update linker flags (move to end of command line) for AcpiExec utility. 
+2) Update linker flags (move to end of command line) for AcpiExec 
+utility. 
 Guan Chao.
 
 Split ACPICA initialization functions to new file, utxfinit.c. Split from 
@@ -901,13 +1015,15 @@ much larger code and data size.
 
 iASL: Fixed a problem with constant folding for fixed-length constant 
 expressions. The constant-folding code was not being invoked for constant 
-expressions that allow the use of type 3/4/5 opcodes to generate constants 
+expressions that allow the use of type 3/4/5 opcodes to generate 
+constants 
 for expressions such as ByteConstExpr, WordConstExpr, etc. This could 
 result 
 in the generation of invalid AML bytecode. ACPICA BZ 970.
 
 iASL: Fixed a generation issue on newer versions of Bison. Newer versions 
-apparently automatically emit some of the necessary externals. This change 
+apparently automatically emit some of the necessary externals. This 
+change 
 handles these versions in order to eliminate generation warnings.
 
 Disassembler: Added support to decode the DBG2 and CSRT ACPI tables.
@@ -925,7 +1041,8 @@ AE_BAD_PARAMETER was always returned.
 1) ACPICA Kernel-resident Subsystem:
 
 Fixed a possible fault in the return package object repair code. Fixes a 
-problem that can occur when a lone package object is wrapped with an outer 
+problem that can occur when a lone package object is wrapped with an 
+outer 
 package object in order to force conformance to the ACPI specification. 
 Can 
 affect these predefined names: _ALR, _MLS, _PSS, _TRT, _TSS, _PRT, _HPX, 
@@ -969,14 +1086,16 @@ table 
 and FADT errors. Additional deployment to be completed as appropriate in 
 the 
 future. The associated conditional macros are ACPI_BIOS_ERROR and 
-ACPI_BIOS_WARNING. See the ACPICA reference for additional details. ACPICA 
+ACPI_BIOS_WARNING. See the ACPICA reference for additional details. 
+ACPICA 
 BZ 
 843.
 
 Implicit notify support: ensure that no memory allocation occurs within a 
 critical region. This fix moves a memory allocation outside of the time 
 that a 
-spinlock is held. Fixes issues on systems that do not allow this behavior. 
+spinlock is held. Fixes issues on systems that do not allow this 
+behavior. 
 Jung-uk Kim.
 
 Split exception code utilities and tables into a new file, 
@@ -1029,7 +1148,8 @@ generates a 
 runtime device notification in the absence of a BIOS-provided GPE control 
 method (_Lxx/_Exx) or a host-installed handler for the GPE. Implicit 
 notify is 
-provided by ACPICA for Windows compatibility, and is a workaround for BIOS 
+provided by ACPICA for Windows compatibility, and is a workaround for 
+BIOS 
 AML 
 code errors. See the description of the AcpiSetupGpeForWake interface in 
 the 
@@ -1068,9 +1188,11 @@ etc.)
 
 AcpiSrc: Fixed several long-standing Linux code translation issues. 
 Argument 
-descriptions in function headers are now translated properly to lower case 
+descriptions in function headers are now translated properly to lower 
+case 
 and 
-underscores. ACPICA BZ 961. Also fixes translation problems such as these: 
+underscores. ACPICA BZ 961. Also fixes translation problems such as 
+these: 
 (old -> new)
   i_aSL -> iASL
   00-7_f -> 00-7F
@@ -1112,7 +1234,8 @@ additional information. ACPICA BZ 868.
 
 ACPI Tables: Added a new error message for a possible overflow failure 
 during 
-the conversion of FADT 32-bit legacy register addresses to internal common 
+the conversion of FADT 32-bit legacy register addresses to internal 
+common 
 64-
 bit GAS structure representation. The GAS has a one-byte "bit length" 
 field, 
@@ -1149,7 +1272,8 @@ correct External statement.
 Disassembler: Several additional fixes for the External() statement 
 generation 
 related to some ASL operators. Also, order the External() statements 
-alphabetically in the disassembler output. Fixes the External() generation 
+alphabetically in the disassembler output. Fixes the External() 
+generation 
 for 
 the Create* field, Alias, and Scope operators:
  1) Create* buffer field operators - fix type mismatch warning on 
@@ -1173,7 +1297,8 @@ condition.
 
 iASL: Implemented some changes to enhance the IDE support (-vi option.) 
 Error 
-and Warning messages are now correctly recognized for both the source code 
+and Warning messages are now correctly recognized for both the source 
+code 
 browser and the global error and warning counts.
 
 ----------------------------------------
@@ -1182,13 +1307,15 @@ browser and the global error and warning
 
 1) ACPICA Core Subsystem:
 
-Implemented support for multiple notify handlers. This change adds support 
+Implemented support for multiple notify handlers. This change adds 
+support 
 to 
 allow multiple system and device notify handlers on Device, Thermal Zone, 
 and 
 Processor objects. This can simplify the host OS notification 
 implementation. 
-Also re-worked and restructured the entire notify support code to simplify 
+Also re-worked and restructured the entire notify support code to 
+simplify 
 handler installation, handler removal, notify event queuing, and notify 
 dispatch to handler(s). Note: there can still only be two global notify 
 handlers - one for system notifies and one for device notifies. There are 
@@ -1229,7 +1356,8 @@ resource tags within resource descriptor
 StartDependent* 
 descriptor. Reported by Petr Vandrovec. ACPICA BZ 949.
 
-iASL and Preprocessor: Implemented full support for the #line directive to 
+iASL and Preprocessor: Implemented full support for the #line directive 
+to 
 correctly track original source file line numbers through the .i 
 preprocessor 
 output file - for error and warning messages.
@@ -1250,7 +1378,8 @@ ASL Test Suite (ASLTS): Reduce iASL warn
 Update 
 for resource descriptor offset fix above. Update/cleanup error output 
 routines. Enable and send iASL errors/warnings to an error logfile 
-(error.txt). Send all other iASL output to a logfile (compiler.txt). Fixed 
+(error.txt). Send all other iASL output to a logfile (compiler.txt). 
+Fixed 
 several extraneous "unrecognized operator" messages.
 
 ----------------------------------------
@@ -1260,7 +1389,8 @@ several extraneous "unrecognized operato
 1) ACPICA Core Subsystem:
 
 Enhanced the sleep/wake interfaces to optionally execute the _GTS method 
-(Going To Sleep) and the _BFS method (Back From Sleep). Windows apparently 
+(Going To Sleep) and the _BFS method (Back From Sleep). Windows 
+apparently 
 does not execute these methods, and therefore these methods are often 
 untested. It has been seen on some systems where the execution of these 
 methods causes errors and also prevents the machine from entering S5. It 
@@ -1281,8 +1411,10 @@ early. 
 The local FADT table length cannot be set to the common length until the 
 original length has been examined. There is code that checks the table 
 length 
-and sets various fields appropriately. This can affect older machines with 
-early FADT versions. For example, this can cause inadvertent writes to the 
+and sets various fields appropriately. This can affect older machines 
+with 
+early FADT versions. For example, this can cause inadvertent writes to 
+the 
 CST_CNT register. Julian Anastasov.
 
 Fixed a mapping issue related to a physical table override. Use the 
@@ -1295,10 +1427,12 @@ Thomas Renninger, Bob Moore.
 
 Enhanced the automatic return-object repair code: Repair a common problem 
 with 
-predefined methods that are defined to return a variable-length Package of 
+predefined methods that are defined to return a variable-length Package 
+of 
 sub-objects. If there is only one sub-object, some BIOS ASL code 
 mistakenly 
-simply returns the single object instead of a Package with one sub-object. 
+simply returns the single object instead of a Package with one sub-
+object. 
 This new support will repair this error by wrapping a Package object 
 around 
 the original object, creating the correct and expected Package with one 
@@ -1393,7 +1527,8 @@ method. Some machines require that the G
 method 
 is executed. Thomas Renninger.
 
-c) In AcpiLeaveSleepState, now always clear the WAK_STS (wake status) bit. 
+c) In AcpiLeaveSleepState, now always clear the WAK_STS (wake status) 
+bit. 
 Some BIOS code assumes that WAK_STS will be cleared on resume and use it 
 to 
 determine whether the system is rebooting or resuming. Matthew Garrett.
@@ -1429,7 +1564,8 @@ build of ACPICA that supports only the A
 model. 
 See the ACPICA reference for details. ACPICA BZ 942. This option removes 
 about 
-10% of the code and 5% of the static data, and the following hardware ACPI 
+10% of the code and 5% of the static data, and the following hardware 
+ACPI 
 features become unavailable:
     PM Event and Control registers
     SCI interrupt (and handler)
@@ -1442,7 +1578,8 @@ features become unavailable:
 Updated the unix tarball directory structure to match the ACPICA git 
 source 
 tree. This ensures that the generic unix makefiles work properly (in 
-generate/unix).  Also updated the Linux makefiles to match. ACPICA BZ 867.
+generate/unix).  Also updated the Linux makefiles to match. ACPICA BZ 
+867.
 
 Updated the return value of the _REV predefined method to integer value 5 
 to 
@@ -1493,7 +1630,8 @@ the 
 ACPICA reference for additional details. Adds one new file, 
 utilities/utaddress.c. Lin Ming, Bob Moore.
 
-Fixed several issues with the ACPI 5.0 FADT support: Add the sleep Control 
+Fixed several issues with the ACPI 5.0 FADT support: Add the sleep 
+Control 
 and 
 Status registers, update the ACPI 5.0 flags, and update internal data 
 structures to handle an FADT larger than 256 bytes. The size of the ACPI 
@@ -1551,7 +1689,8 @@ summarized below.
 Reduced Hardware Support:
 -------------------------
 
-This support allows for ACPI systems without the usual ACPI hardware. This 
+This support allows for ACPI systems without the usual ACPI hardware. 
+This 
 support is enabled by a flag in the revision 5 FADT. If it is set, ACPICA 
 will 
 not attempt to initialize or use any of the usual ACPI hardware. Note, 
@@ -1571,7 +1710,8 @@ ACPI Tables:
 ------------
 
 All new tables and updates to existing tables are fully supported in the 
-ACPICA headers (for use by device drivers), the disassembler, and the iASL 
+ACPICA headers (for use by device drivers), the disassembler, and the 
+iASL 
 Data Table Compiler. ACPI 5.0 defines these new tables:
 
     BGRT        /* Boot Graphics Resource Table */
@@ -1597,7 +1737,8 @@ The new operation region Space IDs are:
 Resource Descriptors:
 ---------------------
 
-All new ASL resource descriptors are fully supported by the iASL compiler, 
+All new ASL resource descriptors are fully supported by the iASL 
+compiler, 
 the 
 ASL/AML disassembler, and the ACPICA runtime Resource Manager code 
 (including 
@@ -1615,15 +1756,18 @@ ASL/AML Operators, New and Modified:
 
 One new operator is added, the Connection operator, which is used to 
 associate 
-a GeneralPurposeIo or GenericSerialBus resource descriptor with individual 
+a GeneralPurposeIo or GenericSerialBus resource descriptor with 
+individual 
 field objects within an operation region. Several new protocols are 
 associated 
 with the AccessAs operator. All are fully supported by the iASL compiler, 
 disassembler, and runtime ACPICA AML interpreter:
 
-    Connection                      // Declare Field Connection attributes
+    Connection                      // Declare Field Connection 
+attributes
     AccessAs: AttribBytes (n)           // Read/Write N-Bytes Protocol
-    AccessAs: AttribRawBytes (n)        // Raw Read/Write N-Bytes Protocol
+    AccessAs: AttribRawBytes (n)        // Raw Read/Write N-Bytes 
+Protocol
     AccessAs: AttribRawProcessBytes (n) // Raw Process Call Protocol
     RawDataBuffer                       // Data type for Vendor Data 
 fields
@@ -1658,7 +1802,8 @@ drivers and other host OS services:
 AcpiAcquireMutex and AcpiReleaseMutex: These interfaces allow the host OS 
 to 
 acquire and release AML mutexes that are defined in the DSDT/SSDT tables 
-provided by the BIOS. They are intended to be used in conjunction with the 
+provided by the BIOS. They are intended to be used in conjunction with 
+the 
 ACPI 5.0 _DLM (Device Lock Method) in order to provide transaction-level 
 mutual exclusion with the AML code/interpreter.
 
@@ -1705,7 +1850,8 @@ Non-ACPI 5.0 changes for this release:
 
 1) ACPICA Core Subsystem:
 
-Fix a problem with operation region declarations where a failure can occur 
+Fix a problem with operation region declarations where a failure can 
+occur 
 if 
 the region name and an argument that evaluates to an object (such as the 
 region address) are in different namespace scopes. Lin Ming, ACPICA BZ 
@@ -1757,7 +1903,8 @@ now allowed after every <Term> grammar e
 iASL: Fixed some possible aliasing warnings during generation. ACPICA BZ 
 923.
 
-Disassembler: Fix problem with disassembly of the DataTableRegion operator 
+Disassembler: Fix problem with disassembly of the DataTableRegion 
+operator 
 where an inadvertent "Unhandled deferred opcode" message could be 
 generated.
 
@@ -1785,15 +1932,18 @@ Support for ACPI 5.0 in ACPICA has been 
 will 
 be released at the same time that ACPI 5.0 is officially released.
 
-The ACPI 5.0 specification is on track for release in the next few months.
+The ACPI 5.0 specification is on track for release in the next few 
+months.
  
 1) ACPICA Core Subsystem:
 
 Fixed a problem where the maximum sleep time for the Sleep() operator was 
-intended to be limited to two seconds, but was inadvertently limited to 20 
+intended to be limited to two seconds, but was inadvertently limited to 
+20 
 seconds instead.
 
-Linux and Unix makefiles: Added header file dependencies to ensure correct 
+Linux and Unix makefiles: Added header file dependencies to ensure 
+correct 
 generation of ACPICA core code and utilities. Also simplified the 
 makefiles 
 considerably through the use of the vpath variable to specify search 
@@ -1806,8 +1956,10 @@ iASL: Implemented support to check the a
 created to 
 access named Resource Descriptor fields. For example, if a resource field 
 is 
-defined to be two bits, a warning is issued if a CreateXxxxField() is used 
-with an incorrect bit length. This is implemented for all current resource 
+defined to be two bits, a warning is issued if a CreateXxxxField() is 
+used 
+with an incorrect bit length. This is implemented for all current 
+resource 
 descriptor names. ACPICA BZ 930.
   
 Disassembler: Fixed a byte ordering problem with the output of 24-bit and 
@@ -1829,13 +1981,15 @@ AML output). Includes listings, hex file
 
 iASL: Added -G option to the table compiler to allow the compilation of 
 custom 
-ACPI tables. The only part of a table that is required is the standard 36-
+ACPI tables. The only part of a table that is required is the standard 
+36-
 byte 
 ACPI header.
 
 AcpiXtract: Ported to the standard ACPICA environment (with ACPICA 
 headers), 
-which also adds correct 64-bit support. Also, now all output filenames are 
+which also adds correct 64-bit support. Also, now all output filenames 
+are 
 completely lower case.
 
 AcpiExec: Ignore any non-AML tables (tables other than DSDT or SSDT) when 
@@ -1844,7 +1998,8 @@ exception is an FADT. This also fixes a 
 load 
 non-AML tables. ACPICA BZ 932.
 
-AcpiHelp: Added the AccessAs and Offset operators. Fixed a problem where a 
+AcpiHelp: Added the AccessAs and Offset operators. Fixed a problem where 
+a 
 missing table terminator could cause a fault when using the -p option.
 
 AcpiSrc: Fixed a possible divide-by-zero fault when generating file 
@@ -1875,7 +2030,8 @@ Updated the predefined name repair mecha
 _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 
+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 
@@ -1887,9 +2043,11 @@ is. Reported by, and fixed with assistan
 
 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 
+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 
+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 
@@ -1935,11 +2093,13 @@ provides the following functionality:
         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.
+    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 
+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.
 
@@ -1972,7 +2132,8 @@ signature. Now, only allow SSDT, OEMx, a
        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 
+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.
 
@@ -2039,11 +2200,14 @@ device even if there is no corresponding
 EmbeddedControl. Fixes a problem seen on some machines and apparently is 
 compatible with Windows behavior. ACPICA BZ 875.
 
-Added more predefined methods that are eligible for automatic NULL package 
-element removal. This change adds another group of predefined names to the 
+Added more predefined methods that are eligible for automatic NULL 
+package 
+element removal. This change adds another group of predefined names to 
+the 
 list 
 of names that can be repaired by having NULL package elements dynamically 
-removed. This group are those methods that return a single variable-length 
+removed. This group are those methods that return a single variable-
+length 
 package containing simple data types such as integers, buffers, strings. 
 This 
 includes: _ALx, _BCL, _CID,_ DOD, _EDL, _FIX, _PCL, _PLD, _PMD, _PRx, 
@@ -2082,7 +2246,8 @@ data size.
 
 iASL/DTC: Major update for new grammar features. Allow generic data types 
 in 
-custom ACPI tables. Field names are now optional. Any line can be split to 
+custom ACPI tables. Field names are now optional. Any line can be split 
+to 
 multiple lines using the continuation char (\). Large buffers now use 
 line-
 continuation character(s) and no colon on the continuation lines. See the 
@@ -2108,7 +2273,8 @@ region declaration in the same scope. If
 useful 
 since it probably won't be executed. ACPICA BZ 915.
 
-iASL/DTC: Finish support for expression evaluation. Added a new expression 
+iASL/DTC: Finish support for expression evaluation. Added a new 
+expression 
 parser 
 that implements c-style operator precedence and parenthesization. ACPICA 
 bugzilla 
@@ -2129,10 +2295,12 @@ AcpiXtract: Fix for RSDP and dynamic SSD
 "unusual" 
 headers in the acpidump file. Update the header validation to support 
 these 
-tables. Problem introduced in previous AcpiXtract version in the change to 
+tables. Problem introduced in previous AcpiXtract version in the change 
+to 
 support "wrong checksum" error messages emitted by acpidump utility.
 
-iASL: Add a * option to generate all template files (as a synonym for ALL) 
+iASL: Add a * option to generate all template files (as a synonym for 
+ALL) 
 as 
 in 
 "iasl -T *" or "iasl -T ALL".
@@ -2158,7 +2326,8 @@ root object was passed to the AcpiSetupG
 
 Implemented support for "spurious" Global Lock interrupts. On some 
 systems, a 
-global lock interrupt can occur without the pending flag being set. Upon a 
+global lock interrupt can occur without the pending flag being set. Upon 
+a 
 GL 
 interrupt, we now ensure that a thread is actually waiting for the lock 
 before 
@@ -2188,7 +2357,8 @@ header files, disassembler, table compil
 Moore, 
 Lin Ming.
 
-AcpiXtract: Correctly handle embedded comments and messages from AcpiDump. 
+AcpiXtract: Correctly handle embedded comments and messages from 
+AcpiDump. 
 Apparently some or all versions of acpidump will occasionally emit a 
 comment 
 like 
@@ -2209,8 +2379,10 @@ for a user-defined address space. This i
 
 1) ACPI CA Core Subsystem:
 
-Added a mechanism to defer _REG methods for some early-installed handlers. 
-Most user handlers should be installed before call to AcpiEnableSubsystem. 
+Added a mechanism to defer _REG methods for some early-installed 
+handlers. 
+Most user handlers should be installed before call to 
+AcpiEnableSubsystem. 
 However, Event handlers and region handlers should be installed after 
 AcpiInitializeObjects. Override handlers for the "default" regions should 
 be 
@@ -2222,15 +2394,18 @@ Implemented an optimization for GPE dete
 simply 
 ignore GPE registers that contain no enabled GPEs -- there is no need to 
 read the register since this information is available internally. This 
-becomes more important on machines with a large GPE space. ACPICA bugzilla 
+becomes more important on machines with a large GPE space. ACPICA 
+bugzilla 
 884. Lin Ming. Suggestion from Joe Liu.
 
-Removed all use of the highly unreliable FADT revision field. The revision 
+Removed all use of the highly unreliable FADT revision field. The 
+revision 
 number in the FADT has been found to be completely unreliable and cannot 
 be 
 trusted. Only the actual table length can be used to infer the version. 
 This 
-change updates the ACPICA core and the disassembler so that both no longer 
+change updates the ACPICA core and the disassembler so that both no 
+longer 
 even look at the FADT version and instead depend solely upon the FADT 
 length.
 
@@ -2278,7 +2453,8 @@ global handlers. installation status -- 
 default 
 or user-installed handler will be used.
 
-iASL: Warn if reserved method incorrectly returns a value. Many predefined 
+iASL: Warn if reserved method incorrectly returns a value. Many 
+predefined 
 names are defined such that they do not return a value. If implemented as 
 a 
 method, issue a warning if such a name explicitly returns a value. ACPICA 
@@ -2311,7 +2487,8 @@ a single screen, instead of help subcomm
 Fixed a race condition between method execution and namespace walks that 
 can 
 possibly cause a fault. The problem was apparently introduced in version 
-20100528 as a result of a performance optimization that reduces the number 
+20100528 as a result of a performance optimization that reduces the 
+number 
 of 
 namespace walks upon method exit by using the delete_namespace_subtree 
 function instead of the delete_namespace_by_owner function used 
@@ -2323,7 +2500,8 @@ Fixed several issues and a possible faul
 method support. History: This support changes a method to "serialized" on 
 the 
 fly if the method generates an AE_ALREADY_EXISTS error, indicating the 
-possibility that it cannot handle reentrancy. This fix repairs a couple of 
+possibility that it cannot handle reentrancy. This fix repairs a couple 
+of 
 issues seen in the field, especially on machines with many cores:
 
     1) Delete method children only upon the exit of the last thread,
@@ -2380,7 +2558,8 @@ much larger code and data size.
 
 iASL: Added generic data types to the Data Table compiler. Add "generic" 
 data 
-types such as UINT32, String, Unicode, etc., to simplify the generation of 
+types such as UINT32, String, Unicode, etc., to simplify the generation 
+of 
 platform-defined tables such as UEFI. Lin Ming.
 
 iASL: Added listing support for the Data Table Compiler. Adds listing 
@@ -2407,15 +2586,18 @@ a handful of new interfaces:
     One new file, evxfgpe.c to consolidate all external GPE interfaces.
 
 See the ACPICA Programmer Reference for full details and programming 
-information. See the new section 4.4 "General Purpose Event (GPE) Support" 
+information. See the new section 4.4 "General Purpose Event (GPE) 
+Support" 
 for a full overview, and section 8.7 "ACPI General Purpose Event 
 Management" 
-for programming details. ACPICA BZ 858,870,877. Matthew Garrett, Lin Ming, 
+for programming details. ACPICA BZ 858,870,877. Matthew Garrett, Lin 
+Ming, 
 Bob Moore, Rafael Wysocki.
 
 Implemented a new GPE feature for Windows compatibility, the "Implicit 
 Wake 
-GPE Notify". This feature will automatically issue a Notify(2) on a device 
+GPE Notify". This feature will automatically issue a Notify(2) on a 
+device 
 when a Wake GPE is received if there is no corresponding GPE method or 
 handler. ACPICA BZ 870.

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-head mailing list