Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/external/intel-public/acpica/dist Import ACPICA 20100121.
details: https://anonhg.NetBSD.org/src/rev/69711bd7d8c7
branches: trunk
changeset: 753718:69711bd7d8c7
user: jruoho <jruoho%NetBSD.org@localhost>
date: Thu Apr 08 04:27:32 2010 +0000
description:
Import ACPICA 20100121.
Selected changes between 20090730 and 20100121:
* A "post-order callback" was added to AcpiWalkNamespace().
* The ACPI_INTEGER type was removed and replaced with UINT64. Support for
this type remains (for the time being) for compatibility reasons.
* AcpiGetDevices() was optimized to not run extra _STA methods.
* Fixed possible mutex acquisition errors when running _REG methods.
* iASL was fixed not to fault when the maximum number of errors is
reached.
* Various miscellaneous fixes and improvements, including, for example,
improved object repair capabilities, memory leak fixes, better type
conversions, module-level code execution, etc.
diffstat:
sys/external/intel-public/acpica/dist/changes.txt | 330 ++++-
sys/external/intel-public/acpica/dist/common/adfile.c | 26 +-
sys/external/intel-public/acpica/dist/common/adisasm.c | 161 +-
sys/external/intel-public/acpica/dist/common/adwalk.c | 36 +-
sys/external/intel-public/acpica/dist/common/dmextern.c | 646 +++++++++
sys/external/intel-public/acpica/dist/common/dmrestag.c | 2 +-
sys/external/intel-public/acpica/dist/common/dmtable.c | 5 +-
sys/external/intel-public/acpica/dist/common/dmtbdump.c | 36 +-
sys/external/intel-public/acpica/dist/common/getopt.c | 10 +-
sys/external/intel-public/acpica/dist/compiler/Makefile | 1 +
sys/external/intel-public/acpica/dist/compiler/aslanalyze.c | 10 +-
sys/external/intel-public/acpica/dist/compiler/aslcodegen.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslcompile.c | 33 +-
sys/external/intel-public/acpica/dist/compiler/aslcompiler.h | 10 +-
sys/external/intel-public/acpica/dist/compiler/aslcompiler.l | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslcompiler.y | 4 +-
sys/external/intel-public/acpica/dist/compiler/asldefine.h | 4 +-
sys/external/intel-public/acpica/dist/compiler/aslerror.c | 17 +-
sys/external/intel-public/acpica/dist/compiler/aslfiles.c | 224 ++-
sys/external/intel-public/acpica/dist/compiler/aslfold.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslglobal.h | 13 +-
sys/external/intel-public/acpica/dist/compiler/asllength.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/asllisting.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslload.c | 24 +-
sys/external/intel-public/acpica/dist/compiler/asllookup.c | 10 +-
sys/external/intel-public/acpica/dist/compiler/aslmain.c | 247 ++-
sys/external/intel-public/acpica/dist/compiler/aslmap.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslopcodes.c | 10 +-
sys/external/intel-public/acpica/dist/compiler/asloperands.c | 30 +-
sys/external/intel-public/acpica/dist/compiler/aslopt.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslresource.c | 4 +-
sys/external/intel-public/acpica/dist/compiler/aslrestype1.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslrestype2.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslstartup.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/aslstubs.c | 2 +-
sys/external/intel-public/acpica/dist/compiler/asltransform.c | 63 +-
sys/external/intel-public/acpica/dist/compiler/asltree.c | 4 +-
sys/external/intel-public/acpica/dist/compiler/asltypes.h | 23 +-
sys/external/intel-public/acpica/dist/compiler/aslutils.c | 28 +-
sys/external/intel-public/acpica/dist/debugger/dbdisply.c | 2 +-
sys/external/intel-public/acpica/dist/debugger/dbfileio.c | 7 +-
sys/external/intel-public/acpica/dist/debugger/dbhistry.c | 2 +-
sys/external/intel-public/acpica/dist/debugger/dbstats.c | 4 +-
sys/external/intel-public/acpica/dist/debugger/dbxface.c | 2 +-
sys/external/intel-public/acpica/dist/disassembler/dmbuffer.c | 2 +-
sys/external/intel-public/acpica/dist/disassembler/dmnames.c | 2 +-
sys/external/intel-public/acpica/dist/disassembler/dmobject.c | 2 +-
sys/external/intel-public/acpica/dist/disassembler/dmopcode.c | 6 +-
sys/external/intel-public/acpica/dist/disassembler/dmresrcs.c | 2 +-
sys/external/intel-public/acpica/dist/disassembler/dmutils.c | 120 +-
sys/external/intel-public/acpica/dist/disassembler/dmwalk.c | 107 +-
sys/external/intel-public/acpica/dist/dispatcher/dsfield.c | 12 +-
sys/external/intel-public/acpica/dist/dispatcher/dsinit.c | 4 +-
sys/external/intel-public/acpica/dist/dispatcher/dsmethod.c | 4 +-
sys/external/intel-public/acpica/dist/dispatcher/dsmthdat.c | 12 +-
sys/external/intel-public/acpica/dist/dispatcher/dsobject.c | 29 +-
sys/external/intel-public/acpica/dist/dispatcher/dsutils.c | 2 +-
sys/external/intel-public/acpica/dist/dispatcher/dswexec.c | 2 +-
sys/external/intel-public/acpica/dist/dispatcher/dswload.c | 125 +-
sys/external/intel-public/acpica/dist/dispatcher/dswscope.c | 2 +-
sys/external/intel-public/acpica/dist/dispatcher/dswstate.c | 2 +-
sys/external/intel-public/acpica/dist/events/evevent.c | 2 +-
sys/external/intel-public/acpica/dist/events/evgpe.c | 2 +-
sys/external/intel-public/acpica/dist/events/evgpeblk.c | 6 +-
sys/external/intel-public/acpica/dist/events/evmisc.c | 2 +-
sys/external/intel-public/acpica/dist/events/evregion.c | 93 +-
sys/external/intel-public/acpica/dist/events/evsci.c | 2 +-
sys/external/intel-public/acpica/dist/events/evxface.c | 6 +-
sys/external/intel-public/acpica/dist/events/evxfevnt.c | 6 +-
sys/external/intel-public/acpica/dist/events/evxfregn.c | 6 +-
sys/external/intel-public/acpica/dist/executer/exconfig.c | 20 +-
sys/external/intel-public/acpica/dist/executer/exconvrt.c | 17 +-
sys/external/intel-public/acpica/dist/executer/excreate.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exfield.c | 11 +-
sys/external/intel-public/acpica/dist/executer/exfldio.c | 50 +-
sys/external/intel-public/acpica/dist/executer/exmisc.c | 16 +-
sys/external/intel-public/acpica/dist/executer/exmutex.c | 20 +-
sys/external/intel-public/acpica/dist/executer/exnames.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exoparg1.c | 44 +-
sys/external/intel-public/acpica/dist/executer/exoparg2.c | 6 +-
sys/external/intel-public/acpica/dist/executer/exoparg3.c | 4 +-
sys/external/intel-public/acpica/dist/executer/exoparg6.c | 13 +-
sys/external/intel-public/acpica/dist/executer/exprep.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exregion.c | 68 +-
sys/external/intel-public/acpica/dist/executer/exresnte.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exresolv.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exresop.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exstore.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exstoren.c | 2 +-
sys/external/intel-public/acpica/dist/executer/exstorob.c | 16 +-
sys/external/intel-public/acpica/dist/executer/exsystem.c | 4 +-
sys/external/intel-public/acpica/dist/executer/exutils.c | 24 +-
sys/external/intel-public/acpica/dist/hardware/hwacpi.c | 2 +-
sys/external/intel-public/acpica/dist/hardware/hwgpe.c | 9 +-
sys/external/intel-public/acpica/dist/hardware/hwregs.c | 2 +-
sys/external/intel-public/acpica/dist/hardware/hwsleep.c | 2 +-
sys/external/intel-public/acpica/dist/hardware/hwtimer.c | 4 +-
sys/external/intel-public/acpica/dist/hardware/hwvalid.c | 2 +-
sys/external/intel-public/acpica/dist/hardware/hwxface.c | 2 +-
sys/external/intel-public/acpica/dist/include/acapps.h | 34 +-
sys/external/intel-public/acpica/dist/include/accommon.h | 2 +-
sys/external/intel-public/acpica/dist/include/acconfig.h | 6 +-
sys/external/intel-public/acpica/dist/include/acdispat.h | 2 +-
sys/external/intel-public/acpica/dist/include/acevents.h | 4 +-
sys/external/intel-public/acpica/dist/include/acexcep.h | 2 +-
sys/external/intel-public/acpica/dist/include/acglobal.h | 3 +-
sys/external/intel-public/acpica/dist/include/achware.h | 2 +-
sys/external/intel-public/acpica/dist/include/acnames.h | 2 +-
sys/external/intel-public/acpica/dist/include/acobject.h | 11 +-
sys/external/intel-public/acpica/dist/include/acopcode.h | 2 +-
sys/external/intel-public/acpica/dist/include/acoutput.h | 10 +-
sys/external/intel-public/acpica/dist/include/acparser.h | 2 +-
sys/external/intel-public/acpica/dist/include/acpi.h | 2 +-
sys/external/intel-public/acpica/dist/include/acpredef.h | 2 +-
sys/external/intel-public/acpica/dist/include/acrestyp.h | 4 +-
sys/external/intel-public/acpica/dist/include/acstruct.h | 2 +-
sys/external/intel-public/acpica/dist/include/actbl.h | 2 +-
sys/external/intel-public/acpica/dist/include/actbl2.h | 2 +-
sys/external/intel-public/acpica/dist/include/amlcode.h | 2 +-
sys/external/intel-public/acpica/dist/include/amlresrc.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/accygwin.h | 5 +-
sys/external/intel-public/acpica/dist/include/platform/acefi.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acenv.h | 10 +-
sys/external/intel-public/acpica/dist/include/platform/acfreebsd.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acgcc.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acintel.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/aclinux.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acmsvc.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acos2.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acwin.h | 2 +-
sys/external/intel-public/acpica/dist/include/platform/acwin64.h | 2 +-
sys/external/intel-public/acpica/dist/namespace/nsalloc.c | 2 +-
sys/external/intel-public/acpica/dist/namespace/nsdumpdv.c | 4 +-
sys/external/intel-public/acpica/dist/namespace/nsload.c | 2 +-
sys/external/intel-public/acpica/dist/namespace/nsnames.c | 4 +-
sys/external/intel-public/acpica/dist/namespace/nsobject.c | 2 +-
sys/external/intel-public/acpica/dist/namespace/nsparse.c | 2 +-
sys/external/intel-public/acpica/dist/namespace/nspredef.c | 115 +-
sys/external/intel-public/acpica/dist/namespace/nsrepair.c | 659 ++++++++-
sys/external/intel-public/acpica/dist/namespace/nsrepair2.c | 696 ++++++++++
sys/external/intel-public/acpica/dist/namespace/nssearch.c | 2 +-
sys/external/intel-public/acpica/dist/namespace/nsutils.c | 65 +-
sys/external/intel-public/acpica/dist/namespace/nswalk.c | 221 +-
sys/external/intel-public/acpica/dist/namespace/nsxfobj.c | 14 +-
sys/external/intel-public/acpica/dist/os_specific/service_layers/osunixdir.c | 6 +-
sys/external/intel-public/acpica/dist/os_specific/service_layers/osunixxf.c | 6 +-
sys/external/intel-public/acpica/dist/os_specific/service_layers/oswindir.c | 2 +-
sys/external/intel-public/acpica/dist/os_specific/service_layers/oswintbl.c | 2 +-
sys/external/intel-public/acpica/dist/os_specific/service_layers/oswinxf.c | 6 +-
sys/external/intel-public/acpica/dist/osunixxf.c | 6 +-
sys/external/intel-public/acpica/dist/parser/psargs.c | 4 +-
sys/external/intel-public/acpica/dist/parser/psparse.c | 6 +-
sys/external/intel-public/acpica/dist/parser/psscope.c | 2 +-
sys/external/intel-public/acpica/dist/parser/pstree.c | 2 +-
sys/external/intel-public/acpica/dist/parser/psutils.c | 2 +-
sys/external/intel-public/acpica/dist/parser/pswalk.c | 2 +-
sys/external/intel-public/acpica/dist/parser/psxface.c | 8 +-
sys/external/intel-public/acpica/dist/resources/rsaddr.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rscalc.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rscreate.c | 4 +-
sys/external/intel-public/acpica/dist/resources/rsinfo.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rsio.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rsirq.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rslist.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rsmemory.c | 2 +-
sys/external/intel-public/acpica/dist/resources/rsmisc.c | 2 +-
sys/external/intel-public/acpica/dist/tables/tbfind.c | 2 +-
sys/external/intel-public/acpica/dist/tables/tbinstal.c | 2 +-
sys/external/intel-public/acpica/dist/tools/acpiexec/Makefile | 1 +
sys/external/intel-public/acpica/dist/tools/acpiexec/aecommon.h | 20 +-
sys/external/intel-public/acpica/dist/tools/acpiexec/aeexec.c | 3 +-
sys/external/intel-public/acpica/dist/tools/acpiexec/aehandlers.c | 16 +-
sys/external/intel-public/acpica/dist/tools/acpiexec/aemain.c | 293 ++++-
sys/external/intel-public/acpica/dist/tools/acpiexec/aetables.c | 244 ++-
sys/external/intel-public/acpica/dist/tools/acpiexec/osunixdir.c | 6 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/acpisrc.h | 2 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/ascase.c | 42 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/asconvrt.c | 8 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/asfile.c | 2 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/asmain.c | 6 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/asremove.c | 2 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/astable.c | 16 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/asutils.c | 2 +-
sys/external/intel-public/acpica/dist/tools/acpisrc/osunixdir.c | 6 +-
sys/external/intel-public/acpica/dist/tools/acpixtract/acpixtract.c | 182 +-
sys/external/intel-public/acpica/dist/tools/examples/examples.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utalloc.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utclib.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utcopy.c | 29 +-
sys/external/intel-public/acpica/dist/utilities/utdelete.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utids.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utinit.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utlock.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utmath.c | 30 +-
sys/external/intel-public/acpica/dist/utilities/utmutex.c | 20 +-
sys/external/intel-public/acpica/dist/utilities/utobject.c | 37 +-
sys/external/intel-public/acpica/dist/utilities/utresrc.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utstate.c | 2 +-
sys/external/intel-public/acpica/dist/utilities/utxface.c | 2 +-
199 files changed, 4450 insertions(+), 1498 deletions(-)
diffs (truncated from 11350 to 300 lines):
diff -r a4767311a056 -r 69711bd7d8c7 sys/external/intel-public/acpica/dist/changes.txt
--- a/sys/external/intel-public/acpica/dist/changes.txt Wed Apr 07 22:59:15 2010 +0000
+++ b/sys/external/intel-public/acpica/dist/changes.txt Thu Apr 08 04:27:32 2010 +0000
@@ -1,8 +1,322 @@
----------------------------------------
+21 January 2010. Summary of changes for version 20100121:
+
+1) ACPI CA Core Subsystem:
+
+Added the 2010 copyright to all module headers and signons. This affects
+virtually every file in the ACPICA core subsystem, the iASL compiler, the
+tools/utilities, and the test suites.
+
+Implemented a change to the AcpiGetDevices interface to eliminate unnecessary
+invocations of the _STA method. In the case where a specific _HID is
+requested, do not run _STA until a _HID match is found. This eliminates
+potentially dozens of _STA calls during a search for a particular device/HID,
+which in turn can improve boot times. ACPICA BZ 828. Lin Ming.
+
+Implemented an additional repair for predefined method return values. Attempt
+to repair unexpected NULL elements within returned Package objects. Create an
+Integer of value zero, a NULL String, or a zero-length Buffer as appropriate.
+ACPICA BZ 818. Lin Ming, Bob Moore.
+
+Removed the obsolete ACPI_INTEGER data type. This type was introduced as the
+code was migrated from ACPI 1.0 (with 32-bit AML integers) to ACPI 2.0 (with
+64-bit AML integers). It is now obsolete and this change removes it from the
+ACPICA code base, replaced by UINT64. The original typedef has been retained
+for now for compatibility with existing device driver code. ACPICA BZ 824.
+
+Removed the unused UINT32_STRUCT type, and the obsolete Integer64 field in
+the parse tree object.
+
+Added additional warning options for the gcc-4 generation. Updated the source
+accordingly. This includes some code restructuring to eliminate unreachable
+code, elimination of some gotos, elimination of unused return values, some
+additional casting, and removal of redundant declarations.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 6.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:
+ Non-Debug Version: 87.0K Code, 18.0K Data, 105.0K Total
+ Debug Version: 163.4K Code, 50.8K Data, 214.2K Total
+ Current Release:
+ Non-Debug Version: 87.1K Code, 18.0K Data, 105.1K Total
+ Debug Version: 163.5K Code, 50.9K Data, 214.4K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+No functional changes for this release.
+
+----------------------------------------
+14 December 2009. Summary of changes for version 20091214:
+
+1) ACPI CA Core Subsystem:
+
+Enhanced automatic data type conversions for predefined name repairs. This
+change expands the automatic repairs/conversions for predefined name return
+values to make Integers, Strings, and Buffers fully interchangeable. Also, a
+Buffer can be converted to a Package of Integers if necessary. The nsrepair.c
+module was completely restructured. Lin Ming, Bob Moore.
+
+Implemented automatic removal of null package elements during predefined name
+repairs. This change will automatically remove embedded and trailing NULL
+package elements from returned package objects that are defined to contain a
+variable number of sub-packages. The driver is then presented with a package
+with no null elements to deal with. ACPICA BZ 819.
+
+Implemented a repair for the predefined _FDE and _GTM names. The expected
+return value for both names is a Buffer of 5 DWORDs. This repair fixes two
+possible problems (both seen in the field), where a package of integers is
+returned, or a buffer of BYTEs is returned. With assistance from Jung-uk Kim.
+
+Implemented additional module-level code support. This change will properly
+execute module-level code that is not at the root of the namespace (under a
+Device object, etc.). Now executes the code within the current scope instead
+of the root. ACPICA BZ 762. Lin Ming.
+
+Fixed possible mutex acquisition errors when running _REG methods. Fixes a
+problem where mutex errors can occur when running a _REG method that is in
+the same scope as a method-defined operation region or an operation region
+under a module-level IF block. This type of code is rare, so the problem has
+not been seen before. ACPICA BZ 826. Lin Ming, Bob Moore.
+
+Fixed a possible memory leak during module-level code execution. An object
+could be leaked for each block of executed module-level code if the
+interpreter slack mode is enabled This change deletes any implicitly returned
+object from the module-level code block. Lin Ming.
+
+Removed messages for successful predefined repair(s). The repair mechanism
+was considered too wordy. Now, messages are only unconditionally emitted if
+the return object cannot be repaired. Existing messages for successful
+repairs were converted to ACPI_DEBUG_PRINT messages for now. ACPICA BZ 827.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 6.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:
+ Non-Debug Version: 86.6K Code, 18.2K Data, 104.8K Total
+ Debug Version: 162.7K Code, 50.8K Data, 213.5K Total
+ Current Release:
+ Non-Debug Version: 87.0K Code, 18.0K Data, 105.0K Total
+ Debug Version: 163.4K Code, 50.8K Data, 214.2K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+iASL: Fixed a regression introduced in 20091112 where intermediate .SRC files
+were no longer automatically removed at the termination of the compile.
+
+acpiexec: Implemented the -f option to specify default region fill value.
+This option specifies the value used to initialize buffers that simulate
+operation regions. Default value is zero. Useful for debugging problems that
+depend on a specific initial value for a region or field.
+
+----------------------------------------
+12 November 2009. Summary of changes for version 20091112:
+
+1) ACPI CA Core Subsystem:
+
+Implemented a post-order callback to AcpiWalkNamespace. The existing
+interface only has a pre-order callback. This change adds an additional
+parameter for a post-order callback which will be more useful for bus scans.
+ACPICA BZ 779. Lin Ming. Updated the ACPICA Programmer Reference.
+
+Modified the behavior of the operation region memory mapping cache for
+SystemMemory. Ensure that the memory mappings created for operation regions
+do not cross 4K page boundaries. Crossing a page boundary while mapping
+regions can cause kernel warnings on some hosts if the pages have different
+attributes. Such regions are probably BIOS bugs, and this is the workaround.
+Linux BZ 14445. Lin Ming.
+
+Implemented an automatic repair for predefined methods that must return
+sorted lists. This change will repair (by sorting) packages returned by _ALR,
+_PSS, and _TSS. Drivers can now assume that the packages are correctly sorted
+and do not contain NULL package elements. Adds one new file,
+namespace/nsrepair2.c. ACPICA BZ 784. Lin Ming, Bob Moore.
+
+Fixed a possible fault during predefined name validation if a return Package
+object contains NULL elements. Also adds a warning if a NULL element is
+followed by any non-null elements. ACPICA BZ 813, 814. Future enhancement may
+include repair or removal of all such NULL elements where possible.
+
+Implemented additional module-level executable AML code support. This change
+will execute module-level code that is not at the root of the namespace
+(under a Device object, etc.) at table load time. Module-level executable AML
+code has been illegal since ACPI 2.0. ACPICA BZ 762. Lin Ming.
+
+Implemented a new internal function to create Integer objects. This function
+simplifies miscellaneous object creation code. ACPICA BZ 823.
+
+Reduced the severity of predefined repair messages, Warning to Info. Since
+the object was successfully repaired, a warning is too severe. Reduced to an
+info message for now. These messages may eventually be changed to debug-only.
+ACPICA BZ 812.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 6.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:
+ Non-Debug Version: 85.8K Code, 18.0K Data, 103.8K Total
+ Debug Version: 161.8K Code, 50.6K Data, 212.4K Total
+ Current Release:
+ Non-Debug Version: 86.6K Code, 18.2K Data, 104.8K Total
+ Debug Version: 162.7K Code, 50.8K Data, 213.5K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+iASL: Implemented Switch() with While(1) so that Break works correctly. This
+change correctly implements the Switch operator with a surrounding While(1)
+so that the Break operator works as expected. ACPICA BZ 461. Lin Ming.
+
+iASL: Added a message if a package initializer list is shorter than package
+length. Adds a new remark for a Package() declaration if an initializer list
+exists, but is shorter than the declared length of the package. Although
+technically legal, this is probably a coding error and it is seen in the
+field. ACPICA BZ 815. Lin Ming, Bob Moore.
+
+iASL: Fixed a problem where the compiler could fault after the maximum number
+of errors was reached (200).
+
+acpixtract: Fixed a possible warning for pointer cast if the compiler warning
+level set very high.
+
+----------------------------------------
+13 October 2009. Summary of changes for version 20091013:
+
+1) ACPI CA Core Subsystem:
+
+Fixed a problem where an Operation Region _REG method could be executed more
+than once. If a custom address space handler is installed by the host before
+the "initialize operation regions" phase of the ACPICA initialization, any
+_REG methods for that address space could be executed twice. This change
+fixes the problem. ACPICA BZ 427. Lin Ming.
+
+Fixed a possible memory leak for the Scope() ASL operator. When the exact
+invocation of "Scope(\)" is executed (change scope to root), one internal
+operand object was leaked. Lin Ming.
+
+Implemented a run-time repair for the _MAT predefined method. If the _MAT
+return value is defined as a Field object in the AML, and the field
+size is less than or equal to the default width of an integer (32 or 64),_MAT
+can incorrectly return an Integer instead of a Buffer. ACPICA now
+automatically repairs this problem. ACPICA BZ 810.
+
+Implemented a run-time repair for the _BIF and _BIX predefined methods. The
+"OEM Information" field is often incorrectly returned as an Integer with
+value zero if the field is not supported by the platform. This is due to an
+ambiguity in the ACPI specification. The field should always be a string.
+ACPICA now automatically repairs this problem by returning a NULL string
+within the returned Package. ACPICA BZ 807.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 6.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:
+ Non-Debug Version: 85.6K Code, 18.0K Data, 103.6K Total
+ Debug Version: 161.7K Code, 50.9K Data, 212.6K Total
+ Current Release:
+ Non-Debug Version: 85.8K Code, 18.0K Data, 103.8K Total
+ Debug Version: 161.8K Code, 50.6K Data, 212.4K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+Disassembler: Fixed a problem where references to external symbols that
+contained one or more parent-prefixes (carats) were not handled correctly,
+possibly causing a fault. ACPICA BZ 806. Lin Ming.
+
+Disassembler: Restructured the code so that all functions that handle
+external symbols are in a single module. One new file is added,
+common/dmextern.c.
+
+AML Debugger: Added a max count argument for the Batch command (which
+executes multiple predefined methods within the namespace.)
+
+iASL: Updated the compiler documentation (User Reference.) Available at
+http://www.acpica.org/documentation/. ACPICA BZ 750.
+
+AcpiXtract: Updated for Lint and other formatting changes. Close all open
+files.
+
+----------------------------------------
+03 September 2009. Summary of changes for version 20090903:
+
+1) ACPI CA Core Subsystem:
+
+For Windows Vista compatibility, added the automatic execution of an _INI
+method located at the namespace root (\_INI). This method is executed at
+table load time. This support is in addition to the automatic execution of
+\_SB._INI. Lin Ming.
+
+Fixed a possible memory leak in the interpreter for AML package objects if
+the package initializer list is longer than the defined size of the package.
+This apparently can only happen if the BIOS changes the package size on the
+fly (seen in a _PSS object), as ASL compilers do not allow this. The
+interpreter will truncate the package to the defined size (and issue an error
+message), but previously could leave the extra objects undeleted if they were
+pre-created during the argument processing (such is the case if the package
+consists of a number of sub-packages as in the _PSS.) ACPICA BZ 805.
+
+Fixed a problem seen when a Buffer or String is stored to itself via ASL.
+This has been reported in the field. Previously, ACPICA would zero out the
+buffer/string. Now, the operation is treated as a noop. Provides Windows
+compatibility. ACPICA BZ 803. Lin Ming.
+
+Removed an extraneous error message for ASL constructs of the form
+Store(LocalX,LocalX) when LocalX is uninitialized. These curious statements
+are seen in many BIOSs and are once again treated as NOOPs and no error is
+emitted when they are encountered. ACPICA BZ 785.
+
+Fixed an extraneous warning message if a _DSM reserved method returns a
+Package object. _DSM can return any type of object, so validation on the
+return type cannot be performed. ACPICA BZ 802.
+
+Example Code and Data Size: These are the sizes for the OS-independent
+acpica.lib produced by the Microsoft Visual C++ 6.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:
+ Non-Debug Version: 85.5K Code, 18.0K Data, 103.5K Total
+ Debug Version: 161.6K Code, 50.9K Data, 212.5K Total
+ Current Release:
+ Non-Debug Version: 85.6K Code, 18.0K Data, 103.6K Total
+ Debug Version: 161.7K Code, 50.9K Data, 212.6K Total
+
+2) iASL Compiler/Disassembler and Tools:
+
+iASL: Fixed a problem with the use of the Alias operator and Resource
+Templates. The correct alias is now constructed and no error is emitted.
+ACPICA BZ 738.
+
Home |
Main Index |
Thread Index |
Old Index