Tables - emit additional information about the ACPI tables, including
the owner ID and flags decode.
Unload - reimplemented to use the new AcpiUnloadParentTable external
interface.
Add AcpiLoadTable and AcpiUnloadParentTable to support host-directed
dynamic table load/unload. Intended to support hotplug addition
and removal of SSDTs.
These new interfaces will be deployed across ACPICA in order to
point a finger directly at any detected BIOS issues -- such as
issues with ACPI tables, etc. ACPICA BZ 843.
This interface will block until asynchronous events like notifies
and GPEs are complete. Within ACPICA, it is called before a notify or GPE
handler is removed. ACPICA BZ 868.
For include files, merge the prefix pathname with the file pathname.
Convert backslashes in all pathnames to forward slashes, for
readability.
Include file pathname changes affect both #include and Include()
type operators.
This change adds support to allow multiple notify handlers on
Device, ThermalZone, and Processor objects. Also re-worked and
restructured the entire notify support code for handler installation,
handler removal, notify event queuing, and notify dispatch to handler.
Lin Ming, Bob Moore, Rafael Wysocki.
Enhanced the sleep/wake interfaces to optionally execute the _GTS
method (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 is therefore suggested that host
operating systems do not execute these methods by default. In the
future, perhaps these methods can be optionally executed based on
the age of the system and/or what is the newest version of Windows
that the BIOS asks for via _OSI.
Repair a common problem with objects that are defined to
return a variable-length Package of sub-objects. If there is
only one sub-object, some BIOS code mistakenly simply declares
the single object instead of a Package with one sub-object.
This function attempts to repair this error by wrapping a
Package object around the original object, creating the
correct and expected Package with one sub-object.
Changed the METHOD_NAME* defines that define a full pathname to the
method to METHOD_PATHNAME* in order to make it clear that it is not a simple
4-character ACPI name. Used for the various sleep/wake methods.
The functions for the original/legacy sleep/wake registers are
in hwsleep.c, and the functions for the new extended FADT V5
sleep registers are in hwesleep.c
Adds AcpiHwExecuteSleepMethod to handle the various sleep
methods such as _GTS, _BFS, _WAK, and _SST. Removes the specialized
functions previously used for each of these methods.
The execution of ACPI global control methods _GTS and _BFS is
currently tied to the preparation to enter a sleep state and to the
leaving of the sleep state, respectively. However, these functions
are called before disabling the nonboot CPUs and after enabling
them, respectively (in fact, on ACPI 1.0x systems the first of them
ought to be called before suspending devices), while according to the
ACPI specification, _GTS is to be executed right prior to entering
the system sleep state and _BFS is to be executed right after the
platform firmware has returned control to the OS on wake up.
Move the execution of _GTS and _BFS to the right places.
Adds a new external function, AcpiEnterSleepStatePrep.
Rafael Wysocki.
This interface allows the host to override a table via a physical
address, instead of the logical address required by
AcpiOsTableOverride. This simplifies the host implementation.
Initial implementation by Thomas Renninger. ACPICA implementation
creates a single function for table overrides that attempts
both a logical and a physical override.
This change expands AcpiOsReadMemory and AcpiOsWriteMemory to
a full 64 bits. This allows 64 bit transfers via the AcpiRead
and AcpiWrite interfaces. Note: The internal AcpiHwRead and
AcpiHwWrite interfaces remain at 32 bits, because 64 bits is not
needed to access the standard ACPI registers.
Allows drivers to determine if any memory or I/O addresses will
conflict with addresses used by ACPI operation regions.
Introduces a new interface, AcpiCheckAddressRange.
Integrate some late changes in the V5 (ACPI 5.0) FADT within the
ACPI 5.0 specification. Includes
changes to 2 flags and adds the sleep control/status registers.
Increases the size of the FADT to 0x10C.