Fixes a possible memory leak in the interpreter for 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 both iASL and the other compiler do not allow this.
The interpreter will truncate the package to the defined size (and issue an
error message), but can leave the extra objects undeleted if they have been
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.
Fixes a compatibility issue when the same buffer or string is
stored to itself. This has been seen in the field. Previously,
ACPICA would zero out the buffer/string. Now, the operation is
treated as a noop. ACPICA BZ 803. Lin Ming.
Allows multiple additional search paths for include files. Directories
are searched in the order specified on the command line (after the
local directory is searched.)
Add limited support for executable AML code that exists outside of
any control method. This type of code has been illegal since ACPI 2.0.
The code must exist in an If/Else/While block. All AML tables are
supported, including tables that are dynamically loaded.
ACPICA BZ 762. Lin Ming.
Since PM2 control is an optional register, ignore an AE_BAD_ADDRESS
exception from any writes to it. Affects writes to the BM arbitration
bit. ACPICA BZ 799.
Add IVRS,MSCT,UEFI,WAET,WDAT.
Updated several existing tables for ACPI 4.0-related changes.
Added document references for all tables not defined in ACPI spec.
Fixes a problem with the mechanism that prevents problems if the
AcpiTerminate interface is inadvertently called more than once before
the ACPICA code is re-initialized. ACPICA BZ 795.
Problem was introduced in 20090625. The _HID and _CID matching code
was broken with the introduction of the string changes for these
IDs. ACPICA BZ 793. Reported by Dana Myers.
Added one new package type, a package that contains a revision number
and a variable number of sub-packages. Restructured the module to
put the sub-package list traversal in a separate function.
Fixes a problem where a predefined method is defined to return a
variable-length Package of sub-packages. If the length is one, the
BIOS code occasionally creates a simple single package with no
sub-packages. This code attempts to fix the problem by wrapping
a new package object around the existing package. ACPICA BZ 790.
This fixes a problem where the code that attempts to repair/convert an
object of incorrect type is only executed on the first time the
predefined method is called. The mechanism that disables warnings
on subsequent calls was interfering with the repair mechanism.
ACPICA BZ 781.
Function AcpiTbPrintTableHeader. Some ACPI tables contain non-printable
characters in one of the string fields of the the header - Signature,
OemId, OemTableId, or CompilerId. Invalid characters are replaced
by '?'. ACPICA BZ 788.
Handler was never invoked. Now invoked if/when host node is deleted.
Data object was not automatically deleted when host node was deleted.
Interface to handler had an unused parameter, removed it.
ACPICA BZ 778.