Return status from AcpiUtGlobalInitialize. This is used by both
the kernel subsystem and the utilities such as iASL compiler.
The function could possibly fail when the caches are initialized.
Yang Yi.
Fixes a problem introduced in 20080701. If the object being evaluated
(via execute command) is not a method, the debugger can hang while
trying to get non-existent parameters.
Handle the case for the Interrupt resource descriptor where
the ResourceSource argument is omitted but ResourceSourceIndex
is present. Leave room for the Index. BZ 426
The "minimal" descriptors such as EndTag are calculated as 12 bytes
long, but the actual length in the internal descriptor is 16 because
of the round-up to 8 on 64-bit build. BZ 728
Without this change, a table cannot be loaded again once it has been
loaded/unloaded one time. The current mechanism does not unregister
a table upon an unload. During a load, if the same table is found, this
no longer returns an exception. BZ 722
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.