Fix the ordering of the ASCII names in the table to match the actual
mutex IDs. Used by AcpiUtGetMutexName, a function used for debug only.
Vegard Nossum. BZ 726
Fixes a possible memory leak when thermal and processor objects
are deleted. Any associated notify handlers (and objects) were
not being deleted. Fiodor Suietov. BZ 506
We now perform a read-change-write of the enable register instead of
simply writing out the cached enable mask. This will prevent inadvertent
enabling of GPEs if a rogue GPE is received during initialization
(before GPE handlers are installed.)
Now calls _CFG method to pass address of table to the AML. Added option
to disable opregion simulation to allow creation of opregion with real
address that was passed to _CFG. All of this allows testing of the Load
and Unload operators from AcpiExec.
Previously, dynamically loaded tables were simply mapped, but on some
machines this memory is corrupted after suspend. Now copy the table to a
local buffer. For OpRegion case, added checksum verify. Use the table length
from the table header, not the region length. For Buffer case, use the
table length also. Dennis Noordsij, Bob Moore. BZ 10734
Fixes problem introduced in 20080123, with fix for Unload operator.
Parse tree object can be already deleted; must use the opcode within
the WalkState.
Fixes problem introduced in 20080514 where the new method argument count
validation mechanism will enter an infinite loop when a GPE method is
dispatched. Problem fixed be removing the obsolete code that passes GPE
block information to the notify handler via the control method parameter
pointer.
Fixes a problem introduced in 20080514 where the status of execution of
_SST is incorrectly returned to the caller. _SST is optional, and if it
is AE_NOT_FOUND, the exception should be ignored. BZ 716
This problem was introduced in 20080514 as a result of the elimination
of the ACPI_NATIVE_UINT type. Code uses a negative array index, which
should be eliminated.
Some BIOSs erroneously reverse the _PRT SourceName and the SourceIndex.
Detect and repair this problem. MS ACPI also allows and repairs this
problem, thus ACPICA must also.
This reverts a change introduced in version 20071019. The table is now loaded
at the namespace root even though this goes against the ACPI specification.
This provides compatibility with other ACPI implementations.
Only "SSDT" is acceptable to the ACPI spec, but tables are seen with
OEMx and null sigs. Therefore, signature validation is worthless.
Apparently MS ACPI accepts such signatures, ACPICA must be compatible.
BZ 10454.
Execution moved from AcpiEnterSleepStatePrep to AcpiEnterSleepState.
_GTS is now executed immediately before the SLP_EN bit is set, as per the
ACPI specification. Luming Yu, BZ 1653
Always disable the GPE, even if we think that that it is already
disabled. It is possible that the AML or some other code has enabled
the GPE unbeknownst to the ACPICA code.
This ensures that all operation regions and devices throughout the
namespace have been initialized before GPEs are enabled.
Alexey Starikovskiy, BZ 9916
Error if too few arguments, warning if too many. This applies only to external
programmatic control method execution, not method-to-method calls within the
AML.
Fixed a problem with the CreateField, CreateXXXField (Bit, Byte, Word, Dword,
Qword), Field, BankField, and IndexField operators when invoked from inside an
executing control method. In this case, these operators created namespace nodes
that were incorrectly left marked as permanent nodes instead of temporary
nodes. This could cause a problem if there is race condition between an exiting
control method and a running namespace walk. (Reported by Linn Crosetto). Fixed
a problem where the CreateField and CreateXXXField operators would incorrectly
allow duplicate names (the name of the field) with no exception generated.
Fixed a problem where an extraneous debug message was produced for package
objects (when debugging enabled). The message "Package List length larger
than NumElements count" is now produced in the correct case, and is also an
error message rather than a debug message. Added a debug message for the
opposite case, where NumElements is larger than the Package List, and the
package has been padded out with NULL elements.