- Update to version 20230628
* IASL/RHCT: Enable dumping and compiling newly added nodes
* RHCT: Add flags, CMO and MMU nodes
* MADT: Add dump and compile support for RISC-V APICs
* MADT: Add RISC-V external interrupt controllers
* Add AML_NO_OPERAND_RESOLVE flag to Timer
* Add a define for size of acpi_srat_generic_affinity DeviceHandle
* Slightly simplify an error message in acpi_ds_result_push()
* Add port definitions for CDAT SSLBIS
* Fix misspelled CDAT DSMAS define
* Add interrupt command to acpiexec
* Detect GED device and keep track of _EVT
* ACPICA: Modify ACPI_STATE_COMMON
* Manually revert after resolving conflicts PR #757 commit 32d875705c8ee8f99fd8b78dbed48633486a7640
* fix for conflict macro definition on zephyr interface
* Fix ACPI_FUNCTION_ENTRY()
* Revert "Fixes for ACPI_FLEX_ARRAY, to eliminate warnings on MSVC"
* Revert "Events: Use spaces instead of tabs to fix indentation"
* Add support for _DSC as per ACPI 6.5
* exserial.c: replace ternary operator with ACPI_MIN()
* ACPICA: Modify ACPI_STATE_COMMON
* Fix GCC 12 dangling-pointer warning
* build: added module name for zephyr build system
* Revert "Move ACPI_FUNCTION_ENTRY to function entry"
* Move ACPI_FUNCTION_ENTRY to function entry
* iASL/MADT: Add dump and compile support for LoongArch APICs
* iasl: check Offset before Subtable dereference
OBS-URL: https://build.opensuse.org/request/show/1146101
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=154
- update to 20220331:
For the ASL Sleep() operator, issue a warning if the sleep value is
greater than 10 Milliseconds. Quick boottime is important, so warn about
sleeps greater than 10 ms. Distribution Linux kernels reach initrd in 350
ms, so excessive delays should be called out. 10 ms is chosen randomly,
but three of such delays would already make up ten percent of the
boottime.
Namespace: Avoid attempting to walk the Namespace if the Namespace does
not exist.
AML interpreter/iASL compiler: Add new Acpi 6.4 semantics for the
LoadTable and Load operators. DDB_HANDLE is gone, now loadtable returns a
pass/fail integer. Now load returns a pass/fail integer, as well as
storing the return value in an optional 2nd argument.
Headers: Use uintptr_t and offsetof() in Linux kernel builds. To avoid
"performing pointer subtraction with a null pointer has undefined
behavior" compiler warnings, use uintptr_t and offsetof() that are always
available during Linux kernel builds to define ACPI_UINTPTR_T and the
ACPI_TO_INTEGER() and ACPI_OFFSET() macros when building the ACPICA code
in the Linux kernel.
Added support for the Windows 11 _OSI string ("Windows 2021"). Submitted
by superm1.
executer/exsystem: Inform users about ACPI spec violation for the Stall()
operator. Values greater than 100 microseconds violate the ACPI
specification, so warn users about it. From the ACPI Specification
version 6.2 Errata A, 19.6.128 *Stall (Stall for a Short Time)*:
The implementation of Stall is OS-specific, but must not relinquish
control of the processor. Because of this, delays longer than 100
microseconds must use Sleep instead of Stall.
Data Table Compiler/Disassembler: Add support for the APMT table - ARM
Performance Monitoring Unit table. Submitted by @bwicaksononv.
OBS-URL: https://build.opensuse.org/request/show/971251
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=143
- Update to version 20210105
ACPICA kernel-resident subsystem:
* Updated all copyrights to 2021. This affects all ACPICA source code
modules.
iASL Compiler/Disassembler and ACPICA tools:
* ASL test suite (ASLTS): Updated all copyrights to 2021.
* Tools and utilities: Updated all signon copyrights to 2021.
* iASL Table Compiler: Removed support for obsolete ACPI tables: VRTC,
MTMR. Al Stone.
OBS-URL: https://build.opensuse.org/request/show/860540
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=136
- Update to version 20200717
ACPICA kernel-resident subsystem:
* Do not increment OperationRegion reference counts for field units. Recent
server firmware has revealed that this reference count can overflow on
large servers that declare many field units (thousands) under the same
OperationRegion. This occurs because each field unit declaration will add
a reference count to the source OperationRegion. This release solves the
reference count overflow for OperationRegion objects by preventing
fieldUnits from incrementing their parent OperationRegion's reference
count.
* Replaced one-element arrays with flexible-arrays, which were introduced
in C99.
* Restored the readme file containing the directions for generation of
ACPICA from source on MSVC 2017. Updated the file for MSVC 2017. File is
located at: generate/msvc2017/readme.txt
iASL Compiler/Disassembler and ACPICA tools:
* iASL: Fixed a regression found in version 20200214. Prevent iASL from
emitting an extra byte of garbage data when control methods declared a
single parameter type without using braces. This extra byte is known to
cause a blue screen on the Windows AML interpreter.
* iASL: Made a change to allow external declarations to specify the type of
a named object even when some name segments are not defined. This change
allows the following ASL code to compile
(When DEV0 is not defined or not defined yet):
External (\_SB.DEV0.OBJ1, IntObj)
External (\_SB.DEV0, DeviceObj)
* iASL: Fixed a problem where method names in "Alias ()" statement could be
misinterpreted. They are now interpreted correctly as method invocations.
* iASL: capture a method parameter count (Within the Method info segment,
as well as the argument node) when using parameter type lists.
OBS-URL: https://build.opensuse.org/request/show/822707
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=134
- Update to version 20200528
ACPICA kernel-resident subsystem:
Removed old/obsolete Visual Studio files which were used to build the
Windows versions of the ACPICA tools. Since we have moved to Visual
Studio 2017, we are no longer supporting Visual Studio 2006 and 2009
project files. The new subdirectory and solution file are located at:
acpica/generate/msvc2017/AcpiComponents.sln
iASL Compiler/Disassembler and ACPICA tools:
* iASL: added support for a new OperationRegion Address Space (subtype):
PlatformRtMechanism. Support for this new keyword is being released for
early prototyping. It will appear in the next release of the ACPI
specification.
* iASL: do not optimize the NameString parameter of the CondRefOf operator.
In the previous iASL compiler release, the NameString parameter of the
CondRefOf was optimized. There is evidence that some implementations of
the AML interpreter do not perform the recursive search-to-parent search
during the execution of the CondRefOf operator. Therefore, the CondRefOf
operator behaves differently when the NameString parameter is a single
name segment (a NameSeg) as opposed to a full NamePath (starting at the
root scope) or a NameString containing parent prefixes.
* iASL: Prevent an inadvertent remark message. This change prevents a
remark if within a control method the following exist:
1) An Operation Region is defined, and
2) A Field operator is defined that refers to the region.
This happens because at the top level, the Field operator does not
actually create a new named object, it simply references the operation
region.
* Removed support for the acpinames utility. The acpinames was a simple
utility used to populate and display the ACPI namespace without executing
any AML code. However, ACPICA now supports executable opcodes outside of
control methods. This means that executable AML opcodes such as If and
Store opcodes need to be executed during table load. Therefore, acpinames
would need to be updated to match the same behavior as the acpiexec
utility and since acpiexec can already dump the entire namespace (via the
'namespace' command), we no longer have the need to maintain acpinames.
* In order to dump the contents of the ACPI namepsace using acpiexec,
execute the following command from the command line:
acpiexec -b "n" [aml files]
- Refresh parches
OBS-URL: https://build.opensuse.org/request/show/818416
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=132
- Update to version 20190405
iASL: Implemented an enhanced multiple file compilation that combines
named objects from all input files to a single namespace. With this
feature, any unresolved external declarations as well as duplicate named
object declarations can be detected during compilation rather than
generating errors much later at runtime. The following commands are
examples that utilize this feature:
iasl dsdt.asl ssdt.asl
iasl dsdt.asl ssdt1.asl ssdt2.asl
iasl dsdt.asl ssdt*.asl
- Adjusted patch:
M acpica-no-compiletime.patch
OBS-URL: https://build.opensuse.org/request/show/692336
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=119
- Update to version 20190215
Support for ACPI specification version 6.3:
* Add PCC operation region support for the AML interpreter. This adds PCC
operation region support in the AML interpreter and a default handler for
acpiexec. The change also renames the PCC region address space keyword to
PlatformCommChannel.
* Support for new predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG.
These methods provide OSPM with health information and device boot
status.
* PDTT: Add TriggerOrder to the PCC Identifier structure. The field value
defines if the trigger needs to be invoked by OSPM before or at the end
of kernel crash dump processing/handling operation.
* SRAT: Add Generic Affinity Structure subtable. This subtable in the SRAT
is used for describing devices such as heterogeneous processors,
accelerators, GPUs, and IO devices with integrated compute or DMA
engines.
* MADT: Add support for statistical profiling in GICC. Statistical
profiling extension (SPE) is an architecture-specific feature for ARM.
* MADT: Add online capable flag. If this bit is set, system hardware
supports enabling this processor during OS runtime.
* New Error Disconnect Recover Notification value. There are a number of
scenarios where system Firmware in collaboration with hardware may
disconnect one or more devices from the rest of the system for purposes
of error containment. Firmware can use this new notification value to
alert OSPM of such a removal.
* PPTT: New additional fields in Processor Structure Flags. These flags
provide more information about processor topology.
* NFIT/Disassembler: Change a field name from "Address Range" to "Region
Type".
* HMAT updates: make several existing fields to be reserved as well as
rename subtable 0 to "memory proximity domain attributes".
* GTDT: Add support for new GTDT Revision 3. This revision adds information
for the EL2 timer.
* iASL: Update the HMAT example template for new fields.
* iASL: Add support for the new revision of the GTDT (Rev 3).
ACPICA kernel-resident subsystem:
* AML Parser: fix the main AML parse loop to correctly skip erroneous
extended opcodes. AML opcodes come in two lengths: 1-byte opcodes and 2-
byte extended opcodes. If an error occurs during an AML table load, the
AML parser will continue loading the table by skipping the offending
opcode. This implements a "load table at any cost" philosophy.
iASL Compiler/Disassembler and Tools:
* iASL: Add checks for illegal object references, such as a reference
outside of method to an object within a method. Such an object is only
temporary.
* iASL: Emit error for creation of a zero-length operation region. Such a
region is rather pointless. If encountered, a runtime error is also
implemented in the interpeter.
* Debugger: Fix a possible fault with the "test objects" command.
* iASL: Makefile: support parent directory filenames containing embedded
spaces.
* iASL: Update the TPM2 template to revision 4.
* iASL: Add the ability to report specific warnings or remarks as errors.
* Disassembler: Disassemble OEMx tables as actual AML byte code.
Previously, these tables were treated as "unknown table".
* iASL: Add definition and disassembly for TPM2 revision 3.
* iASL: Add support for TPM2 rev 3 compilation.
- Refresh patches
- Run spec-cleaner
OBS-URL: https://build.opensuse.org/request/show/684781
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=117
- Update to version 20180508
ACPICA kernel-resident subsystem:
* Completed the new (recently deployed) package resolution
mechanism for the Load and LoadTable ASL/AML operators. This
fixes a regression that was introduced in version 20180209
that could result in an AE_AML_INTERNAL exception during the
loading of a dynamic ACPI/AML table (SSDT) that contains
package objects.
iASL Compiler/Disassembler and Tools:
* AcpiDump and AcpiXtract: Implemented support for ACPI tables
larger than 1 MB. This change allows for table offsets within
the acpidump file to be up to 8 characters. These changes are
backwards compatible with existing acpidump files.
version 20180427
ACPICA kernel-resident subsystem:
* Debugger: Added support for Package objects in the "Test
Objects" command. This command walks the entire namespace and
evaluates all named data objects (Integers, Strings, Buffers,
and now Packages).
* Improved error messages for the namespace root node.
Originally, the root was referred to by the confusing string
"\___". This has been replaced by "Namespace Root" for
clarification.
* Fixed a potential infinite loop in the AcpiRsDumpByteList
function. Colin Ian King <colin.king@canonical.com>.
iASL Compiler/Disassembler and Tools:
* iASL: Implemented support to detect and flag illegal forward
references. For compatibility with other ACPI implementations,
these references are now illegal at the root level of the DSDT
or SSDTs. Forward references have always been illegal within
control methods. This change should not affect existing
ASL/AML code because of the fact that these references
have always been illegal in the other ACPI implementation.
* iASL: Added error messages for the case where a table OEM ID
and OEM TABLE ID strings are longer than the ACPI-defined length.
Previously, these strings were simply silently truncated.
* iASL: Enhanced the -tc option (which creates an AML hex file
in C, suitable for import into a firmware project):
1) Create a unique name for the table, to simplify use of
multiple SSDTs.
2) Add a protection #ifdef in the file, similar to a .h
header file. With assistance from Sami Mujawar,
sami.mujawar@arm.com and Evan Lloyd, evan.lloyd@arm.com
* AcpiExec: Added a new option, -df, to disable the local
fault handler. This is useful during debugging, where it may
be desired to drop into a debugger on a fault.
OBS-URL: https://build.opensuse.org/request/show/612384
OBS-URL: https://build.opensuse.org/package/show/hardware/acpica?expand=0&rev=114