History log of /src/sys/external/bsd/acpica/dist/compiler/aslerror.c |
Revision | | Date | Author | Comments |
1.22 |
| 24-Aug-2025 |
christos | merge our changes into 20250807
|
1.21 |
| 24-Feb-2025 |
christos | merge conflicts between 2024-08-27 and 2024-12-12
|
1.20 |
| 01-Sep-2023 |
christos | branches: 1.20.6; merge conflicts between 20230628 and 20221020
|
1.19 |
| 10-Dec-2022 |
christos | merge acpica 20220331 to 20221020
|
1.18 |
| 27-Aug-2022 |
christos | merge conflicts between acpica-20211217 and acpica-20220331
|
1.17 |
| 03-Apr-2021 |
christos | Merge local changes with acpica-20210331
|
1.16 |
| 02-Aug-2020 |
christos | branches: 1.16.2; 1.16.4; merge conflicts
|
1.15 |
| 28-Mar-2020 |
christos | merge conflicts
|
1.14 |
| 14-Dec-2019 |
christos | merge conflicts
|
1.13 |
| 15-Oct-2019 |
christos | merge conflicts
|
1.12 |
| 29-Apr-2019 |
christos | merge conflicts
|
1.11 |
| 05-Jan-2019 |
christos | - merge conflicts - change default debug level to normal; the evaluation trace is too noisy
|
1.10 |
| 07-Apr-2018 |
christos | branches: 1.10.2; Merge conflicts; STA methods and fields are not present anymore.
|
1.9 |
| 12-Nov-2017 |
christos | branches: 1.9.2; merge conflicts
|
1.8 |
| 15-Sep-2017 |
christos | merge conflicts
|
1.7 |
| 25-Jan-2017 |
christos | merge conflicts
|
1.6 |
| 09-Jan-2016 |
christos | branches: 1.6.2; 1.6.4; merge new acpica
|
1.5 |
| 18-Aug-2015 |
christos | merge conflicts
|
1.4 |
| 13-Apr-2015 |
christos | resolve conflicts.
|
1.3 |
| 25-Oct-2014 |
christos | branches: 1.3.2; merge conflicts
|
1.2 |
| 22-Mar-2014 |
christos | kill sprintf
|
1.1 |
| 17-Feb-2011 |
jruoho | branches: 1.1.1; Initial revision
|
1.1.1.24 |
| 24-Aug-2025 |
christos | Import 20250807 (previous was 20241212)
|
1.1.1.23 |
| 24-Feb-2025 |
christos | Import new acpica-2024-12-12; previous one was 2024-08-27
|
1.1.1.22 |
| 01-Sep-2023 |
christos | Import acpica-20230628 (last was 20221020)
|
1.1.1.21 |
| 10-Dec-2022 |
christos | Import acpica 2022-10-20
20 October 2022. Summary of changes for version 20221020:
This release is available at https://acpica.org/downloads
0) Global changes:
Allow disabling of -Werror. For distro maintainers having `-Werror` can delay update of GCC. Since every GCC release might add new warnings that were not yet captured, it might break the build of packages. With this change, distros can now build with `NOWERROR=TRUE` instead of patching either the errors or the makefiles. The default behavior keeps on using `-Werror`.
1) ACPICA kernel-resident subsystem:
Added support for FFH Operation Region special context data. FFH(Fixed Function Hardware) Opregion is approved to be added in ACPI 6.5 via code first approach[1]. It requires special context data similar to GPIO and Generic Serial Bus as it needs to know platform specific offset and length.
Reverted this commit "executer/exsystem: Warn about sleeps greater than 10 ms." Due to user complaints about valid sleeps greater than 10ms seen in some existing machines -- generating lots of warnings.
Do not touch VGA memory when EBDA < 1KiB. The ACPICA code assumes that EBDA region must be at least 1KiB in size. Because this is not guaranteed, it might happen that while scanning the memory for RSDP pointer, the kernel touches memory above 640KiB. This is unwanted as the VGA memory range may not be decoded or even present when running under virtualization.
Check that EBDA pointer is in valid memory. If the memory at 0x40e is uninitialized, the retrieved physical memory address of EBDA may be beyond the low memory (i.e. above 640K). If so, the kernel may unintentionally access the VGA memory, that might not be decoded or even present in case of virtualization.
2) iASL Compiler/Disassembler and ACPICA tools:
Completed the existing partial support for the CDAT "table". Although this isn't technically an ACPI table (It doesn't go into the XSDT), it is possible to support this table in the Data Table compiler. Created one new file, "utilities/utcksum.c", used to centralize checksum generation/validation into one location. Includes changes to makefiles and MSVC project files.
Updated support for the IORT table - update to version E.e
Added CXL 3.0 structures (CXIMS & RDPAS) to the CEDT table
iASL: Added CCEL table to both compiler/disassembler.
iASL: NHLT table: Fixed compilation of optional undocumented fields
iASL: Fix iASL compile error due to ACPI_TDEL_OFFSET. Commit # 10e4763 ("iASL: Add CCEL table to both compiler/disassembler") introduced the iASL build issue. The issue is due to using ACPI_TDEL_OFFSET for CCEL table member reference. To fix it, change ACPI_TDEL_OFFSET with ACPI_CCEL_OFFSET.
|
1.1.1.20 |
| 27-Aug-2022 |
christos | Import acpica-2022-03-31
|
1.1.1.19 |
| 03-Apr-2021 |
christos | 31 March 2021. Summary of changes for version 20210331:
This release is available at https://acpica.org/downloads, and includes all ACPI 6.4 support
1) ACPICA kernel-resident subsystem: ACPI 6.4: iASL: deprecate DDBHandleObj keyword Always create namespace nodes using AcpiNsCreateNode(). ACPICA is allocating an object using kmalloc(), but then frees it using kmem_cache_free(<"Acpi-Namespace" kmem_cache>). This is wrong. Fixed a race condition in generic serial bus operation region handler. Fixed by Hans de Goede.
2) iASL Compiler/Disassembler and ACPICA tools:
ACPI 6.4: NFIT: add Location Cookie field ACPI 6.4: HMAT: add new fields/flags ACPI 6.4: Add new flags in SRAT ACPI 6.4: add SDEV secure access components ACPI 6.4: add Csi2Bus resource template ACPI 6.4: add support for PHAT table ACPI 6.4: add support for PMTT table Add disassembly support for the IVRS table. Compilation of the table is not yet complete. Fixed a potential infinite loop due to type mismatch. The for-loop is using a UINT8 counter and comparing the upper limit against a UINT32 AslGbl_ExpectedMessagesIndex maximum. In the case where AslGbl_ExpectedMessagesIndex is > 255 the counter i will wrap around to zero and the loop will never exit. I suspect the AslGbl_ExpectedMessagesIndex is never that high, but fixing this does future proof the code and cleans up static analysis warnings.Colin King.
iASL/TableCompiler: update it with IORT table E.b revision changes. From shamiali2008. iASL/TableCompiler: Add compilation support for the VIOT table. Signed-off-by: Jean-Philippe Brucker. iASL/TableCompiler: Add compilation support for CEDT table. Also, update the CEDT template.
|
1.1.1.18 |
| 02-Aug-2020 |
christos | VERSION 20200717 Submitted by Bob Moore on 17 July, 2020 - 13:35
17 July 2020. Summary of changes for version 20200717:
1) 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
2) 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.
VERSION 20200528 Submitted by Bob Moore on 28 May, 2020 - 13:24
28 May 2020. Summary of changes for version 20200528:
1) 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
2) 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]
|
1.1.1.17 |
| 28-Mar-2020 |
christos |
|
1.1.1.16 |
| 14-Dec-2019 |
christos |
|
1.1.1.15 |
| 15-Oct-2019 |
christos |
|
1.1.1.14 |
| 29-Apr-2019 |
christos |
|
1.1.1.13 |
| 05-Jan-2019 |
christos | 13 December 2018. Summary of changes for version 20181213:
1) ACPICA Kernel-resident Subsystem:
Fixed some buffer length issues with the GenericSerialBus, related to two of the bidirectional protocols: AttribRawProcessBytes and AttribRawBytes, which are rarely seen in the field. For these, the LEN field of the ASL buffer is now ignored. Hans de Goede
Implemented a new object evaluation trace mechanism for control methods and data objects. This includes nested control methods. It is particularly useful for examining the ACPI execution during system initialization since the output is relatively terse. The flag below enables the output of the trace via the ACPI_DEBUG_PRINT_RAW interface: #define ACPI_LV_EVALUATION 0x00080000
Examples: Enter evaluation : _SB.PCI0._INI (Method) Exit evaluation : _SB.PCI0._INI Enter evaluation : _OSI (Method) Exit evaluation : _OSI Enter evaluation : _SB.PCI0.TEST (Method) Nested method call : _SB.PCI0.NST1 Exit nested method : _SB.PCI0.NST1 Exit evaluation : _SB.PCI0.TEST
Added two recently-defined _OSI strings. See https://docs.microsoft.com/en-us/windows-hardware/drivers/acpi/winacpi- osi. "Windows 2018" "Windows 2018.2"
Update for buffer-to-string conversions via the ToHexString ASL operator. A "0x" is now prepended to each of the hex values in the output string. This provides compatibility with other ACPI implementations. The ACPI specification is somewhat vague on this issue. Example output string after conversion: "0x01,0x02,0x03,0x04,0x05,0x06"
Return a run-time error for TermArg expressions within individual package elements. Although this is technically supported by the ASL grammar, other ACPI implementations do not support this either. Also, this fixes a fault if this type of construct is ever encountered (it never has been).
2) iASL Compiler/Disassembler and Tools:
iASL: Implemented a new compile option (-ww) that will promote individual warnings and remarks to errors. This is intended to enhance the firmware build process.
AcpiExec: Implemented a new command-line option (-eo) to support the new object evaluation trace mechanism described above.
Disassembler: Added support to disassemble OEMx tables as AML/ASL tables instead of a "unknown table" message.
AcpiHelp: Improved support for the "special" predefined names such as _Lxx, _Exx, _EJx, _T_x, etc. For these, any legal hex value can now be used for "xx" and "x".
|
1.1.1.12 |
| 07-Apr-2018 |
christos |
|
1.1.1.11 |
| 12-Nov-2017 |
christos |
|
1.1.1.10 |
| 15-Sep-2017 |
christos |
|
1.1.1.9 |
| 25-Jan-2017 |
christos | One more time in the right place...
|
1.1.1.8 |
| 09-Jan-2016 |
christos | import new acpica:
|
1.1.1.7 |
| 18-Aug-2015 |
christos |
|
1.1.1.6 |
| 13-Apr-2015 |
christos |
|
1.1.1.5 |
| 25-Oct-2014 |
christos |
|
1.1.1.4 |
| 27-Dec-2013 |
christos | import new acpica
|
1.1.1.3 |
| 28-Jun-2011 |
jruoho | branches: 1.1.1.3.2; 1.1.1.3.12; 1.1.1.3.16; Import ACPICA 20110623.
Selected changes since 20110211 include, among other things, fixes to _PRW parsing, fix to a regression with the Load() operator, improvements in NULL package element removal, support for "spurious" global lock interrupts, execution of orphaned _REG methods under acpiec(4), and smaller iasl(8) improvements.
|
1.1.1.2 |
| 17-Feb-2011 |
jruoho | branches: 1.1.1.2.2; 1.1.1.2.4; 1.1.1.2.8; Import 20110211.
|
1.1.1.1 |
| 17-Feb-2011 |
jruoho | Reimport ACPICA 20100528 to a new location.
|
1.1.1.3.16.1 |
| 18-May-2014 |
rmind | sync with head
|
1.1.1.3.12.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.1.1.3.12.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.1.1.3.2.1 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.1.1.2.8.2 |
| 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.1.1.2.8.1 |
| 17-Feb-2011 |
jruoho | file aslerror.c was added on branch jruoho-x86intr on 2011-06-06 09:08:50 +0000
|
1.1.1.2.4.2 |
| 05-Mar-2011 |
rmind | sync with head
|
1.1.1.2.4.1 |
| 17-Feb-2011 |
rmind | file aslerror.c was added on branch rmind-uvmplock on 2011-03-05 20:54:23 +0000
|
1.1.1.2.2.2 |
| 17-Feb-2011 |
bouyer | Sync with HEAD
|
1.1.1.2.2.1 |
| 17-Feb-2011 |
bouyer | file aslerror.c was added on branch bouyer-quota2 on 2011-02-17 12:00:18 +0000
|
1.3.2.4 |
| 05-Feb-2017 |
skrll | Sync with HEAD
|
1.3.2.3 |
| 19-Mar-2016 |
skrll | Sync with HEAD
|
1.3.2.2 |
| 22-Sep-2015 |
skrll | Sync with HEAD
|
1.3.2.1 |
| 06-Jun-2015 |
skrll | Sync with HEAD
|
1.6.4.1 |
| 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.6.2.1 |
| 20-Mar-2017 |
pgoyette | Sync with HEAD
|
1.9.2.2 |
| 18-Jan-2019 |
pgoyette | Synch with HEAD
|
1.9.2.1 |
| 16-Apr-2018 |
pgoyette | Sync with HEAD, resolve some conflicts
|
1.10.2.3 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.10.2.2 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.10.2.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.16.4.1 |
| 03-Apr-2021 |
thorpej | Sync with HEAD.
|
1.16.2.1 |
| 03-Apr-2021 |
thorpej | Sync with HEAD.
|
1.20.6.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|