Lines Matching full:and
8 Add complete support for 3 new ACPI tables ? MRRM,ERDT and RIMT (Tony Luck & V L Sunil)
12 Update DMAR and TPM2 tables to support their latest versions (Alexey Neyman and Stuart Yoder)
14 …ring char array, vsnprintf()etc. along with some comments, spelling errors and code alignment (mul…
42 Verify the local environment and GitHub commits are all in sync which was a problem with the second…
55 Correct the dumping of SLIC and DBG2 tables. Contributed by: Al Stone (Fedora) <ahs3@ahs3.net>
57 Add support for QWordPCC and DWordPCC by Jose Marinho (ARM)
61 Detecting FACS in reduced HW mode and allowing setting waking vector thereby waking up from S3 state
63 …g page boundaries when mapping operation regions by Raju Rangoju, Sanath S and Mario Limonciello (…
67 Fix multiple issues with table parsing, compilation and disassembly by Myra DeMere (Google)
81 Get rid of the annoying repeated warning types in MSVC and Windows.
85 Fix a couple of issues with how GPEs are counted and enabled.
87 Add new tables for various architectures/OS, mainly RISC-V and also update many more.
91 Remove redundant checks, duplicated code and fix spellings in various files.
93 Fix flex arrays for C++ compilers and also make ACPICA overall more compatible with different compi…
109 Added port definitions for CDAT SSLBIS. Add upstream port and any port definitions for SSLBIS. Repo…
115 …ly is a dangling pointer and the compiler is correct. However, since we never indirect the pointer…
119 2) iASL Compiler/Disassembler and ACPICA tools:.
121 IASL/RHCT: Enable dumping and compiling newly added nodes. The RHCT table is updated with new nodes…
125 …and keep track of _EVT. The GED device is described by a _HID of ACPI0013. This code traverses the…
149 2) ACPICA tools and utilities:
187 first approach[1]. It requires special context data similar to GPIO and
188 Generic Serial Bus as it needs to know platform specific offset and
208 2) iASL Compiler/Disassembler and ACPICA tools:
215 and MSVC project files.
253 LoadTable and Load operators. DDB_HANDLE is gone, now loadtable returns a
257 Headers: Use uintptr_t and offsetof() in Linux kernel builds. To avoid
259 behavior" compiler warnings, use uintptr_t and offsetof() that are always
260 available during Linux kernel builds to define ACPI_UINTPTR_T and the
261 ACPI_TO_INTEGER() and ACPI_OFFSET() macros when building the ACPICA code
276 2) iASL Compiler/Disassembler and ACPICA tools:
290 Data Table Compiler/Disassembler: Fix a compile issue with the CEDT and
300 bytes of size and then an amount of bytes specified by size. All of the
314 Hardware: Do not flush CPU cache when entering S4 and S5. According to
316 S1, S2, and S3, but the ACPICA code flushes the CPU cache regardless of
322 it is only to a 4-char array, and so trying to read past the 4th
327 ACPIC 6.3 requires special context data similar to GPIO and Generic
328 Serial Bus as it needs to know the internal PCC buffer and its length as
333 2) iASL Compiler/Disassembler and ACPICA tools:
341 iASL: Added full support (compiler and disassembler) for the AGDI ACPI
348 2) Issue error if both the 32-bit and 64-bit DSDT addresses are zero.
366 and it tries to get memory from the OS in order to evaluate a control
368 allocation attempt causes an IRQ work to be queued and a self-IPI to be
374 upfront, when preparing to enter a given sleep state, and saving the data
379 2) iASL Compiler/Disassembler and ACPICA tools:
381 iASL compiler: Updated the check for usage of _CRS, _DIS, _PRS, and _SRS
384 1) If _PRS is present, must have _CRS and _SRS
385 2) If _SRS is present, must have _PRS (_PRS requires _CRS and
388 requires _CRS and _SRS)
392 table. Note: support for Vendor-defined microphone arrays and SNR
414 2) iASL Compiler/Disassembler and ACPICA tools:
416 iasl: Check usage of _CRS, _DIS, _PRS, and _SRS objects (July 2021).
418 1) If _DIS is present, must have a _CRS and _SRS
419 2) If _PRS is present, must have a _CRS, _DIS, and _SRS
420 3) If _SRS is present, must have a _CRS and _DIS
437 Includes support in the table compiler and the disassembler.
446 Includes the MADT and CEDT tables.
463 byte and a 16-byte UUID. This change will simply pass this incoming
466 2) iASL Compiler/Disassembler and ACPICA tools:
469 Table). Includes support in the iASL compiler, the disassembler, and the
494 This release is available at https://acpica.org/downloads, and includes
505 2) iASL Compiler/Disassembler and ACPICA tools:
517 using a UINT8 counter and comparing the upper
520 will wrap around to zero and the loop will never exit. I suspect
522 this does future proof the code and cleans up static analysis
542 2) iASL Compiler/Disassembler and ACPICA tools:
546 Tools and utilities: Updated all signon copyrights to 2021.
560 Note: The implementation of ACPI 6.4 is underway, and is expected to be
571 implicit fallthrough, as well as __attribute__((__fallthrough__)) and
573 Clang also supports this warning and statement attribute, but not the
577 2) iASL Compiler/Disassembler and ACPICA tools:
579 Added improvement to method call analysis by saving the return type and
604 object with a brand new object and attempted to delete the old object by
607 this object in a dangling state and causes a memory leak. Instead of
608 allocating a brand new object and removing the old object, use the
619 The standard GeneralPurposeIo OpRegion and the Cherry Trail - specific
625 type being registered; and the reference design DSDT, from which most
631 and has added the Cherry Trail specific UserDefined(0x93) opregion to its
643 2) iASL Compiler/Disassembler and ACPICA tools:
647 pathname for each namespace node, its type, and the ASL filename and line
672 Added 5 new UUIDs to the known UUID table. All related to NVDIMM and the
695 the first memory access through it and if that "window" does not cover an
697 and a new "window" is mapped to replace it. Next, if the new "window" is
699 future, it will be replaced with yet another "window" and so on. That
700 may lead to a suboptimal sequence of memory mapping and unmapping
705 Added support for 64 bit risc-v compilation. Useful for acpica tools and
724 2) iASL Compiler/Disassembler and ACPICA tools:
780 2) iASL Compiler/Disassembler and ACPICA tools:
811 Studio 2017, we are no longer supporting Visual Studio 2006 and 2009
812 project files. The new subdirectory and solution file are located at:
817 2) iASL Compiler/Disassembler and ACPICA tools:
835 1) An Operation Region is defined, and
842 utility used to populate and display the ACPI namespace without executing
844 control methods. This means that executable AML opcodes such as If and
847 utility and since acpiexec can already dump the entire namespace (via the
863 (AcpiGbl_NextCmdNum and AcpiProtocolLengths) caught by static analyzers.
864 AcpiProtocolLengths was made static, and the definition of
868 2) iASL Compiler/Disassembler and ACPICA tools:
878 iASL: Fixed the required parameters for _NIH and _NIG. Previously, there
879 was a mixup where _NIG required one parameter and _NIH required zero
881 required that _NIH must be called with one parameter and _NIG requires
894 command) and is therefore deprecated. It will be removed in future
924 2) iASL Compiler/Disassembler and ACPICA tools:
928 errors, several seg faults, and enhancements to line parsing within the
929 init file. In addition, each object found in the init file and it's new
950 necessary structure definition for IVHD type 11h and apply correct
959 based on suggestions by David Seifert and Benjamin Berg.
962 causing linking errors. Patch based on suggestions by David Seifert and
966 newer compilers. Patch based on suggestions by David Seifert and Benjamin
969 iASL: fixed type matching between External and Named objects. External
978 a type difference between the external declaration and the actual object
985 by iASL and it doesn't make any sense to enforce what this conflicting
991 applies the operator to the left side of the logical and but not the
996 String + Size will wrap, meaning End < Start, and
1043 2) iASL Compiler/Disassembler and ACPICA tools:
1046 and ParameterTypesList for the Method, Function, and External operators.
1056 declarations and named object declarations. Also, detect type mismatches
1059 1) Type mismatch between external declaration and actual object
1064 a ReturnType and/or ParameterTypesList for any object type other than
1072 inefficient since the named object must be created and deleted each time
1083 iASL: Detect and issue an error message for NameStrings that contain too
1092 iASL: Removed unused parser file and updated msvc2017 project files.
1114 2) iASL Compiler/Disassembler and ACPICA tools:
1118 Tools and utilities: Updated all signon copyrights to 2020.
1146 2) iASL Compiler/Disassembler and ACPICA tools:
1148 iASL: Implemented detection of (and throw an error for) duplicate
1150 Integers, Strings, and Buffers are supported.
1182 takes a table index as an argument and unloads the table. Useful for
1199 2) iASL Compiler/Disassembler and ACPICA tools:
1208 strings, buffers, packages, and field units.
1222 many CPU cores and nested initialization control methods.
1225 checking if the given GPE (as represented by a GPE device handle and a
1226 GPE number) is currently active and dispatching it (if that's the case)
1237 compilers and/or tools. Changed ACPI_TO_POINTER to use ACPI_CAST_PTR
1242 such functions (both in 32-bit mode and 64-bit mode) now that they are
1246 2) iASL Compiler/Disassembler and ACPICA tools:
1249 change is internal and is not intended to result in changes to the
1254 generates all table templates and compile/disassemble/re-compile/binary-
1268 iASL: added support to compile both ASL and data table files in a single
1285 this option, this is essentially dead code and has been removed from the
1288 iASL: ensure that _WAK, _PTS, _TTS, and _Sx are declared only at the root
1294 and _Exx methods are enabled implicitly by ACPICA during system
1311 cleared when its reference counter changes from zero to one and make
1315 2) iASL Compiler/Disassembler and ACPICA tools:
1317 The tool generation process has been migrated to MSVC 2017, and all
1322 iASL: ensure that _WAK, _PTS, _TTS, and _Sx are declared only at the root
1334 dock device is connected at init time (the xhci_hcd and thunderbolt
1341 2) iASL Compiler/Disassembler and ACPICA tools:
1346 some ASL code related to Fields and OperationRegions. This malformed AML
1349 20190329 and 20190405.
1355 allowed if the reference is inside of a method and the declaration is
1367 However, if the declaration and reference are both in the same method or
1368 outside any methods, this is a forward reference and should be marked as
1422 and resume paths. Though this change fixed an issue on suspend path, it
1435 2) iASL Compiler/Disassembler and ACPICA tools:
1460 between Linux and the ACPICA codebases. In order to resolve this
1463 Renamed some internal macros to improve code understanding and
1476 2) iASL Compiler/Disassembler and Tools:
1479 detect and emit an error upon detection of a forward reference from a
1486 properly removed from the global address list and no dangling pointers
1490 improves the code that generates resource descriptor and resource tag
1494 iASL: Removed some uses of strncpy and replaced with memmove. The strncpy
1503 namespace feature (Status): This feature will be released soon, and
1513 ASL tutorial status: Feedback is being gathered internally and the
1524 operation region support in the AML interpreter and a default handler for
1528 Support for new predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG.
1529 These methods provide OSPM with health information and device boot
1538 accelerators, GPUs, and IO devices with integrated compute or DMA
1573 extended opcodes. AML opcodes come in two lengths: 1-byte opcodes and 2-
1579 2) iASL Compiler/Disassembler and Tools:
1601 iASL: Add definition and disassembly for TPM2 revision 3.
1615 2) iASL Compiler/Disassembler and Tools:
1636 of the bidirectional protocols: AttribRawProcessBytes and AttribRawBytes,
1641 and data objects. This includes nested control methods. It is
1676 2) iASL Compiler/Disassembler and Tools:
1679 warnings and remarks to errors. This is intended to enhance the firmware
1690 used for "xx" and "x".
1699 PCI) and Operation regions as well as checking for region conflicts
1704 Device declarations (and other extended opcodes) when an error occurs
1711 2) iASL Compiler/Disassembler and Tools:
1720 best, and such errors could be improperly ignored at compiler time (never
1734 added for the compiler and the disassembler.
1744 2) iASL Compiler/Disassembler and Tools:
1752 and may not be what was intended by the ASL writer.
1768 Updated the execution of the _REG methods during initialization and
1770 ACPI specification and other ACPI implementations:
1783 Since the state of both the SystemIO and SystemMemory address spaces are
1786 the field and provides compatibility with other ACPI implementations. An
1793 worst-case for data that is returned from the serial bus handler, and
1818 2) iASL Compiler/Disassembler and Tools:
1823 Because both the compiler and the interpreter track the offsets
1824 automatically, these Offsets simply refer to the current offset and are
1826 in fact remove the redundant Offset operators and will not emit any AML
1861 errors, and index errors.
1874 2) iASL Compiler/Disassembler and Tools:
1878 after the table load and before executing module-level code blocks.
1881 module-level code and we are executing with the -fi option, the
1898 1) iASL Compiler/Disassembler and Tools:
1905 external and then define the same named object in the same table. For
1913 because there is code that depends on named objects and externals (with
1924 For the Field operators above, the AccessType, LockRule, and UpdateRule
1931 is rarely used in any meaningful way by ASL code, and thus it makes sense
1938 This is in fact very true, and the Unload operator may be completely
1945 Fields are used within any module-level code and the -fi option was
1947 had completely finished loading (and thus the module-level code had
1964 statement (AML opcode), emit an error message, and to simply move on to
1986 Debugger: Reduced the verbosity for errors incurred during table load and
1995 namespace must be searched for matching owner IDs if (and only if) the
2005 2) iASL Compiler/Disassembler and Tools:
2007 iASL, Disassembler, and Template generator: Implemented support for
2012 ACPI tables -- RSDP and FACS. These tables do not contain a standard ACPI
2013 table header and must be special-cased. This was a regression that has
2022 (set debug level). This simplifies the use of this option and matches the
2042 the Load and LoadTable ASL/AML operators. This fixes a regression that
2048 2) iASL Compiler/Disassembler and Tools:
2050 AcpiDump and AcpiXtract: Implemented support for ACPI tables larger than
2063 command. This command walks the entire namespace and evaluates all named
2064 data objects (Integers, Strings, Buffers, and now Packages).
2074 2) iASL Compiler/Disassembler and Tools:
2076 iASL: Implemented support to detect and flag illegal forward references.
2083 iASL: Added error messages for the case where a table OEM ID and OEM
2092 With assistance from Sami Mujawar, sami.mujawar@arm.com and Evan Lloyd,
2122 Cleaned up and simplified the module-level code support. These changes
2137 2) iASL Compiler/Disassembler and Tools:
2142 ASLTS: Updated to use the iASL __LINE__ and __METHOD__ macros. Improves
2152 handling and the module-level AML code support. This allows forward
2157 The new architecture for the AML module-level code has been completed and
2161 table was fully loaded. This solves some ASL code ordering issues and
2164 support is deprecated and is planned to be completely removed later this
2178 ACPI implementations and are thus rarely used by firmware developers. The
2192 2) iASL Compiler/Disassembler and Tools:
2201 conversions and is thus appropriate for folding the ToXXXX operators.
2204 the case where a symbol is declared both locally and as an external
2209 the opposite effect: it disables the new architecture (the default) and
2232 2) iASL Compiler/Disassembler and Tools:
2241 AcpiExec: Restore the original terminal mode after the use of the -v and
2260 Added two recently defined _OSI strings: "Windows 2016" and "Windows
2263 Implemented and deployed a safer version of the C library function
2268 Cleaned up and restructured the global variable file (acglobal.h). There
2272 2) iASL Compiler/Disassembler and Tools:
2316 2) iASL Compiler/Disassembler and Tools:
2323 the current table and the beginning of a new table.
2326 extraction. This initial implementation ignores non-ASCII and non-
2329 TestSuite(ASLTS)/AcpiExec: Fixed and restored the memory usage statistics
2332 run, these memory statistics are recorded and stored in a log file.
2345 Redesigned and implemented an improved ASL While() loop timeout
2349 maximum loop count, and is thus more accurate and constant across
2357 and to fix an off-by-one error. Jung-uk Kim.
2363 2) iASL Compiler/Disassembler and Tools:
2365 Implemented full support for the PDTT, SDEV, and TPM2 ACPI tables. This
2366 includes support in the table disassembler, compiler, and template
2374 acquire the method mutex more than once. Example compiler and runtime
2392 management and error detection. These changes are related to issues seen
2400 enables more detailed and helpful error messages as below, from the
2412 and/or comments within the ACPI table data definition. There exist some
2431 More cleanup and simplification of makefiles
2436 allocation functions to new modules. Two new files, aslallocate.c and
2447 bits were used. Affects the use of GAS structures in the FADT and other
2448 tables, as well as the GAS structures passed to the AcpiRead and
2452 Table). Full support in the iASL Data Table Compiler and disassembler is
2456 2) iASL Compiler/Disassembler and Tools:
2500 compatibility with other ACPI implementations and supports existing
2516 Mutex, Event, and OperationRegion.
2522 Table Manager: Added support to detect and ignore duplicate SSDTs within
2525 EFI and EDK2 support:
2527 Added support for AcpiOsStall, AcpiOsSleep, and AcpiOsGetTimer
2528 Added local support for 64-bit multiply and shift operations
2534 resource manager (AcpiWalkResourceBuffer) to walk and parse this list of
2538 2) iASL Compiler/Disassembler and Tools:
2545 iASL: Added an option (-vx) to "expect" particular remarks, warnings and
2554 iASL: Implemented debugger and table compiler support for the SDEI ACPI
2562 Acpidump: Added support for multiple DSDT and FACS tables. This can occur
2566 unnecessary/verbose text, and emit the actual line number where an error
2592 Tables: Added a mechanism to handle imbalances for the AcpiGetTable and
2595 memory manager is fully running and available). Lv Zheng.
2612 2) iASL Compiler/Disassembler and Tools:
2627 Proximity Domain for the SMMUv3 IORT. Disassembler and Data Table
2637 parsing support. Fixes confusion between "Parse Op" and "Parse Node".
2646 The ACPI specification version 6.2 has been released and is available at
2660 PCCT (New subtables, Extended PCC subspaces (types 3 and 4))
2666 New Resource Descriptors and Resource macros (Compiler/Disassembler):
2693 New UUIDs for processor/cache properties and
2704 Fixed a problem using Device/Thermal objects with the ObjectType and
2713 The values for DUAL_PIC and MULTIPLE_APIC were reversed.
2718 Exported the external interfaces AcpiAcquireMutex and AcpiReleaseMutex.
2724 Example Code and Data Size: These are the sizes for the OS-independent
2726 debug version of the code includes the debug output trace mechanism and
2727 has a much larger code and data size.
2737 2) iASL Compiler/Disassembler and Tools:
2746 iASL and disassembler: Improved the handling of multiple extraneous
2747 parentheses for both ASL input and disassembled ASL output.
2749 Improved the behavior of the iASL compiler and disassembler to detect
2753 opcode. The AML parser has no real way to recover from this, and can
2761 AcpiExec: Improved the Control-C handling and added a handler for
2762 segmentation faults (SIGSEGV). Supports both Windows and Unix-like
2792 2) iASL Compiler/Disassembler and Tools:
2800 ASL and ASL+ compilers are now validated, as well as the disassembler
2807 Perform a binary compare on the legacy AML and the new ASL+ AML
2818 could result in an ACPICA warning (for _CID repair and others). No fault
2820 internal cache) is detected and ignored via object poisoning.
2827 restoring the original behavior and compiler-specific include file in
2830 Example Code and Data Size: These are the sizes for the OS-independent
2832 debug version of the code includes the debug output trace mechanism and
2833 has a much larger code and data size.
2843 2) iASL Compiler/Disassembler and Tools:
2846 tool has been designed, implemented, and included in this release. The
2848 input ASL file are preserved during the conversion process, and included
2855 iASL/Disassembler: Improved the detection and correct disassembly of
2857 operators that originated from ASL Switch/Case/Default operators and
2866 Disassembler: Enhanced the detection and disassembly of resource
2879 legal/licensing module headers and utility/tool signons. This includes
2881 in the ACPICA core subsystem, iASL compiler, all ACPICA utilities, and
2885 2) iASL Compiler/Disassembler and Tools:
2888 containing a reference is used as a target operand within the method (and
2896 confusing and unnecessary. This includes similar removal of HARDWARE_NAME
2912 AML Debugger: Implemented a new mechanism to simplify and enhance
2914 and user-space utilities, as well as remote debug services. This
2926 osgendbg.c -- Example implementation, and used for AcpiExec
2929 and/or BitOffset fields of the GAS are not often used, this change now
2931 registers, registers in other ACPI data tables, and the AcpiRead and
2963 incorrectly detected as invalid at runtime, and a
2971 Example Code and Data Size: These are the sizes for the OS-independent
2973 debug version of the code includes the debug output trace mechanism and
2974 has a much larger code and data size.
2984 2) iASL Compiler/Disassembler and Tools:
2986 Disassembler: Enhanced output by adding the capability to detect and
3018 release and free an ACPI table returned by AcpiGetTable and related
3021 Example Code and Data Size: These are the sizes for the OS-independent
3023 debug version of the code includes the debug output trace mechanism and
3024 has a much larger code and data size.
3034 2) iASL Compiler/Disassembler and Tools:
3056 Disassembler: Improved detection of Resource Templates, Unicode, and
3058 opcode to indicate the originating ASL code, and they must be detected by
3071 -a: compare and display ALL mismatches
3091 prevent infinite loops within the AML interpreter and thus the host OS
3102 Example Code and Data Size: These are the sizes for the OS-independent
3104 debug version of the code includes the debug output trace mechanism and
3105 has a much larger code and data size.
3115 2) iASL Compiler/Disassembler and Tools:
3119 block could be lost and missing from the disassembled output.
3140 and remainder targets are specified, the entire statement cannot be
3142 and ASL+ operators. This mixed statement causes a syntax error when
3148 iASL/Tools: Added support to process AML and non-AML ACPI tables
3149 consistently. For the disassembler and AcpiExec, allow all types of ACPI
3150 tables (AML and data tables). For the iASL -e option, allow only AML
3160 to be math, logical and control AML opcodes that appear outside of any
3163 and the ASL grammar changes to support such code under all scope
3182 implementations, and will be reflected and clarified in the next version
3188 and unload events. Lv Zheng.
3191 Consolidate multiple versions of this functionality and limit possible
3199 Example Code and Data Size: These are the sizes for the OS-independent
3201 debug version of the code includes the debug output trace mechanism and
3202 has a much larger code and data size.
3209 2) iASL Compiler/Disassembler and Tools:
3216 all predefined control methods and names within the current namespace.
3217 This can be useful for debugging problems with ACPI tables and the ACPI
3242 the platform with I/O and memory access. This will allow viewing/dump of
3243 the platform namespace and native execution of ACPI control methods that
3254 Restructured and standardized the C library configuration for ACPICA,
3256 global restructuring of the compiler-dependent and platform-dependent
3261 it may be helpful to examine the existing compiler-dependent and
3285 Processor{}, PowerResource{}, and ThermalZone{}. Lv Zheng.
3292 Example Code and Data Size: These are the sizes for the OS-independent
3294 debug version of the code includes the debug output trace mechanism and
3295 has a much larger code and data size.
3302 2) iASL Compiler/Disassembler and Tools:
3305 Includes disassembler, data table compiler, and header support.
3311 method - Scope{}, Device{}, Processor{}, PowerResource{}, and
3327 and tested before this support can be finally integrated into ACPICA.
3332 and ACPI_MSG_BIOS_WARNING). Lv Zheng.
3337 Example Code and Data Size: These are the sizes for the OS-independent
3339 debug version of the code includes the debug output trace mechanism and
3340 has a much larger code and data size.
3356 and incorrect return values. Lv Zheng. ACPICA BZ 1270.
3359 was added to each of these macros, and the original name has been
3362 resource manager, and the acpihelp utility. ACPICA BZ 1274.
3370 and AML runtime error checking. ACPICA BZ 1273.
3373 Subspace Type2" (Headers, Disassembler, and data table compiler).
3375 Example Code and Data Size: These are the sizes for the OS-independent
3377 debug version of the code includes the debug output trace mechanism and
3378 has a much larger code and data size.
3388 2) iASL Compiler/Disassembler and Tools:
3391 "module-level code" to be created and executed under the various
3393 supported in all known AML interpreters, and the grammar change will
3405 corresponding C operator, and is implemented with the existing AML While
3419 iASL: The _HID/_ADR detection and validation has been enhanced to search
3424 improvement allows better detection and resolution of statements that can
3432 sometimes an extra (and extraneous) set of parentheses were emitted for
3449 Added support for arbitrary bit lengths and bit offsets for registers
3460 NFIT: For ACPI 6.1, updated to add some additional new fields and
3462 FADT: Updated a warning message and set compliance to ACPI 6.1 (Version
3466 HEST: For ACPI 6.1, added new constants and new subtable.
3484 Example Code and Data Size: These are the sizes for the OS-independent
3486 debug version of the code includes the debug output trace mechanism and
3487 has a much larger code and data size.
3497 2) iASL Compiler/Disassembler and Tools:
3519 AcpiXtract: Improved input file validation: detection of binary files and
3542 invocations to be targets of various ASL operators (SuperName and Target
3544 specification, other AML interpreters do not support this behavior and
3559 2) iASL Compiler/Disassembler and Tools:
3578 iASL: Method invocations as ASL Target operands are now disallowed and
3587 Updated all ACPICA copyrights and signons to 2016: Added the 2016
3588 copyright to all source code module headers and utility/tool signons.
3591 ACPICA utilities, and the ACPICA test suite.
3596 entered into the namespace and could cause an interpreter fault when
3599 Example Code and Data Size: These are the sizes for the OS-independent
3601 debug version of the code includes the debug output trace mechanism and
3602 has a much larger code and data size.
3612 2) iASL Compiler/Disassembler and Tools:
3614 Fixed a problem with the compilation of the GpioIo and GpioInt resource
3629 immediately after the table is loaded, instead of batched and executed
3635 for the SystemMemory, SystemIO, and PCI_Config address spaces are now
3637 code to access these address spaces during the table load and module-
3645 SystemIO, and PCI_Config spaces should not require any update. Lv Zheng.
3695 problem and corrects it before the package is returned to the caller that
3702 type. This expands the utility of Concatenate and the Printf/Fprintf
3706 optional and no longer emitted by default. Also, the basic data types of
3711 Example Code and Data Size: These are the sizes for the OS-independent
3713 debug version of the code includes the debug output trace mechanism and
3714 has a much larger code and data size.
3724 2) iASL Compiler/Disassembler and Tools:
3730 and not supported by AML interpreters. Note, this does not affect the
3739 If..Else and large Switch constructs. Thus, the disassembled code more
3757 AcpiExec: Added support for the new module level code behavior and the
3787 transparent to the SyncLevel support and management.
3812 Example Code and Data Size: These are the sizes for the OS-independent
3814 debug version of the code includes the debug output trace mechanism and
3815 has a much larger code and data size.
3825 2) iASL Compiler/Disassembler and Tools:
3828 definition blocks within a single ASL file and the resulting AML file.
3830 use binary AML files: acpiexec, acpixtract, and the AML disassembler. The
3846 iASL: Fixed some code indentation issues for the -ic and -ia options (C
3847 and assembly headers). Now all emitted code correctly begins in column 1.
3860 Debugger: Implemented several changes and bug fixes to assist support for
3863 - Do not enter debug command loop for the help and version commands.
3867 target operands. The operand is resolved and validated that it is legal.
3874 Debugger: limited display of method locals and arguments (LocalX and
3881 Example Code and Data Size: These are the sizes for the OS-independent
3883 debug version of the code includes the debug output trace mechanism and
3884 has a much larger code and data size.
3894 2) iASL Compiler/Disassembler and Tools:
3904 DataTableRegion, Buffer, and Package.
3906 -- Store (Source, Target): Both the source and target operands are
3907 resolved and checked that the operands are both legal. For example,
3916 -- Store (Source, Target): A warning is issued if the source and target
3923 -- For all ASL math and logic operators, the target operand must be a
3931 iASL and Disassembler: Added symbolic (ASL+) support for the ASL Index
3940 and deletion problems on some systems.
3956 Completed development to ensure that the ACPICA Disassembler and Debugger
3964 Debugger: Cleanup output to dump ACPI names and namepaths without any
3967 Removed unnecessary conditional compilations across the Debugger and
3970 The aapits test is deprecated and has been removed from the ACPICA git
3971 tree. The test has never been completed and has not been maintained, thus
3974 A batch of small changes to close bugzilla and other reports:
3978 - ACPI table support: general cleanup and simplification. Lv Zheng, Bob
3982 - Enhance parameter validation for DataTableRegion and LoadTable ASL/AML
3990 - AcpiNames: Fix a regression where some output was missing and no longer
3992 - Debugger: General cleanup and simplification. Lv Zheng.
3995 Example Code and Data Size: These are the sizes for the OS-independent
3997 debug version of the code includes the debug output trace mechanism and
3998 has a much larger code and data size.
4008 2) iASL Compiler/Disassembler and Tools:
4011 were not handled properly and caused load errors. Now, properly invoke
4012 and use the ACPICA auto-reallocate mechanism for ACPI table data
4018 AcpiExec and AcpiNames: Add -l option to load ACPI tables only. For
4027 current namespace objects (Object type and count). This is displayed if
4038 Improved the partitioning between the Debugger and Disassembler
4041 This renames and moves one file, dmobject.c to dbobject.c. Lv Zheng.
4055 executed) where the debugger could enter an infinite loop and eventually
4062 provide casting for these functions and eliminate possible compiler
4068 Example Code and Data Size: These are the sizes for the OS-independent
4070 debug version of the code includes the debug output trace mechanism and
4071 has a much larger code and data size.
4081 2) iASL Compiler/Disassembler and Tools:
4089 to ArgX variables that are not defined by the parent method, and are
4094 have the correct original line numbers and filenames, regardless of any
4097 iASL/Preprocessor: Fixed a couple of issues with comment handling and the
4102 iASL: Added support for the TCPA server table to the table compiler and
4108 Cleaned up the use of the macros NEGATIVE and POSITIVE which were defined
4109 multiple times. The new names are ACPI_SIGN_NEGATIVE and
4139 library functions (such as ACPI_STRLEN, etc.) have been removed and
4143 significantly, improving readability and maintainability.
4148 via the DSDT and/or SSDTs. The primary purpose for this is to replace
4154 table (via FADT 32-bit legacy field) and a "64-bit" table (via the 64-bit
4166 system is seriously buggy and has no FACS.
4175 Updated the definitions of the TCPA and TPM2 ACPI tables to the more
4176 recent TCG ACPI Specification, December 14, 2014. Table disassembler and
4182 Example Code and Data Size: These are the sizes for the OS-independent
4184 debug version of the code includes the debug output trace mechanism and
4185 has a much larger code and data size.
4195 2) iASL Compiler/Disassembler and Tools:
4199 commutative" operators -- Subtract, Divide, Modulo, ShiftLeft, and
4204 just /dev/mem (which may not exist) and /sys/firmware/acpi/tables. Lv
4209 file as a temporary file and passed through #line directives in order to
4210 keep compiler error messages in sync with the input file and line number
4219 directive and the similar (but not the same) "Include" ASL operator.
4221 iASL: Add support for the new OSDT in both the disassembler and compiler.
4227 AcpiHelp: Updated for new NFIT GUIDs, "External" AML opcode, and new
4232 produced by the Index operator. For Buffers and strings, only output the
4248 Implemented runtime argument checking and return value checking for all
4252 Example Code and Data Size: These are the sizes for the OS-independent
4254 debug version of the code includes the debug output trace mechanism and
4255 has a much larger code and data size.
4265 2) iASL Compiler/Disassembler and Tools:
4268 names (argument count validation and return value typechecking.)
4270 iASL disassembler and table compiler: implemented support for all new
4273 iASL disassembler and table compiler: Added ACPI 6.0 changes to existing
4278 binary file as input and emits a named ascii buffer object into the ASL
4306 deprecated in the future, and is now defined to be 1 for ACPI 1.0, and 2
4307 for ACPI 2.0 and later. It should never be used to differentiate or
4325 2) iASL Compiler/Disassembler and Tools:
4333 in both the Data Table compiler and the disassembler. The SLIC table
4334 support now conforms to "Microsoft Software Licensing Tables (SLIC and
4336 following the ACPI header is now defined to be "Proprietary Data", and as
4341 following the ACPI header is defined to be "Proprietary Data", and can
4376 Updated all ACPICA copyrights and signons to 2014. Added the 2014
4377 copyright to all module headers and signons, including the standard Linux
4379 iASL compiler, all ACPICA utilities, and the test suites.
4389 temporarily disable it. Raw handlers allow enabling and disabling of a
4399 Unix makefiles: Separate option to disable optimizations and
4401 NOOPT disable option and creates a separate flag (NOFORTIFY) for this
4417 This release introduces and implements language extensions to ASL that
4418 provide support for symbolic ("C-style") operators and expressions. These
4422 1) iASL Compiler/Disassembler and Tools:
4430 as the standard escapes for quote and backslash. Ensures that the
4434 translated to existing AML Concatenate and Store operations. Printf
4455 ASL code to be removed in order to help locate and identify problem
4456 devices and/or code. David E. Box.
4460 objects as necessary for debugging and testing different ASL code paths
4468 (C-style) operators for math and logical expressions. This can greatly
4469 simplify ASL code as well as improve both readability and
4471 all legacy ASL code and expressions.
4479 precedence and associativity rules.
4481 Full disassembler support for the symbolic expressions is provided, and
4503 Z = X & Y And (X, Y, Z)
4522 // Assignment and compound assignment operations
4532 X &= Y And (X, Y, X)
4541 If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (
4542 And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530,
4544 0x02E0), LEqual (And (R540, 0x03FB), 0x02E0))))
4546 And (MEMB, 0xFFFFFFF0, SRMB)
4549 And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)
4604 additional information and examples.
4612 AcpiGetEventStatus and AcpiGetGpeStatus. The new
4614 GPE currently has a handler associated with it, and can thus actually
4617 Example Code and Data Size: These are the sizes for the OS-independent
4619 debug version of the code includes the debug output trace mechanism and
4620 has a much larger code and data size.
4629 2) iASL Compiler/Disassembler and Tools:
4637 positives, until they can be fixed and fully validated (ACPICA BZ 1112):
4642 that summarizes all GPIO, I2C, SPI, and UART connections. This option
4643 works for both the compiler and disassembler. See the iASL compiler user
4644 guide for additional information and examples (section 6.4.6).
4674 Example Code and Data Size: These are the sizes for the OS-independent
4676 debug version of the code includes the debug output trace mechanism and
4677 has a much larger code and data size.
4686 2) iASL Compiler/Disassembler and Tools:
4699 flags. The flags are actually 2 bits, not 1, and the "ActiveBoth" keyword
4704 in the disassembler, data table compiler, and table template generator.
4721 2) For _PS1, _PS2, and PS3: A _PS0 object must exist within the same
4724 iASL and table compiler: Cleanup miscellaneous memory leaks by fully
4725 deploying the existing object and string caches and adding new caches for
4730 is part of the Bison distribution on both unix and windows platforms.
4732 AcpiSrc: Fixed and removed all extraneous warnings generated during
4733 entire ACPICA source code scan and/or conversion.
4740 The ACPI 5.1 specification has been released and is available at:
4748 New predefined names. Support includes iASL and runtime ACPICA
4754 Data Table compiler, disassembler, and the template generator.
4755 FADT - New fields and flags. Graeme Gregory.
4756 GTDT - One new subtable and new fields. Tomasz Nowicki.
4768 the core ACPICA and the ACPICA tools including iASL and AcpiExec.
4776 help avoid meaningless GPEs and even GPE floods. Rafael Wysocki.
4778 Updated GPE handling and dispatch by disabling the GPE before clearing
4786 Example Code and Data Size: These are the sizes for the OS-independent
4788 debug version of the code includes the debug output trace mechanism and
4789 has a much larger code and data size.
4799 2) iASL Compiler/Disassembler and Tools:
4805 Disassembler: Added support to detect buffers that contain UUIDs and
4812 iASL: Update table compiler and disassembler for DMAR table changes that
4822 there are in fact many portability issues with printf, and the addition
4823 of this feature will fix/prevent these issues once and for all. Some
4827 for the Linux kernel and is %uI64 for some MSVC versions.
4829 32-bit and 64-bit platforms is difficult at best in many situations.
4831 zeros especially), and leads to inconsistent output from ACPICA across
4849 Added and deployed new OSL file I/O interfaces to improve ACPICA
4872 properly terminated/cleared and could cause a circular list problem if
4880 Example Code and Data Size: These are the sizes for the OS-independent
4882 debug version of the code includes the debug output trace mechanism and
4883 has a much larger code and data size.
4893 2) iASL Compiler/Disassembler and Tools:
4934 Implemented and deployed additional configuration support for the public
4945 block zero and one. About 1200 total. See section 4.4.1 of the ACPICA
4948 Example Code and Data Size: These are the sizes for the OS-independent
4950 debug version of the code includes the debug output trace mechanism and
4951 has a much larger code and data size.
4961 2) iASL Compiler/Disassembler and Tools:
4963 iASL and disassembler: Add full support for the LPIT table (Low Power
4965 and template generator.
4976 GPE code paths in ACPICA). The GPE device is now optional, and defaults
4980 checking and take care not to reset terminal attributes on exit if they
5004 (anything except the DSDT and FACS). Adds a new file, tbdata.c, along
5005 with additional internal restructuring and cleanup. See the ACPICA
5013 and GPE handler removal. Restructured calls to eliminate possible race
5017 operator. This will help detect and identify machines that use this
5018 operator if and when it is ever used. This operator has never been seen
5019 in the field and the usage model and possible side-effects of the drastic
5023 release. It appears that push and pop are not implemented by enough
5028 Added the missing EXPORT_SYMBOL macros for the install and remove SCI
5037 Example Code and Data Size: These are the sizes for the OS-independent
5039 debug version of the code includes the debug output trace mechanism and
5040 has a much larger code and data size.
5050 2) iASL Compiler/Disassembler and Tools:
5069 1) Added the -a option to display both the ASL syntax and the AML
5076 endian machines, added detection of endianness and an error message if
5083 2) General cleanup of open files and allocated buffers.
5097 time and marks them "serialized" to prevent reentrancy. A new global
5099 feature if desired. This mechanism and global option obsoletes and
5118 ACPICA headers: Deployed the use of #pragma pack(push) and #pragma
5122 Example Code and Data Size: These are the sizes for the OS-independent
5124 debug version of the code includes the debug output trace mechanism and
5125 has a much larger code and data size.
5135 2) iASL Compiler/Disassembler and Tools:
5141 Debugger: Added missing support for the "Extra" and "Data" subobjects
5157 Updated all ACPICA copyrights and signons to 2014. Added the 2014
5158 copyright to all module headers and signons, including the standard Linux
5160 iASL compiler, all ACPICA utilities, and the test suites.
5176 debug statements and other output on both 32-bit and 64-bit hosts. It
5182 Example Code and Data Size: These are the sizes for the OS-independent
5184 debug version of the code includes the debug output trace mechanism and
5185 has a much larger code and data size.
5195 2) iASL Compiler/Disassembler and Tools:
5206 line specification. This makes the default output simler and easier to
5212 overlap within the given address space. Supports SystemMemory and
5215 AcpiExec: Added region handler support for PCI_Config and EC spaces. This
5217 support for SystemMemory and SystemIO.
5221 new values to each data object, and ensuring that the write was
5222 successful. The original value is then restored and verified.
5225 test public and puts it under the new "test" command. The test executes
5226 each and every predefined name within the current namespace.
5246 ACPICA and enhanced by Lv Zheng and Bob Moore.
5248 Added a runtime option to ignore the XSDT and force the use of the RSDT.
5256 addresses when there is a conflict between the 32-bit and 64-bit versions
5261 During the change above, the internal "Convert FADT" and "Verify FADT"
5263 understand and maintain. ACPICA BZ 933.
5265 Improve exception reporting and handling for GPE block installation.
5266 Return an actual status from AcpiEvGetGpeXruptBlock and don't clobber the
5270 This change adds two macros to extract the encoded bus and segment
5271 numbers from the HEST Bus field - ACPI_HEST_BUS and ACPI_HEST_SEGMENT.
5278 Example Code and Data Size: These are the sizes for the OS-independent
5280 debug version of the code includes the debug output trace mechanism and
5281 has a much larger code and data size.
5291 2) iASL Compiler/Disassembler and Tools:
5313 table compiler, and template generator support for the DBG2 table (Debug
5317 Updates the PCCT table definition in the actbl3.h header and adds table
5318 compiler and template generator support.
5321 The -ve option will enable only error messages, warnings and remarks are
5323 important, such as when an ACPI table is disassembled and there are many
5324 warnings and remarks -- but only the actual errors are of real interest.
5328 ACPI tables and execution of an example control method in the DSDT. Added
5350 Table unload and ACPICA termination: Delete all attached data objects
5357 root namespace node. This fix deletes any and all objects that have been
5365 switches are still always detected and a message is emitted). ACPICA BZ
5368 Example Code and Data Size: These are the sizes for the OS-independent
5370 debug version of the code includes the debug output trace mechanism and
5371 has a much larger code and data size.
5381 2) iASL Compiler/Disassembler and Tools:
5394 Unix Makefiles: Added an option to disable compiler optimizations and the
5398 optimizations and the _FORTIFY_SOURCE compiler flag. The default
5402 Tests/ASLTS: Added options to specify individual test cases and modes.
5404 test modes and test cases. Also added an option to disable the forced
5419 and
5435 hardcodes the width to 8 and ignores the FADT width value. This provides
5450 and terminate external interfaces in order to support hosts that require
5457 case, the ACPI_ALLOCATE and related macros now resolve directly to their
5461 2) For AcpiExec (and for debugging), the macros can optionally be
5472 Example Code and Data Size: These are the sizes for the OS-independent
5474 debug version of the code includes the debug output trace mechanism and
5475 has a much larger code and data size.
5485 2) iASL Compiler/Disassembler and Tools:
5494 adds a portable module that implements full history and limited line
5495 editing for Unix and Linux systems. It does not use readline() due to
5499 (such as up/down-arrow for history support and left/right-arrow for line
5531 the handler owns this pointer and the ACPICA code should never touch it.
5542 Example Code and Data Size: These are the sizes for the OS-independent
5544 debug version of the code includes the debug output trace mechanism and
5545 has a much larger code and data size.
5555 2) iASL Compiler/Disassembler and Tools:
5557 AcpiDump: Implemented several new features and fixed some problems:
5558 1) Added support to dump the RSDP, RSDT, and XSDT tables.
5571 arguments required for an external control method and generates incorrect
5575 pathnames (namepaths) and object types of all objects in the namespace.
5579 mechanism and any installed handlers.
5590 size of a couple of the debugger line buffers, and ensure that overflow
5595 compile these types of errors, and they typically end up causing a
5604 and BufferFields incorrectly returned the parent object, not the actual
5606 reference results in a read operation on the field to get the value, and
5611 circumstances: 1) Interpreter slack mode was not enabled, and 2) the _WAK
5618 and this behavior will be added to a future version of the ACPI
5622 This provides compatibility with other ACPI implementations and will
5634 so that the host (and potentially ACPICA itself) can change behaviors
5637 Example Code and Data Size: These are the sizes for the OS-independent
5639 debug version of the code includes the debug output trace mechanism and
5640 has a much larger code and data size.
5650 2) iASL Compiler/Disassembler and Tools:
5656 2)Add support for Processor, Device, Thermal Zone, and Scope objects
5663 resolved, and thus, the disassembler had to make a guess at the number of
5679 FADT-defined GPE0 and GPE1). For GPE0, GPE1, and each GPE Block Device,
5683 Example Code and Data Size: These are the sizes for the OS-independent
5685 debug version of the code includes the debug output trace mechanism and
5686 has a much larger code and data size.
5696 2) iASL Compiler/Disassembler and Tools:
5698 Portable AcpiDump: Implemented full support for the Linux and FreeBSD
5699 hosts. Now supports Linux, FreeBSD, and Windows.
5701 Disassembler: Added some missing types for the HEST and EINJ tables: "Set
5702 Error Type With Address", "CMCI", "MCE", and "Flush Cacheline".
5713 iASL/DataTables: Fixed some problems and issues with compilation of DMAR
5719 AcpiDump: Allow "FADT" and "MADT" as valid table signatures, even though
5720 the actual signatures for these tables are "FACP" and "APIC",
5723 AcpiDump: Added support for multiple UEFI tables. Only SSDT and UEFI
5745 list and detect/remove invalid entries. ACPICA BZ 890. Lv Zheng.
5752 Fixed some issues in the ACPICA initialization and termination code:
5766 Split some files to enhance ACPICA modularity and configurability:
5777 Example Code and Data Size: These are the sizes for the OS-independent
5779 debug version of the code includes the debug output trace mechanism and
5780 has a much larger code and data size.
5790 2) iASL Compiler/Disassembler and Tools:
5796 options, file I/O, and table dump routines. To port to a new host, only
5798 functionality is OS-dependent. See the tools/acpidump/apmain.c module and
5809 iASL: Implemented a mechanism to disable specific warnings and remarks.
5823 iASL: Added control method and package support for the -so option
5827 a thread blocks within the method for any reason, and another thread
5841 meaning that all AML integers are 32 bits -- and the field length is
5842 between 33 and 55 bits long. During the read, an internal buffer object
5857 the EC device node and not the namespace root. Rui Zhang (original
5884 Example Code and Data Size: These are the sizes for the OS-independent
5886 debug version of the code includes the debug output trace mechanism and
5887 has a much larger code and data size.
5897 2) iASL Compiler/Disassembler and Tools:
5903 AcpiExec: Added support for multiple EC devices, and now install EC
5920 ASL Test Suite: Several test suite errors have been identified and
5932 ACPICA objects. Reported by and with assistance from Andriy Gapon
5955 Example Code and Data Size: These are the sizes for the OS-independent
5957 debug version of the code includes the debug output trace mechanism and
5958 has a much larger code and data size.
5968 2) iASL Compiler/Disassembler and Tools:
5977 searches for "magic values", enhancing boot times and adding greater
5984 the requested feature is not supported, and supports existing BIOS/ASL
5985 code and practices.
6016 via the FADT, the following functions become NOOPs (and always return
6026 1) For the _STR and _MLS names, automatically repair/convert an ASCII
6028 2) For the _CRS, _PRS, and _DMA names, return a resource descriptor with
6040 template). This change also hardens the external AcpiWalkResources and
6048 Example Code and Data Size: These are the sizes for the OS-independent
6050 debug version of the code includes the debug output trace mechanism and
6051 has a much larger code and data size.
6061 2) iASL Compiler/Disassembler and Tools:
6070 Includes header file, disassembler, table compiler, and template support
6076 object types and package lengths are validated, for both parent packages
6077 and sub-packages, if any. The code is similar in structure and behavior
6079 the runtime repair mechanism within the AML interpreter and uses the
6084 This feature detects a binary file with a valid ACPI table header and
6111 two integers and the previous code reflects that. However, we also need
6113 support BIOS code that actually implements to the ACPI spec, and this
6122 Updated all ACPICA copyrights and signons to 2013. Added the 2013
6123 copyright to all module headers and signons, including the standard Linux
6125 iASL compiler, all ACPICA utilities, and the test suites.
6127 Example Code and Data Size: These are the sizes for the OS-independent
6129 debug version of the code includes the debug output trace mechanism and
6130 has a much larger code and data size.
6140 2) iASL Compiler/Disassembler and Tools:
6142 Generic Unix OSL: Use a buffer to eliminate multiple vfprintf()s and
6151 a listing file), and the maximum number of errors is reached, do not
6158 Implemented for both the compiler and the disassembler. Often, the NOOP
6161 BIOS. When disassembled and recompiled, these NOOPs will cause syntax
6163 (0xA3), and it also causes the compiler to ignore all ASL source code
6168 change allows Sleep to be invoked with no arguments and causes the
6177 alternate entry point for AcpiWalkResources and improves the usability of
6184 (DSDT version < 2). The constant will be truncated and this warning
6188 ExtendedInterrupt, and GpioInt descriptors. This change adds support to
6189 both get and set the new wake bit in these descriptors, separately from
6199 Performance improvement for the various FUNCTION_TRACE and DEBUG_PRINT
6205 psopinfo.c, psobject.c, rsdumpinfo.c, utstring.c, and utownerid.c.
6206 Associated makefiles and project files have been updated.
6216 Example Code and Data Size: These are the sizes for the OS-independent
6218 debug version of the code includes the debug output trace mechanism and
6219 has a much larger code and data size.
6229 2) iASL Compiler/Disassembler and Tools:
6233 will not allow the interpreter to differentiate between a method and a
6239 Finish support for the TPM2 and CSRT tables in the headers, table
6240 compiler, and disassembler.
6255 aslmethod.c, and aslfileio.c. Associated makefiles and project files have
6275 Implemented and deployed common macros to extract flag bits from resource
6276 descriptors. Improves readability and maintainability of the code. Fixes
6281 Enhanced the ACPI_GETx and ACPI_SETx macros. Improved the implementation
6282 of the macros and changed the SETx macros to the style of (destination,
6285 Example Code and Data Size: These are the sizes for the OS-independent
6287 debug version of the code includes the debug output trace mechanism and
6288 has a much larger code and data size.
6298 2) iASL Compiler/Disassembler and Tools:
6301 adds the ShareAndWake and ExclusiveAndWake flags which were added to the
6302 Irq, Interrupt, and Gpio resource descriptors in ACPI 5.0. ACPICA BZ 986.
6310 This command was out-of-date and did not properly disassemble control
6315 disassembler and the debugger disassemble command. ACPICA MZ 978.
6327 3) Use test of (Actual != Requested) after all fwrite, and most fread
6329 Improves reliability and maintainability of the code. Bob Moore, Lv
6339 statement generation so that duplicates will be detected and tossed.
6344 fopen/fread/fwrite/fclose for portability and performance. Lv Zheng, Bob
6352 and the entire concept is now obsolete.
6362 specification. Includes header, disassembler, and data table compiler
6367 methods: _HID, _CID, and _UID.
6373 interface, and other internal interfaces as well.
6375 Added and deployed a new macro for ACPI_NAME management: ACPI_MOVE_NAME.
6388 Audited/updated all ACPICA return macros and the function debug depth
6395 Global source code changes/maintenance: All extra lines at the start and
6400 Example Code and Data Size: These are the sizes for the OS-independent
6402 debug version of the code includes the debug output trace mechanism and
6403 has a much larger code and data size.
6413 2) iASL Compiler/Disassembler and Tools:
6420 on the platform and/or the environment. Note, this performance
6424 Enhanced error reporting for invalid AML opcodes and bad ACPI_NAMEs. For
6443 and
6452 acpica/generate/linux. These makefiles are obsolete and have been
6462 Example Code and Data Size: These are the sizes for the OS-independent
6465 version of the code includes the debug output trace mechanism and has a
6467 larger code and data size.
6477 2) iASL Compiler/Disassembler and Tools:
6510 SyncLevel term is a ByteConstExpr, and incorrect code would be generated
6528 Removed all use of the deprecated _GTS and _BFS predefined methods. The
6530 (Going To Sleep) and _BFS (Back From Sleep) methods are essentially
6531 deprecated and will probably be removed from the ACPI specification.
6533 does not invoke them, and reportedly never will. The final nail in the
6543 interfaces, AcpiEnterSleepState and AcpiLeaveSleepStatePrep. Tang Feng.
6556 interface eliminates these issues, and should be called after _PLD is
6567 new _OSI string, "Windows 2012" for both Windows 8 and Windows Server
6572 and CSRT (Core System Resource Table).
6574 Added struct header support for the _FDE, _GRT, _GTM, and _SRT predefined
6582 makefiles are obsolete and have been removed from the unix tarball
6584 packages. The replacement makefiles are under generate/unix, and there is
6595 utxface.c to improve modularity and reduce file size.
6597 Example Code and Data Size: These are the sizes for the OS-independent
6599 debug version of the code includes the debug output trace mechanism and
6601 much larger code and data size.
6611 2) iASL Compiler/Disassembler and Tools:
6626 Disassembler: Added support to decode the DBG2 and CSRT ACPI tables.
6653 support. Note, ARB_DIS is obsolete and only applies to older chipsets,
6655 Intel and other vendors. (for Intel: ICH4-M and earlier)
6667 table load and unload. They are intended to simplify the host
6676 Implemented and deployed two new interfaces for errors and warnings that
6683 and FADT errors. Additional deployment to be completed as appropriate in
6685 future. The associated conditional macros are ACPI_BIOS_ERROR and
6698 Split exception code utilities and tables into a new file,
6701 Example Code and Data Size: These are the sizes for the OS-independent
6704 version of the code includes the debug output trace mechanism and has a
6706 larger code and data size.
6716 2) iASL Compiler/Disassembler and Tools:
6724 the current set of ACPI tables, including the owner ID and flags decode.
6748 provided by ACPICA for Windows compatibility, and is a workaround for
6755 Changed some comments and internal function names to simplify and ensure
6758 Example Code and Data Size: These are the sizes for the OS-independent
6761 version of the code includes the debug output trace mechanism and has a
6763 larger code and data size.
6773 2) iASL Compiler/Disassembler and Tools:
6790 and
6824 to block until asynchronous events such as notifies and GPEs have
6841 Example Code and Data Size: These are the sizes for the OS-independent
6844 version of the code includes the debug output trace mechanism and has a
6846 larger code and data size.
6856 2) iASL Compiler/Disassembler and Tools:
6860 This keyword was added late in the ACPI 5.0 release cycle and was not
6864 support for operation regions that are defined in another table, and
6875 the Create* field, Alias, and Scope operators:
6883 with the file pathname and eliminate unnecessary components. Convert
6886 pathname changes affect both #include and Include() type operators.
6890 of a valid line by inserting a newline and then returning the EOF during
6897 and Warning messages are now correctly recognized for both the source
6899 browser and the global error and warning counts.
6910 allow multiple system and device notify handlers on Device, Thermal Zone,
6911 and
6914 Also re-worked and restructured the entire notify support code to
6916 handler installation, handler removal, notify event queuing, and notify
6918 handlers - one for system notifies and one for device notifies. There are
6931 Example Code and Data Size: These are the sizes for the OS-independent
6933 debug version of the code includes the debug output trace mechanism and
6935 much larger code and data size.
6945 2) iASL Compiler/Disassembler and Tools:
6949 of the StartDependentFn and StartDependentFnNoPrio descriptors were not
6956 iASL and Preprocessor: Implemented full support for the #line directive
6960 output file - for error and warning messages.
6965 0x0A-0xFF to allow for custom and new IDs without changing the compiler.
6977 routines. Enable and send iASL errors/warnings to an error logfile
6989 (Going To Sleep) and the _BFS method (Back From Sleep). Windows
6991 does not execute these methods, and therefore these methods are often
6993 methods causes errors and also prevents the machine from entering S5. It
6999 based on the age of the system and/or what is the newest version of
7002 and
7003 AcpileaveSleepStatePrep. See the ACPICA reference and Linux BZ 13041. Lin
7011 and sets various fields appropriately. This can affect older machines
7035 the original object, creating the correct and expected Package with one
7039 _MLS, _PLD, _PRT, _PSS, _TRT, _TSS, _BCL, _DOD, _FIX, and _Sx. ACPICA BZ
7046 Example Code and Data Size: These are the sizes for the OS-independent
7049 version of the code includes the debug output trace mechanism and has a
7051 larger code and data size.
7061 2) iASL Compiler/Disassembler and Tools:
7063 iASL: Added the infrastructure and initial implementation of a integrated
7088 -P Preprocess only and create preprocessor output file (*.i)
7112 AcpiEnterSleepStatePrep and AcpiEnterSleepState. The new interface is
7115 time the _BFS method is called and the _WAK method is called. NOTE: all
7129 Some BIOS code assumes that WAK_STS will be cleared on resume and use it
7133 d) Move the invocations of _GTS (Going To Sleep) and _BFS (Back From
7137 e) Implemented full support for the ACPI 5.0 SleepStatus and SleepControl
7150 shared function for table overrides that attempts both a logical and a
7155 transfer support for GAS register structures passed to AcpiRead and
7164 10% of the code and 5% of the static data, and the following hardware
7167 PM Event and Control registers
7168 SCI interrupt (and handler)
7188 Example Code and Data Size: These are the sizes for the OS-independent
7191 version of the code includes the debug output trace mechanism and has a
7193 larger code and data size.
7203 2) iASL Compiler/Disassembler and Tools:
7220 range conflicts with ACPI Operation Regions. Both SystemMemory and
7231 and
7232 Status registers, update the ACPI 5.0 flags, and update internal data
7237 Updated all ACPICA copyrights and signons to 2012. Added the 2012
7239 all module headers and signons, including the standard Linux header. This
7241 and
7244 Example Code and Data Size: These are the sizes for the OS-independent
7247 version of the code includes the debug output trace mechanism and has a
7249 larger code and data size.
7259 2) iASL Compiler/Disassembler and Tools:
7295 present and is not initialized or accessed:
7298 Fixed Events (PM1a/PM1b and PM Control)
7299 Power Management Timer and Console Buttons (power/sleep)
7308 All new tables and updates to existing tables are fully supported in the
7309 ACPICA headers (for use by device drivers), the disassembler, and the
7326 disassembler, and the ACPICA runtime code (for dispatch to region
7339 ASL/AML disassembler, and the ACPICA runtime Resource Manager code
7350 ASL/AML Operators, New and Modified:
7360 disassembler, and runtime ACPICA AML interpreter:
7376 and the ACPICA runtime validation/repair (arguments and return values.)
7396 drivers and other host OS services:
7398 AcpiAcquireMutex and AcpiReleaseMutex: These interfaces allow the host OS
7400 acquire and release AML mutexes that are defined in the DSDT/SSDT tables
7414 Operation Region Handlers: For General Purpose IO and Generic Serial Bus
7415 operation regions, information about the Connection() object and any
7432 Support for ACPI 5.0 features in the AcpiExec and AcpiHelp utilities.
7434 Fully updated documentation (ACPICA and iASL reference documents.)
7439 Support for this language was implemented and released as a subsystem of
7452 the region name and an argument that evaluates to an object (such as the
7461 recognized properly (Both ACPICA and iASL). ACPICA BZ 926.
7470 New error messages: Unsupported I/O requests (not 8/16/32 bit), and
7474 2) iASL Compiler/Disassembler and Tools:
7486 Added a new master script to generate and execute the ASLTS test suite.
7487 Automatically handles 32- and 64-bit generation. See tests/aslts.sh
7507 3) Example Code and Data Size
7511 includes the debug output trace mechanism and has a much larger code and
7527 Support for ACPI 5.0 in ACPICA has been underway for several months and
7541 Linux and Unix makefiles: Added header file dependencies to ensure
7543 generation of ACPICA core code and utilities. Also simplified the
7549 2) iASL Compiler/Disassembler and Tools:
7561 Disassembler: Fixed a byte ordering problem with the output of 24-bit and
7575 and
7597 AcpiHelp: Added the AccessAs and Offset operators. Fixed a problem where
7604 3) Example Code and Data Size
7608 includes the debug output trace mechanism and has a much larger code and
7634 is to be ignored, and therefore some BIOSs leave garbage values in the
7638 is. Reported by, and fixed with assistance from Fenghua Yu.
7642 and repair. This runtime option can be used to disable return value
7649 All makefiles and project files: Major changes to improve generation of
7654 Cleanup and simplify use of command line defines
7658 Linux-specific header: update handling of THREAD_ID and pthread. For the
7664 Example Code and Data Size: These are the sizes for the OS-independent
7667 version of the code includes the debug output trace mechanism and has a
7669 larger code and data size.
7678 2) iASL Compiler/Disassembler and Tools:
7684 and AML languages. It generates under Linux/Unix as well as Windows, and
7686 Find/display ASL operator(s) -- with description and syntax.
7687 Find/display ASL keyword(s) -- with exact spelling and descriptions.
7689 of arguments, and the return value data type.
7690 Find/display AML opcode name(s) -- with opcode, arguments, and
7692 Decode/display AML opcode -- with opcode name, arguments, and
7720 signature. Now, only allow SSDT, OEMx, and a null signature. History:
7728 interpreter errors and kernel faults. So now, we once again allow
7729 only SSDT, OEMx, and now, also a null signature. (05/2011).
7733 enable validation. Affects both the core ACPICA code and the iASL
7736 Example Code and Data Size: These are the sizes for the OS-independent
7739 version of the code includes the debug output trace mechanism and has a
7741 larger code and data size.
7750 2) iASL Compiler/Disassembler and Tools:
7756 Strings, Buffers, and Packages. Includes support for nested packages.
7759 See the ACPICA reference for details and syntax. ACPICA BZ 917.
7773 and
7775 reference for details and syntax. ACPICA BZ 921
7777 iASL: Cleaned up support for Berkeley yacc. A general cleanup of code and
7779 generators, bison and yacc.
7796 EmbeddedControl. Fixes a problem seen on some machines and apparently is
7812 and _TZD. ACPICA BZ 914.
7814 Split and segregated all internal global lock functions to a new file,
7825 Example Code and Data Size: These are the sizes for the OS-independent
7829 the code includes the debug output trace mechanism and has a much larger
7831 and
7841 2) iASL Compiler/Disassembler and Tools:
7849 continuation character(s) and no colon on the continuation lines. See the
7854 iASL: Mark ASL "Return()" and the simple "Return" as "Null" return
7875 that implements c-style operator precedence and parenthesization. ACPICA
7879 Disassembler/DTC: Remove support for () and <> style comments in data
7886 and
7890 AcpiXtract: Fix for RSDP and dynamic SSDT extraction. These tables have
7932 Example Code and Data Size: These are the sizes for the OS-independent
7936 the code includes the debug output trace mechanism and has a much larger
7938 and
7948 2) iASL Compiler/Disassembler and Tools:
7952 header files, disassembler, table compiler, and template generator. Bob
7956 AcpiXtract: Correctly handle embedded comments and messages from
7982 However, Event handlers and region handlers should be installed after
7999 number in the FADT has been found to be completely unreliable and cannot
8003 change updates the ACPICA core and the disassembler so that both no
8005 even look at the FADT version and instead depend solely upon the FADT
8008 Fix an unresolved name issue for the no-debug and no-error-message source
8014 Split several large files (makefiles and project files updated)
8021 Example Code and Data Size: These are the sizes for the OS-independent
8023 debug version of the code includes the debug output trace mechanism and
8025 a much larger code and data size.
8034 2) iASL Compiler/Disassembler and Tools:
8036 iASL: Implemented the predefined macros __LINE__, __FILE__, and __DATE__.
8040 iASL/DTC: Added support for integer expressions and labels. Support for
8047 "handlers" command will display op region, fixed event, and miscellaneous
8048 global handlers. installation status -- and for op regions, whether
8061 there are two GPE methods of the form _Lxy and _Exy in the same scope.
8063 example, _L1D and _E1D in the same scope.) ACPICA bugzilla 848.
8065 iASL/DTC: Fixed a couple input scanner issues with comments and line
8066 numbers. Comment remover could get confused and miss a comment ending.
8083 Fixed a race condition between method execution and namespace walks that
8095 Fixed several issues and a possible fault with the automatic "serialized"
8105 (and possibly causing a fault.)
8109 3) Cleanup the use of the AML "MethodFlags" and internal method flags
8125 and utilities.
8127 Updated all ACPICA copyrights and signons to 2011. Added the 2011
8129 to all module headers and signons, including the Linux header. This
8131 virtually every file in the ACPICA core subsystem, iASL compiler, and all
8140 Example Code and Data Size: These are the sizes for the OS-independent
8142 debug version of the code includes the debug output trace mechanism and
8144 much larger code and data size.
8153 2) iASL Compiler/Disassembler and Tools:
8173 executes _PRWs anyway), cleanup of "wake" GPE interfaces and processing,
8175 and
8184 See the ACPICA Programmer Reference for full details and programming
8187 for a full overview, and section 8.7 "ACPI General Purpose Event
8200 Fixed a problem with the Scope() operator during table parse and load
8208 Example Code and Data Size: These are the sizes for the OS-independent
8210 debug version of the code includes the debug output trace mechanism and
8212 much larger code and data size.
8221 2) iASL Compiler/Disassembler and Tools:
8225 "bus-specific" per the ACPI specification, and therefore any characters
8228 and
8238 access, the size is encoded as 1=byte, 2=word, 3=dword, and 4=qword.
8242 ACPICA configuration for a minimal namespace dump utility. Uses table and
8246 partition and configure ACPICA. ACPICA BZ 883.
8280 longer needed in Execute_HID, Execute_CID, and Execute_UID. ACPICA BZ
8283 Example Code and Data Size: These are the sizes for the OS-independent
8285 debug version of the code includes the debug output trace mechanism and
8287 much larger code and data size.
8296 2) iASL Compiler/Disassembler and Tools:
8300 non-hex prefix (such as "PNP" or "ACPI") must be uppercase, and the
8303 the string must be exactly seven or eight characters. For both _HID and
8323 AcpiExec: several fixes for the 64-bit version. Adds XSDT support and
8336 of this function were not OS-dependent and are now obsolete and can be
8342 Implemented a dynamic repair for _HID and _CID strings. The following
8344 string, and 2) the entire string is uppercased. Both repairs are in
8345 accordance with the ACPI specification and will simplify host driver
8361 keyword is not standard across compilers, and this type allows inline to
8379 Example Code and Data Size: These are the sizes for the OS-independent
8381 debug version of the code includes the debug output trace mechanism and
8383 much larger code and data size.
8392 2) iASL Compiler/Disassembler and Tools:
8412 Designed and implemented a new host interface to the _OSI support code.
8418 Also added a new AML debugger command, 'osi' to display and modify the
8420 _OSI string table, and test support in the AcpiExec utility. See the
8439 often EC Fields larger than one byte that need to be transferred, and it
8444 access to the EC space from ByteAcc to AnyAcc, and will probably require
8455 and AcpiExec. These new makefiles place the generated object files in the
8460 Example Code and Data Size: These are the sizes for the OS-independent
8462 debug version of the code includes the debug output trace mechanism and
8464 much larger code and data size.
8473 2) iASL Compiler/Disassembler and Tools:
8477 namespace from and disassemble an entire group of AML files. Useful for
8479 and
8506 4) Remove the internal wake reference counter and add new AcpiGpeWakeup
8508 5) Remove GpeType argument from AcpiEnable and AcpiDisable. These
8522 Index Fields and possibly Bank Fields. It will be reintroduced when these
8534 buffer, package, and reference objects. Redhat bugzilla 608648.
8536 Example Code and Data Size: These are the sizes for the OS-independent
8538 debug version of the code includes the debug output trace mechanism and
8540 much larger code and data size.
8549 2) iASL Compiler/Disassembler and Tools:
8551 iASL: Implemented a new compiler subsystem to allow definition and
8554 are called "ACPI Data Tables", and the new compiler is the "Data Table
8557 disassembly, modification, recompilation, and override of existing ACPI
8565 documentation and the -T option.
8567 Disassembler and headers: Added support for the WDDT ACPI table (Watchdog
8570 Updated the Linux makefiles for iASL and AcpiExec to place the generated
8575 Added support for Mac OS X in the Unix OSL used for iASL and AcpiExec.
8582 Note: The ACPI 4.0a specification was released on April 5, 2010 and is
8597 than one byte that need to be transferred, and it is useful for the EC
8603 ByteAcc to AnyAcc, and will probably require changes to the host OS
8609 Implemented a performance enhancement for namespace search and access.
8611 change enhances the performance of namespace searches and walks by adding
8620 node and an ACPI operand object. However, this is the first growth of the
8637 above bit 15. This feature is optional and is enabled if the BIOS
8649 methods. These objects are defined by "Windows Instrumentation", and are
8653 Expanded all statistic counters used during namespace and device
8665 Example Code and Data Size: These are the sizes for the OS-independent
8667 debug version of the code includes the debug output trace mechanism and
8669 much larger code and data size.
8678 2) iASL Compiler/Disassembler and Tools:
8681 methods. These objects are defined by "Windows Instrumentation", and are
8689 AcpiExec: Restructured the command line options into -d (disable) and -e
8698 including FADT-based and GPE Block Devices, execute any _PRW methods in
8700 new table, and process any _Lxx/_Exx GPE methods in the new table. Any
8704 files added, evgpeinit.c and evgpeutil.c. ACPICA BZ 833. Lin Ming, Bob
8713 data structures to clarify their meaning and use.
8721 Updated the allocation dump routine, AcpiUtDumpAllocation and fixed a
8724 (size and type) before output. Lin Ming, Bob Moore. ACPICA BZ 847
8726 Example Code and Data Size: These are the sizes for the OS-independent
8728 debug version of the code includes the debug output trace mechanism and
8730 much larger code and data size.
8739 2) iASL Compiler/Disassembler and Tools:
8746 valid granularity, Min/Max a multiple of granularity, and _MIF/_MAF as
8750 and aslrestype2.c files into five new files. ACPICA BZ 840.
8754 and these names were not recognized by the compiler as valid predefined
8759 value and thus must be implemented as Control Methods. These include all
8761 the _Lxx, _Exx, _Wxx, and _Qxx names, as well as some other miscellaneous
8762 names such as _DIS, _INI, _IRC, _OFF, _ON, and _PSx. ACPICA BZ 850, 856.
8771 ta and -tc options. ACPICA BZ 853.
8784 shared GPEs and to simplify both host OS and ACPICA code. Added a
8790 interfaces now use the GPE spinlock instead of the events mutex (and the
8822 support to detect a DSDT that has been corrupted and/or replaced from
8838 Example Code and Data Size: These are the sizes for the OS-independent
8840 debug version of the code includes the debug output trace mechanism and
8842 much larger code and data size.
8851 2) iASL Compiler/Disassembler and Tools:
8882 the interpreter is then reentered via the same thread, and attempts to
8907 Affects ACPI_INFO, ACPI_ERROR, ACPI_EXCEPTION, and ACPI_WARNING (about
8910 ACPI_DEBUG_PRINT invocations and were not consistent. ACPICA BZ 835.
8912 Example Code and Data Size: These are the sizes for the OS-independent
8914 debug version of the code includes the debug output trace mechanism and
8916 much larger code and data size.
8925 2) iASL Compiler/Disassembler and Tools:
8942 Added the 2010 copyright to all module headers and signons. This affects
8944 tools/utilities, and the test suites.
8967 64-bit AML integers). It is now obsolete and this change removes it from
8974 Removed the unused UINT32_STRUCT type, and the obsolete Integer64 field
8984 additional casting, and removal of redundant declarations.
8986 Example Code and Data Size: These are the sizes for the OS-independent
8988 debug version of the code includes the debug output trace mechanism and
8990 much larger code and data size.
8999 2) iASL Compiler/Disassembler and Tools:
9012 values to make Integers, Strings, and Buffers fully interchangeable.
9021 repairs. This change will automatically remove embedded and trailing NULL
9029 Implemented a repair for the predefined _FDE and _GTM names. The expected
9070 Example Code and Data Size: These are the sizes for the OS-independent
9072 debug version of the code includes the debug output trace mechanism and
9074 much larger code and data size.
9083 2) iASL Compiler/Disassembler and Tools:
9112 attributes. Such regions are probably BIOS bugs, and this is the
9119 _PSS, and _TSS. Drivers can now assume that the packages are correctly
9121 and do not contain NULL package elements. Adds one new file,
9150 Example Code and Data Size: These are the sizes for the OS-independent
9152 debug version of the code includes the debug output trace mechanism and
9154 much larger code and data size.
9163 2) iASL Compiler/Disassembler and Tools:
9176 technically legal, this is probably a coding error and it is seen in the
9206 return value is defined as a Field object in the AML, and the field
9212 Implemented a run-time repair for the _BIF and _BIX predefined methods.
9221 Example Code and Data Size: These are the sizes for the OS-independent
9223 debug version of the code includes the debug output trace mechanism and
9225 much larger code and data size.
9234 2) iASL Compiler/Disassembler and Tools:
9251 AcpiXtract: Updated for Lint and other formatting changes. Close all open
9272 interpreter will truncate the package to the defined size (and issue an
9289 are seen in many BIOSs and are once again treated as NOOPs and no error
9297 Example Code and Data Size: These are the sizes for the OS-independent
9299 debug version of the code includes the debug output trace mechanism and
9301 much larger code and data size.
9310 2) iASL Compiler/Disassembler and Tools:
9312 iASL: Fixed a problem with the use of the Alias operator and Resource
9313 Templates. The correct alias is now constructed and no error is emitted.
9333 DSDT and multiple SSDTs). Also added support for wildcards within the AML
9334 pathname. These features allow all machine tables to be easily loaded and
9348 ACPI 4.0: Added header file support for all new and changed ACPI tables.
9349 Completely new tables are: IBFT, IVRS, MSCT, and WAET. Tables that are
9353 EINJ, ERST, and HEST. Other newly supported tables are: UEFI and WDAT.
9365 executable AML code that exists outside of any control method and is
9369 of code still exists and is apparently still being created. Blocks of
9371 code are now detected and executed as intended. Currently, the code
9385 be repaired: _ALR, _CSD, _HPX, _MLS, _PRT, _PSS, _TRT, and _TSS. ACPICA
9391 The _HID/_CID matching was broken and no longer matched IDs correctly.
9406 (However, some hosts already delete the code that writes this bit, and
9414 Example Code and Data Size: These are the sizes for the OS-independent
9416 debug version of the code includes the debug output trace mechanism and
9418 much larger code and data size.
9427 2) iASL Compiler/Disassembler and Tools:
9429 ACPI 4.0: Implemented disassembler support for all new ACPI tables and
9435 The ACPI 4.0 Specification was released on June 16 and is available at
9436 www.acpi.info. ACPICA implementation of ACPI 4.0 is underway and will
9442 address space. Includes support for bi-directional data buffers and an
9448 ACPI 4.0: Added changes for existing ACPI tables - FACS and SRAT.
9450 support in both the header files and the disassembler.
9454 - Support for variable, unlimited length HID, UID, and CID strings.
9466 Updated the AcpiRead and AcpiWrite external interfaces to support 64-bit
9486 OemTableId, and CompilerId.) ACPI tables with non-printable characters in
9502 Removed obsolete 16-bit files from the distribution and from the current
9506 Example Code and Data Size: These are the sizes for the OS-independent
9508 debug version of the code includes the debug output trace mechanism and
9510 much larger code and data size.
9519 2) iASL Compiler/Disassembler and Tools:
9521 ACPI 4.0: iASL and Disassembler - implemented support for the new IPMI
9525 predefined names and control methods (31 total). ACPICA BZ 769.
9553 the entire ACPI table. See the ACPICA Programmer Reference for use and
9571 and can cause subsequent execution errors. ACPICA BZ 471.
9594 Simplified and optimized the NsGetNextNode function. Reduced parameter
9596 and reduced code for this frequently used function.
9598 Example Code and Data Size: These are the sizes for the OS-independent
9600 debug version of the code includes the debug output trace mechanism and
9602 much larger code and data size.
9611 2) iASL Compiler/Disassembler and Tools:
9615 with sub-table disassembly and handling invalid sub-tables. Attempt
9627 simply ignore the request and do not return an exception (allow the
9652 a list of warning options used with gcc 3 and 4. ACPICA BZ 735.
9654 Example Code and Data Size: These are the sizes for the OS-independent
9656 debug version of the code includes the debug output trace mechanism and
9658 much larger code and data size.
9667 2) iASL Compiler/Disassembler and Tools:
9669 iASL: Fixed a generation warning from Bison 2.3 and fixed several
9679 compilation summary, not individual errors and warnings. Useful for large
9686 code (includes both internal semaphores and AML-defined mutexes and
9691 and
9694 Test Suites: Updated and cleaned up the documentation files. Updated the
9709 Fixed a possible race condition between AcpiWalkNamespace and dynamic
9728 Modified the handling of FADT register and table (FACS/DSDT) addresses.
9730 FADT can contain both 32-bit and 64-bit versions of these addresses.
9731 Previously, the 64-bit versions were favored, meaning that if both 32 and
9740 compatibility and protects the standard PC I/O ports from access via AML
9744 message warns of a 32/64 length mismatch between the legacy and GAS
9766 and the ACPICA code now simply always writes a zero to the ignored bit.
9781 through the AML that are tested and known to work properly.
9790 2) iASL Compiler/Disassembler and Tools:
9793 and
9803 bit registers in PM1 Status, Enable, Control, and PM2 Control. The lock
9806 AcpiGetRegisterUnlocked function is no longer needed and has been
9812 AE_BAD_PARAMETER if the input register pointer is null, and
9822 AcpiGetRegister and AcpiSetRegister to clarify the purpose of these
9823 functions. The new names are AcpiReadBitRegister and
9827 and condensing duplicate code to reduce code size.
9830 registers. AcpiHwReadMultiple and AcpiHwWriteMultiple. These two
9832 now handle the split registers for PM1 Status, Enable, and Control.
9841 are different than the PM1 A/B status and enable registers in that
9861 clearer and less prone to error.
9875 TYPE_A. Removed this and all related instances. Renamed SLEEP_TYPE_A to
9879 function is only needed on 64-bit host operating systems and is thus not
9882 Debug output: print the input and result for invocations of the _OSI
9888 Example Code and Data Size: These are the sizes for the OS-independent
9890 debug version of the code includes the debug output trace mechanism and
9892 much larger code and data size.
9901 2) iASL Compiler/Disassembler and Tools:
9911 Added the 2009 copyright to all module headers and signons. This affects
9912 virtually every file in the ACPICA core subsystem, the iASL compiler, and
9921 table found in the RSDT/XSDT during ACPICA initialization, and also
9933 Example Code and Data Size: These are the sizes for the OS-independent
9935 debug version of the code includes the debug output trace mechanism and
9937 much larger code and data size.
9946 2) iASL Compiler/Disassembler and Tools:
9956 and
9964 The ACPICA Programmer Reference has been completely updated and revamped
9967 interfaces, the overview sections, and the debugger reference.
9969 Several new ACPICA interfaces have been implemented and documented in the
9983 Enhanced the FADT parsing and low-level ACPI register access: The ACPI
9984 register lengths within the FADT are now used, and the low level ACPI
9991 option is set to true for now, and a warning is issued if a suspicious
10007 Example Code and Data Size: These are the sizes for the OS-independent
10009 debug version of the code includes the debug output trace mechanism and
10011 much larger code and data size.
10020 2) iASL Compiler/Disassembler and Tools:
10025 aid with disassembly and External statement generation. ACPICA BZ 742.
10036 Disassembler: Updates for several ACPI data tables (HEST, EINJ, and
10047 and
10073 vector (real vs. protected mode, etc.) and the interface itself should
10087 within a while loop and the loop does not implement a timeout. The
10094 object was allocated and freed for each execution of the loop. The
10103 Such methods are seen in the field as stubs (presumably), and can cause
10108 (and
10116 and
10117 DSDT within the FADT (mismatch between the 32-bit and 64-bit fields.)
10126 handler installation, and calling a control method. Available at
10133 This simplifies the code for the Global Lock and the Firmware Waking
10136 Example Code and Data Size: These are the sizes for the OS-independent
10138 debug version of the code includes the debug output trace mechanism and
10140 much larger code and data size.
10149 2) iASL Compiler/Disassembler and Tools:
10156 method invocations and the generation of external declarations during the
10177 Designed and implemented a mechanism to validate predefined ACPI methods
10178 and
10182 evaluated. The argument count and the type of the returned object are
10190 files are nspredef.c and acpredef.h.
10206 during the ToDecimalString and ToHexString operators, as well as implicit
10210 AcpiUtUpdateObjectReference and AcpiUtWalkPackageTree. These functions
10213 recursion. The stack must be fully unwound and deallocated if an error
10216 Removed the unused ACPI_BITREG_WAKE_ENABLE definition and entry in the
10218 ACPI register table. This bit does not exist and is unused. Lin Ming, Bob
10224 was useful under SourceSafe and CVS, but has no meaning under git. It is
10228 Example Code and Data Size: These are the sizes for the OS-independent
10230 debug version of the code includes the debug output trace mechanism and
10232 much larger code and data size.
10250 differentiate the various reference types (instead of an AML opcode), and
10258 and continue. Handles the case where the method inadvertently declares
10266 AE_TYPE for objects that have no value and therefore evaluation is
10268 Device, Event, Mutex, Region, Thermal, and Scope. Previously, evaluation
10277 Removed the obsolete debug levels ACPI_DB_WARN and ACPI_DB_ERROR. These
10279 levels were made obsolete by the ACPI_WARNING, ACPI_ERROR, and
10284 Removed obsolete and/or unused exception codes from the acexcep.h header.
10292 compiler reference, and the changes.txt release logfile.
10294 Example Code and Data Size: These are the sizes for the OS-independent
10296 debug version of the code includes the debug output trace mechanism and
10298 much larger code and data size.
10307 2) iASL Compiler/Disassembler and Tools:
10321 statistics. Count first and last lines of multi-line comments as
10340 to Linux BZ 6881 and has since been removed from Linux.
10352 x2APIC support: changes for MADT and SRAT ACPI tables. There are 2 new
10353 subtables for the MADT and one new subtable for the SRAT. Includes
10354 disassembler and AcpiSrc support. Data from the Intel 64 Architecture
10361 AcpiNsBuildExternalPath and check after all calls. Add parameter
10363 to AcpiUtInitializeBuffer. Reported by and initial patch by Ingo Molnar.
10367 used by both the kernel subsystem and the utilities such as iASL
10381 Example Code and Data Size: These are the sizes for the OS-independent
10383 debug version of the code includes the debug output trace mechanism and
10385 much larger code and data size.
10394 2) iASL Compiler/Disassembler and Tools:
10406 compiler. Instead of issuing an error or warning and forcing the user to
10425 iASL: Enforce minimum 1 interrupt in interrupt macro and Resource
10474 and
10497 associated notify handlers (and objects) were not being deleted. Fiodor
10517 Example Code and Data Size: These are the sizes for the OS-independent
10519 debug version of the code includes the debug output trace mechanism and
10521 much larger code and data size.
10530 2) iASL Compiler/Disassembler and Tools:
10532 iASL: Added two missing ACPI reserved names. Added _MTP and _ASZ, both
10552 All of this allows testing of the Load and Unload operators from
10557 and use the standard table header output routine.
10566 BIOSs erroneously reverse the _PRT SourceName and the SourceIndex. This
10567 change dynamically detects and repairs this problem. Provides
10588 20080514. _SST is optional and a NOT_FOUND exception should never be
10599 and eliminated the use of a negative index in a loop. Operands are now
10603 ACPI_NATIVE_UINT caused the negative index to go large and positive. BZ
10610 Updated definitions for the DMAR and SRAT tables to synchronize with the
10618 Example Code and Data Size: These are the sizes for the OS-independent
10620 debug version of the code includes the debug output trace mechanism and
10622 much larger code and data size.
10631 2) iASL Compiler/Disassembler and Tools:
10638 Disassembler: Added support for DMAR and SRAT table definition changes.
10649 ensures that all operation regions and devices throughout the namespace
10671 field declarations in Field(), BankField(), and IndexField(). BZ 10606.
10686 acceptable to the ACPI spec, but tables are seen with OEMx and null sigs.
10697 Updated the debug tracking macros to reduce overall code and data size.
10698 Changed ACPI_MODULE_NAME and ACPI_FUNCTION_NAME to use arrays of strings
10699 instead of pointers to static strings. Jan Beulich and Bob Moore.
10718 MODULE_NAME and printf format strings. Jan Beulich.
10720 Example Code and Data Size: These are the sizes for the OS-independent
10722 debug version of the code includes the debug output trace mechanism and
10724 much larger code and data size.
10733 2) iASL Compiler/Disassembler and Tools:
10739 means 32-bit and this is unusual. 2 or greater is 64-bit.
10759 a buffer overflow and/or confusing the caller who expected a fixed number
10765 Qword), Field, BankField, and IndexField operators when invoked from
10771 between an exiting control method and a running namespace walk. (Reported
10775 Fixed a problem where the CreateField and CreateXXXField operators would
10782 values (ACPI 2.0+) and improved the Notify debug output. Notify on
10797 than NumElements count" is now produced in the correct case, and is now
10806 clarify and keep all data for a given object on one output line.
10812 Example Code and Data Size: These are the sizes for the OS-independent
10814 debug version of the code includes the debug output trace mechanism and
10816 a much larger code and data size.
10825 2) iASL Compiler/Disassembler and Tools:
10832 variables and if/else pairs. The solution chosen was to mark any method
10851 Fixed a problem where buffer and package objects passed as arguments to a
10854 AE_AML_INTERNAL exception depending on the order and type of operators
10863 IRQ / IRQNoFlags and StartDependendentFn / StartDependentFnNoPri. (BZ
10866 Fixed a problem where a CopyObject to RegionField, BankField, and
10890 Example Code and Data Size: These are the sizes for the OS-independent
10892 debug version of the code includes the debug output trace mechanism and
10894 a much larger code and data size.
10903 2) iASL Compiler/Disassembler and Tools:
10906 BERT, EINJ, and ERST. Implemented partial disassembler support for the
10915 Added the 2008 copyright to all module headers and signons. This affects
10916 virtually every file in the ACPICA core subsystem, the iASL compiler, and
10919 Fixed a problem with the SizeOf operator when used with Package and
10921 objects. These objects have deferred execution for some arguments, and
10951 Fixed a problem with the LoadTable operator where the OemId and
10965 Example Code and Data Size: These are the sizes for the OS-independent
10967 debug version of the code includes the debug output trace mechanism and
10969 a much larger code and data size.
10978 2) iASL Compiler/Disassembler and Tools:
10982 binary DSDTs and SSDTs. If incorrect, a message is displayed within the
11003 Implemented support for full TermArgs (adding Argx, Localx and method
11014 arguments for DataTableRegion. This enables forward references and full
11029 is both not present and not functional (instead of just not present.)
11037 incoming GPE (no _Lxx/_Exx method and not the EC GPE) is immediately
11049 Example Code and Data Size: These are the sizes for the OS-independent
11051 debug version of the code includes the debug output trace mechanism and
11053 a much larger code and data size.
11068 (interrupt) itself, and control methods executed. Named
11069 AcpiFixedEventCount[], AcpiSciCount, and AcpiMethodCount respectively.
11071 should be useful for debugging and statistics.
11075 AcpiSciCount, AcpiGpeCount, the AcpiFixedEventCount array, and
11082 Fixed a problem with the FromBCD and ToBCD operators. With some
11108 Example Code and Data Size: These are the sizes for the OS-independent
11110 debug version of the code includes the debug output trace mechanism and
11112 a much larger code and data size.
11122 2) iASL Compiler/Disassembler and Tools:
11125 Operation Region types. New types supported are: PCI_Config, CMOS, and
11130 bit) address fields for the DSDT and FACS within the FADT were not being
11133 and Bob Moore
11143 Processor, and ThermalZone. In these cases, any children of the original
11149 created as object references and left otherwise unresolved. According to
11164 solved and was removed by most users.
11166 Fixed a problem with the Increment and Decrement operators where the type
11168 the target object could be unexpectedly and incorrectly changed. (BZ 353)
11171 Fixed a problem with the Load and LoadTable operators where the table
11176 object. The input buffer was prematurely zeroed and/or deleted. (BZ 577)
11188 length of the input strings SignatureString, OemIdString, and OemTableId
11192 Example Code and Data Size: These are the sizes for the OS-independent
11194 debug version of the code includes the debug output trace mechanism and
11196 a much larger code and data size.
11208 Fixed a problem where if a single file was specified and the file did not
11217 Designed and implemented new external interfaces to install and remove
11220 LOAD and UNLOAD. These interfaces allow the host to track ACPI tables as
11221 they are dynamically loaded and unloaded. See AcpiInstallTableHandler and
11222 AcpiRemoveTableHandler. (Lin Ming and Bob Moore)
11229 Processor, PowerResource) can be not found if they are declared and
11232 Example Code and Data Size: These are the sizes for the OS-independent
11234 debug version of the code includes the debug output trace mechanism and
11236 a much larger code and data size.
11253 Windows and Unix versions of the compiler. This feature simplifies the
11254 disassembly and compilation of multiple ACPI tables in a single
11264 Notify AML operator. Previously, notify handlers were dispatched and
11287 are: Preferred_PM_Profile, PSTATE_CNT, CST_CNT, and IAPC_BOOT_FLAGS.)
11301 Example Code and Data Size: These are the sizes for the OS-independent
11303 debug version of the code includes the debug output trace mechanism and
11305 a much larger code and data size.
11319 Implemented a change to the order of interpretation and evaluation of AML
11321 operands in the order that they appear in the AML stream (and the
11350 the internal "Return Object" field is cleared on error and only valid
11373 Example Code and Data Size: These are the sizes for the OS-independent
11375 debug version of the code includes the debug output trace mechanism and
11377 a much larger code and data size.
11391 Added the 2007 copyright to all module headers and signons. This affects
11392 virtually every file in the ACPICA core subsystem, the iASL compiler, and
11400 Example Code and Data Size: These are the sizes for the OS-independent
11402 debug version of the code includes the debug output trace mechanism and
11404 a much larger code and data size.
11420 necessary and it clutters the code. All 16-bit macros, types, and
11421 conditional compiles have been removed, cleaning up and simplifying the
11433 to enable improved multithreading debugging and evaluation of the
11443 Example Code and Data Size: These are the sizes for the OS-independent
11445 debug version of the code includes the debug output trace mechanism and
11447 a much larger code and data size.
11457 2) iASL Compiler/Disassembler and Tools:
11482 Additional cleanup and optimizations for the new Table Manager code.
11491 manually optimized to be aligned and will not work if it is byte-packed.
11493 Example Code and Data Size: These are the sizes for the OS-independent
11495 debug version of the code includes the debug output trace mechanism and
11497 a much larger code and data size.
11507 2) iASL Compiler/Disassembler and Tools:
11522 completely parsed and executed in a single pass. This improves overall
11523 interpreter performance by ~25%, reduces code size, and reduces CPU stack
11531 obtained and also checked for an ID match.
11541 AcpiWalkNamespace and the AML interpreter. This condition was removed by
11546 AcpiWalkNamespace and the Load/Unload ASL operators and is still under
11550 subfunctions in order to reduce CPU stack use and improve
11556 of prefix handle and pathname. BZ 478
11558 Example Code and Data Size: These are the sizes for the OS-independent
11560 debug version of the code includes the debug output trace mechanism and
11562 a much larger code and data size.
11571 2) iASL Compiler/Disassembler and Tools:
11582 Removed the "Flags" parameter from AcpiGetRegister and AcpiSetRegister.
11583 These functions now use a spinlock for mutual exclusion and the interrupt
11592 Fixed a possible memory leak and fault in AcpiExResolveObjectToValue
11596 Example Code and Data Size: These are the sizes for the OS-independent
11598 debug version of the code includes the debug output trace mechanism and
11600 a much larger code and data size.
11610 2) iASL Compiler/Disassembler and Tools:
11664 than the largest known FADT version, and 2) if there is a mismatch
11667 32-bit block address and the 64-bit X counterpart (when both are non-
11670 Example Code and Data Size: These are the sizes for the OS-independent
11672 debug version of the code includes the debug output trace mechanism and
11674 a much larger code and data size.
11684 2) iASL Compiler/Disassembler and Tools:
11694 operator. Now, ignore it and continue.
11696 Disassembly of an FADT now verifies the input FADT and reports any errors
11730 immediately disabled to prevent the waking GPE from firing again and to
11738 both the ACPICA headers and the disassembler.
11740 Example Code and Data Size: These are the sizes for the OS-independent
11742 debug version of the code includes the debug output trace mechanism and
11744 a much larger code and data size.
11754 2) iASL Compiler/Disassembler and Tools:
11763 The Table Manager component has been completely redesigned and
11764 reimplemented. The new design is much simpler, and reduces the overall
11766 and data size of the kernel-resident ACPICA by approximately 5%. Also, it
11796 internally and must not be deleted by the caller. Use of this interface
11816 - AcpiInitializeTables: Must be called once, and can be called anytime
11822 is initialized and running.
11828 Table Manager, and does not have to be called before the Table Manager
11831 - ACPI Tables: Some changes have been made to the names and structure of
11833 actbl.h and actbl1.h header files and may require changes to existing
11845 Example Code and Data Size: These are the sizes for the OS-independent
11847 debug version of the code includes the debug output trace mechanism and
11849 a much larger code and data size.
11859 2) iASL Compiler/Disassembler and Tools:
11869 compiler and the ACPICA core subsystem is being released with the ACPICA
11871 and
11878 Completed a new design and implementation for support of the ACPI Global
11884 there is a tight coupling between the OS and the BIOS.
11898 on the fly, and this change supports this behavior. Provides
11904 support all constant values, now including the Zero and One opcodes.
11916 Example Code and Data Size: These are the sizes for the OS-independent
11918 debug version of the code includes the debug output trace mechanism and
11920 a much larger code and data size.
11930 2) iASL Compiler/Disassembler and Tools:
11948 operation of AML mutexes and recursive control methods.
11958 AcpiTbInitTableDescriptor (tbinstal.c), and migrated all table OwnerID
11970 Both the Unload() operator and AcpiUnloadTable interface now lock the
11993 Example Code and Data Size: These are the sizes for the OS-independent
11995 debug version of the code includes the debug output trace mechanism and
11997 a much larger code and data size.
12007 2) iASL Compiler/Disassembler and Tools:
12027 manner: PM1_CONTROL[0] (SCI_EN), PM1_CONTROL[9], and PM1_STATUS[11].
12031 host operating systems have separate mutex and semaphore objects, this
12032 feature was requested. The base code now uses mutexes (and the new mutex
12042 and
12053 and
12054 can cause unpredictable results, and therefore the case must be detected
12055 and
12065 Example Code and Data Size: These are the sizes for the OS-independent
12067 debug version of the code includes the debug output trace mechanism and
12069 a much larger code and data size.
12079 2) iASL Compiler/Disassembler and Tools:
12091 semaphore at interrupt level, and it means that all ACPICA external
12114 Removed four global mutexes that were obsolete and were no longer being
12117 Example Code and Data Size: These are the sizes for the OS-independent
12119 debug version of the code includes the debug output trace mechanism and
12121 a much larger code and data size.
12131 2) iASL Compiler/Disassembler and Tools:
12147 Restructured, flattened, and simplified the internal interfaces for
12150 and fewer interfaces. (With assistance from Mikhail Kouzmich)
12154 not typed correctly for the parser, interpreter, compiler, and
12156 Caused various errors and unexpected behavior.
12162 and
12185 Example Code and Data Size: These are the sizes for the OS-independent
12187 debug version of the code includes the debug output trace mechanism and
12189 a much larger code and data size.
12199 2) iASL Compiler/Disassembler and Tools:
12201 Modified the parser to allow the names IO, DMA, and IRQ to be used as
12203 macro names. This provides compatibility with other ASL compilers and is
12209 DataTableRegion and CopyObject operators. Fixed a possible fault during
12220 a Priority parameter, this appeared to be useless and has been replaced
12225 This allows the host to queue and execute the request as appropriate for
12227 request type, possibly using different work queues and different
12230 deadlock problems such as BZ #5534, and will require changes to all
12232 OS interface layers. (Alexey Starikovskiy and Bob Moore)
12242 and cause alignment faults on IPF systems. (With assistance from Luming
12245 Example Code and Data Size: These are the sizes for the OS-independent
12247 debug version of the code includes the debug output trace mechanism and
12249 a much larger code and data size.
12260 2) iASL Compiler/Disassembler and Tools:
12264 and automatically generate ASL External() statements for symbols not
12267 disassembly and recompilation of interdependent tables such as SSDTs
12272 invocations of external control methods and generate appropriate
12278 standalone method invocations and invocations as the source operand of a
12282 LLessEqual, and LGreaterEqual. Previously disassembled as LNot(LEqual()),
12283 LNot(LGreater()), and LNot(LLess()), this makes the disassembled ASL code
12284 more readable and likely closer to the original ASL source.
12298 be discovered, and the children of the device would be incorrectly
12302 contain _INI are identified and ignored during device initialization.
12317 Defined and deployed a new OSL interface, AcpiOsValidateAddress. This
12318 interface is called during the creation of all AML operation regions, and
12326 Defined and deployed a new OSL interface, AcpiOsValidateInterface. This
12332 Restructured and corrected various problems in the exception handling
12334 paths within DsCallControlMethod and DsTerminateControlMethod in dsmethod
12341 with the disassembler and other areas where such strings must not be
12349 Example Code and Data Size: These are the sizes for the OS-independent
12351 debug version of the code includes the debug output trace mechanism and
12353 a much larger code and data size.
12364 2) iASL Compiler/Disassembler and Tools:
12366 Implemented 3 new warnings for iASL, and implemented multiple warning
12372 WAIT_FOREVER (0xFFFF) and the code does not examine the return value to
12377 operand and it also does not use the function return value from the
12398 ASF!, BOOT, CPEP, DBGP, MCFG, SPCR, SPMI, TCPA, and WDRT. With this
12400 all current and known ACPI tables are now defined in the ACPICA headers
12401 and
12402 are available for use by device drivers and other software.
12414 reorganization and an internal datatype that had been changed to 8-bit
12420 null pointers are now trapped and ignored, matching the behavior of the
12432 ACPI tables consumed by the ACPICA core, and another for the
12434 ACPI tables that are consumed by the drivers and other software. The
12436 FADT definitions were merged into one common section and three different
12437 tables (ACPI 1.0, 1.0+, and 2.0)
12439 Example Code and Data Size: These are the sizes for the OS-independent
12441 debug version of the code includes the debug output trace mechanism and
12443 a much larger code and data size.
12453 2) iASL Compiler/Disassembler and Tools:
12455 Disassembler: Implemented support to decode and format all non-AML ACPI
12456 tables (tables other than DSDTs and SSDTs.) This includes the new tables
12457 added to the ACPICA headers, therefore all current and known ACPI tables
12470 input file. The default invocation extracts only the DSDTs and SSDTs.
12472 Fixed a couple of gcc generation issues for iASL and AcpiExec and added a
12491 and 32 bytes for the 64-bit case.
12501 and "Windows 2006".
12508 Removed all remnants of the obsolete ACPI_REPORT_* macros and the
12510 code. (These macros have been replaced by the ACPI_ERROR and ACPI_WARNING
12513 Code and Data Size: These are the sizes for the acpica.lib produced by
12519 trace mechanism and has a much larger code and data size. Note that these
12520 values will vary depending on the efficiency of the compiler and the
12531 2) iASL Compiler/Disassembler and Tools:
12535 automatically extract the DSDT and all SSDTs from the input acpidump text
12536 file and dump the binary output to separate files. It can also display a
12537 summary of the input file including the headers for each table found and
12559 objects, and placing invalid pointers onto the internal operator result
12573 ACPI_MEM_ALLOCATE and ACPI_MEM_FREE are renamed to ACPI_ALLOCATE and
12576 Code and Data Size: These are the sizes for the acpica.lib produced by
12582 trace mechanism and has a much larger code and data size. Note that these
12583 values will vary depending on the efficiency of the compiler and the
12600 resource descriptor, a name is assigned to the descriptor and the offset
12602 translated to the appropriate resource tag and pathname. The addition of
12604 source code and helps eliminate run-time errors when the disassembled
12606 is modified (and recompiled) in such a way as to invalidate the original
12612 specification, and will be added for ACPI 3.0b.
12640 VendorLong, and Interrupt. This was noticed on IA64 machines, but could
12647 Code and Data Size: These are the sizes for the acpica.lib produced by
12653 trace mechanism and has a much larger code and data size. Note that these
12654 values will vary depending on the efficiency of the compiler and the
12667 Implemented support for new reserved names: _WDG and _WED are Microsoft
12688 failed with an exception. This also fixes a couple of related RefOf and
12715 Code and Data Size: The current and previous library sizes for the core
12716 subsystem are shown below. These are the code and data sizes for the
12721 code includes the debug output trace mechanism and has a much larger code
12722 and data size. Note that these values will vary depending on the
12724 of the compiler and the compiler options used during generation.
12755 Implemented and deployed new macros and functions for error and warning
12756 messages across the subsystem. These macros are simpler and generate less
12758 ACPI_WARNING, and ACPI_INFO replace the ACPI_REPORT_* macros. The older
12767 resolved, in both the interpreter and the iASL compiler.
12780 Code and Data Size: The current and previous library sizes for the core
12781 subsystem are shown below. These are the code and data sizes for the
12786 code includes the debug output trace mechanism and has a much larger code
12787 and data size. Note that these values will vary depending on the
12789 of the compiler and the compiler options used during generation.
12810 Added 2006 copyright to all module headers and signons. This affects
12811 virtually every file in the ACPICA core subsystem, iASL compiler, and the
12817 ACPI_DEBUG_PRINT macro invoked at the ACPI_DB_ERROR and ACPI_DB_WARN
12819 levels with the ACPI_REPORT_ERROR and ACPI_REPORT_WARNING macros,
12820 respectively. This preserves all error and warning messages in the non-
12825 and
12828 but all error/warning reporting may be disabled if desired (and code
12837 Code and Data Size: The current and previous library sizes for the core
12838 subsystem are shown below. These are the code and data sizes for the
12843 code includes the debug output trace mechanism and has a much larger code
12844 and data size. Note that these values will vary depending on the
12846 of the compiler and the compiler options used during generation.
12878 and only if the _INI method exists. The _STA method is used to determine
12883 (Prototype and assistance from Dong Wei)
12892 Break, Continue, If, and CreateField operators. (Valery Podrezov)
12899 disassembler and AML debugger to the common utilities directory so that
12909 Code and Data Size: The current and previous library sizes for the core
12910 subsystem are shown below. These are the code and data sizes for the
12915 code includes the debug output trace mechanism and has a much larger code
12916 and data size. Note that these values will vary depending on the
12918 of the compiler and the compiler options used during generation.
12965 Code and Data Size: The current and previous library sizes for the core
12966 subsystem are shown below. These are the code and data sizes for the
12971 code includes the debug output trace mechanism and has a much larger code
12972 and data size. Note that these values will vary depending on the
12974 of the compiler and the compiler options used during generation.
12990 and this error is now detected and flagged during the analysis phase.
12994 name and version of the original ASL compiler.
13006 This also fixed a related regression with the mechanism that detects and
13013 any errors occurred during the parse, and it seemed to be overkill. A
13024 will find and return a vendor-defined resource descriptor within a _CRS
13043 Updated the Linux makefiles for the iASL compiler and AcpiExec to include
13046 Code and Data Size: The current and previous library sizes for the core
13047 subsystem are shown below. These are the code and data sizes for the
13052 code includes the debug output trace mechanism and has a much larger code
13053 and data size. Note that these values will vary depending on the
13055 of the compiler and the compiler options used during generation.
13093 fully initialized and the SCI handler is installed. This allows the _PRW
13098 Converted the ACPI internal object disassemble and display code within
13100 AML debugger to fully table-driven operation, reducing code size and
13108 debugger "Object" command and the AcpiWalkNamespace external interfaces.
13110 and
13115 code is shared by both the Resource Manager and the AML Debugger.
13117 Code and Data Size: The current and previous library sizes for the core
13118 subsystem are shown below. These are the code and data sizes for the
13123 code includes the debug output trace mechanism and has a much larger code
13124 and data size. Note that these values will vary depending on the
13126 of the compiler and the compiler options used during generation.
13140 for both Buffer and Package objects where the parse stack could overflow.
13144 characters within comment fields. The scan is now always performed and is
13152 reduced. This should improve performance and reduce the possibility of
13169 Implemented support for the EM64T and other x86-64 processors. This
13176 internal format and the reverse) and the debug code to dump internal
13177 resource descriptors are fully table-driven, reducing code and data size
13178 and
13181 The OSL interfaces for Acquire and Release Lock now use a 64-bit flag
13192 flags for both Memory and I/O address resource descriptors. For Memory,
13193 implemented support for the MTP and TTP flags. For I/O, split the TRS and
13196 Code and Data Size: The current and previous library sizes for the core
13197 subsystem are shown below. These are the code and data sizes for the
13202 code includes the debug output trace mechanism and has a much larger code
13203 and data size. Note that these values will vary depending on the
13205 of the compiler and the compiler options used during generation.
13236 Improved comments and text alignment for the resource descriptor code
13251 code has been optimized to simplify and eliminate duplicated code, CPU
13253 use has been decreased by optimizing function parameters and local
13254 variables, and naming conventions across the manager have been
13256 for clarity and ease of maintenance (this includes function, parameter,
13257 variable, and struct/typedef names.) The update may force changes in some
13260 All Resource Manager dispatch and information tables have been moved to a
13261 single location for clarity and ease of maintenance. One new file was
13273 mismatch warnings; the return_UINT8 and return_UINT32 macros are provided
13280 this mechanism. The intent is to allow the host OS to easily enable and
13286 specified - a length of one is used and a warning is issued. This matches
13289 Code and Data Size: The current and previous library sizes for the core
13290 subsystem are shown below. These are the code and data sizes for the
13295 code includes the debug output trace mechanism and has a much larger code
13296 and data size. Note that these values will vary depending on the
13298 of the compiler and the compiler options used during generation.
13321 recognized, parsed, disassembled, and displayed.
13324 dispatch and lookup, eliminating many of the large switch() statements.
13326 reduces overall subsystem code size and code complexity. Affects the
13327 resource parsing and construction, disassembly, and debug dump output.
13329 Cleaned up and restructured the debug dump output for all resource
13330 descriptors. Improved readability of the output and reduced code size.
13335 Code and Data Size: The current and previous library sizes for the core
13336 subsystem are shown below. These are the code and data sizes for the
13341 code includes the debug output trace mechanism and has a much larger code
13342 and data size. Note that these values will vary depending on the
13344 of the compiler and the compiler options used during generation.
13363 and
13373 Fixed a problem with the internal Owner ID allocation and deallocation
13374 mechanisms for control method execution and recursive method invocation.
13375 This should eliminate the OWNER_ID_LIMIT exceptions and "Invalid OwnerId"
13380 executable code" until this support is fully implemented and debugged.
13400 Code and Data Size: The current and previous core subsystem library sizes
13401 are shown below. These are the code and data sizes for the acpica.lib
13405 the debug output trace mechanism and has a much larger code and data
13409 and the compiler options used during generation.
13422 and
13423 dma lists for the following ASL macros: Dma(), Irq(), IrqNoFlags(), and
13426 Implemented error checking for the Irq() and IrqNoFlags() macros to
13428 too many values in the interrupt list (16 max) and invalid values in the
13448 signatures and table lengths match. This will allow different tables with
13449 the same OEM Table ID and revision to be loaded - probably against the
13455 Code and Data Size: Current and previous core subsystem library sizes are
13456 shown below. These are the code and data sizes for the acpica.lib
13458 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13460 debug output trace mechanism and has a much larger code and data size.
13463 and
13480 length packages when the package length is not specified and the number
13499 resource and should eliminate the AE_OWNER_ID_LIMIT exceptions seen on
13517 Linted the entire ACPICA source tree for both 32-bit and 64-bit.
13521 commands Object and Methods.
13523 Code and Data Size: Current and previous core subsystem library sizes are
13524 shown below. These are the code and data sizes for the acpica.lib
13526 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13528 debug output trace mechanism and has a much larger code and data size.
13531 and
13563 and
13577 Redesigned and reimplemented the "Owner ID" mechanism used to track
13578 namespace objects created/deleted by ACPI tables and control method
13579 execution. A bitmap is now used to allocate and free the IDs, thus
13586 Removed the UINT32_BIT and UINT16_BIT types that were used for the
13596 is a frequently used function and this improvement increases the
13600 Fixed several possible memory leaks and the inverse - premature object
13603 Code and Data Size: Current and previous core subsystem library sizes are
13604 shown below. These are the code and data sizes for the acpica.lib
13606 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13608 debug output trace mechanism and has a much larger code and data size.
13611 and
13629 and type this object in any manner desired, simplifying the OSL
13631 Linux, and should be defined in the OS-specific header file for other
13644 _HID, _UID, and _CID are displayed for these devices.
13655 (including all sub-objects and their values.)
13657 Restructured the code base to split some files because of size and/or
13660 below. All makefiles and project files included in the ACPI CA release
13668 Code and Data Size: Current and previous core subsystem library sizes are
13669 shown below. These are the code and data sizes for the acpica.lib
13671 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13673 debug output trace mechanism and has a much larger code and data size.
13676 and
13707 utalloc.c for an example implementation, and acpiosxf.h for the exact
13715 Modified the interfaces to AcpiOsAcquireLock and AcpiOsReleaseLock to
13717 and restore a flags parameter. This fits better with many OS lock models.
13721 by itself, a simple and fast operation. With assistance from Alexey
13727 specification, the XSDT is optional in all cases, and the table manager
13728 therefore now checks for both an RSDP >=2 and a valid XSDT pointer.
13757 and args could be set.)
13759 Code and Data Size: Current and previous core subsystem library sizes are
13760 shown below. These are the code and data sizes for the acpica.lib
13762 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13764 debug output trace mechanism and has a much larger code and data size.
13767 and
13802 Implemented support to execute Type 1 and Type 2 AML opcodes appearing at
13807 until the release of ACPI 2.0B (2002) and is now supported within ACPI CA
13816 second pass parse of ACPI tables and control methods. It appears that
13825 case, improving mutex performance (and overall subsystem performance)
13829 error conditions and error handling control paths. These fixes were
13830 suggested by FreeBSD and the Coverity Prevent source code analysis tool.
13836 Code and Data Size: Current and previous core subsystem library sizes are
13837 shown below. These are the code and data sizes for the acpica.lib
13839 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13841 debug output trace mechanism and has a much larger code and data size.
13844 and
13857 Implemented support to allow Type 1 and Type 2 ASL operators to appear at
13861 up until the release of ACPI 2.0B (2002) and is now supported by the iASL
13873 An error message is now generated for the Mutex and Method operators if
13900 Fixed a problem where string and buffer objects with "static" pointers
13921 and
13924 Code and Data Size: Current and previous core subsystem library sizes are
13925 shown below. These are the code and data sizes for the acpica.lib
13927 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
13929 debug output trace mechanism and has a much larger code and data size.
13932 and
13958 The disassembler now correctly handles variable length packages and
13969 This was the Index argument to the Index, Mid, and Match operators.
13973 not a POSIX-defined function and not present in most kernel-level C
13988 options. AcpiBin runs on Windows and has not yet been generated/validated
13992 Updated and fixed the table dump option for AcpiBin (-d). This option
13997 Code and Data Size: Current and previous core subsystem library sizes are
13998 shown below. These are the code and data sizes for the acpica.lib
14000 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14002 debug output trace mechanism and has a much larger code and data size.
14005 and
14047 written, and the type of the object will be displayed.)
14051 core subsystem and the iASL compiler.
14057 prototyped (even static functions) and the formatting is consistent.
14059 Two new header files have been added, acopcode.h and acnames.h.
14063 Code and Data Size: Current and previous core subsystem library sizes are
14064 shown below. These are the code and data sizes for the acpica.lib
14066 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14068 debug output trace mechanism and has a much larger code and data size.
14071 and
14086 ResourceSourceIndex and the ResourceSource fields, both must be present,
14107 requires an update to the ACPI spec, and should eliminate the recent
14118 enabled with the AcpiGbl_EnableInterpreterSlack flag, and should
14124 If, Else, and While operators. String and Buffer arguments are
14132 with the first character as the most significant digit, and ending with
14136 non-hex character terminates the conversion and this is the code that was
14154 Restructured and simplified the pswalk.c module (AcpiPsDeleteParseTree)
14156 improve performance and reduce code size. (Code provided by Alexey
14159 Code and Data Size: Current and previous core subsystem library sizes are
14160 shown below. These are the code and data sizes for the acpica.lib
14162 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14164 debug output trace mechanism and has a much larger code and data size.
14167 and
14189 compiler has no knowledge of where, and thus cannot optimize namepaths.
14192 inadvertently omitted from the ACPI specification, and will require an
14217 and ObjectType operators were not treated properly. They are now treated
14221 Fixed and enhanced the "list namespace" option (-ln). This option was
14225 Improved error handling for the Field, IndexField, and BankField
14227 The compiler now cleanly reports and recovers from errors in the field
14231 TRS and TTP were not always handled correctly.
14245 Implemented AML Interpreter and Debugger support for the new ACPI 3.0
14246 Extended Address (IO, Memory, Space), QwordSpace, DwordSpace, and
14261 Updated header support for the MADT processor local Apic struct and MADT
14264 Implemented header support for the SRAT and SLIT ACPI tables.
14270 Code and Data Size: Current and previous core subsystem library sizes are
14271 shown below. These are the code and data sizes for the acpica.lib
14273 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14275 debug output trace mechanism and has a much larger code and data size.
14278 and
14298 a type3 opcode and this will require an update to the ACPI specification.
14300 Disassembler: Implemented support for the TTP, MTP, and TRS resource
14301 descriptor fields. These fields were inadvertently ignored and not output
14333 Fixed a problem with the Buffer and Package operators where the
14355 Code and Data Size: Current and previous core subsystem library sizes are
14356 shown below. These are the code and data sizes for the acpica.lib
14358 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14360 debug output trace mechanism and has a much larger code and data size.
14363 and
14390 version 20050114, and caused an AE_AML_NO_OPERAND exception during an
14393 The local object cache is now optional, and is disabled by default. Both
14394 AcpiExec and the iASL compiler enable the cache because they run in user
14395 mode and this enhances their performance. #define
14405 in this case and the implicitly returned object is deleted.
14406 AcpiUtEvaluateObject is only occasionally used, and only to execute
14408 methods such as _STA and _INI where the return type is known up front.
14415 and explicit conversion via the ToInteger() operator.
14419 not needed for normal operation and should increase the performance of
14425 The AcpiExec source and makefile are included in the Unix/Linux package
14429 Code and Data Size: Current and previous core subsystem library sizes are
14430 shown below. These are the code and data sizes for the acpica.lib
14432 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14434 debug output trace mechanism and has a much larger code and data size.
14437 and
14452 generate the warning, and the type is assumed to be an integer. As per
14458 Switch/Case support: Implemented support for buffer and string objects as
14460 buffers and strings.
14466 the second operand, and this allows the case value to be implicitly
14475 the earlier implementation (_T_0 through _T_9 and _T_A through _T_Z.)
14481 the core subsystem, iASL compiler, and the utilities.
14494 is ambiguous and will be updated to specify that the null terminator must
14506 performed on the OemId and OemTableId table header fields. These fields
14515 Buffers, Strings, Packages, Object References, and DDB Handles. If
14522 interface. This enables implicit returns from the _STA and _INI methods,
14537 Code and Data Size: Current and previous core subsystem library sizes are
14538 shown below. These are the code and data sizes for the acpica.lib
14540 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14542 debug output trace mechanism and has a much larger code and data size.
14545 and
14558 ACPI 3.0 support is nearing completion in both the iASL compiler and the
14572 Fixed a problem in the internal string-to-buffer and buffer-to-buffer
14577 Code and Data Size: Current and previous core subsystem library sizes are
14578 shown below. These are the code and data sizes for the acpica.lib
14580 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14582 debug output trace mechanism and has a much larger code and data size.
14585 and
14599 ExtendedIO, ExtendedMemory, ExtendedSpace, QWordSpace, and WordSpace.
14623 The ReadWrite parameter is now optional for the Memory32 and similar
14633 rewritten to eliminate unnecessary complexity, bugs, and boundary
14636 Fixed a problem in the ToInteger, ToBuffer, ToHexString, and
14642 Fixed a problem with the ToDecimalString and ToHexString where an
14650 Fixed a problem in oswinxf (used by AcpiExec and iASL) to allow > 128
14653 Code and Data Size: Current and previous core subsystem library sizes are
14654 shown below. These are the code and data sizes for the acpica.lib
14656 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14658 debug output trace mechanism and has a much larger code and data size.
14661 and
14674 Fixed typechecking for the ObjectType and SizeOf operators. Problem was
14690 buffers and strings to integers.
14701 behavior is to simply delete any existing object and directly store the
14710 ACPI 2.0 (and above) RSDPs. Note that the search continues until a valid
14713 Code and Data Size: Current and previous core subsystem library sizes are
14714 shown below. These are the code and data sizes for the acpica.lib
14716 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14718 debug output trace mechanism and has a much larger code and data size.
14721 and
14743 ACPI 1.0 and ACPI 2.0) that adds support for the FADT reset register.
14745 Implemented optional support to allow uninitialized LocalX and ArgX
14757 Fixed a problem in the implementation of the SizeOf and ObjectType
14764 Code and Data Size: Current and previous core subsystem library sizes are
14765 shown below. These are the code and data sizes for the acpica.lib
14767 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14769 debug output trace mechanism and has a much larger code and data size.
14772 and
14785 Implemented support for all ACPI 3.0 reserved names and methods.
14790 Implemented the ACPI 3.0 Function() and ToUUID() macros
14798 Note: ACPI CA is currently undergoing an in-depth and complete formal
14800 welcome. This will result in an increase in the frequency of releases and
14804 - Bit fields and operation regions
14805 - 64-bit math support and 32-bit-only "truncated" math support
14806 - Exceptional conditions, both compiler and interpreter
14807 - Dynamic object deletion and memory leaks
14816 AcpiEvGpeDetect and AcpiEvCreateGpeBlock. Removed references to the
14820 Fixed a problem in the Increment and Decrement operators where incorrect
14823 argument and the arg is then incremented/decremented.
14843 Code and Data Size: Current and previous core subsystem library sizes are
14844 shown below. These are the code and data sizes for the acpica.lib
14846 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14848 debug output trace mechanism and has a much larger code and data size.
14851 and
14865 Allow the use of the ObjectType operator on uninitialized Locals and Args
14876 U is an uppercase letter and N is a hex digit.
14903 hexadecimal. The operator now handles both decimal strings and hex
14909 potentially affected all implicit conversions and also the
14911 and ToHexString operators.
14914 zero, an incorrect string object was created and the value of the input
14923 size and complexity.
14925 Code and Data Size: Current and previous core subsystem library sizes are
14926 shown below. These are the code and data sizes for the acpica.lib
14928 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14930 debug output trace mechanism and has a much larger code and data size.
14933 and
14993 Code and Data Size: Current and previous core subsystem library sizes are
14994 shown below. These are the code and data sizes for the acpica.lib
14996 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
14998 debug output trace mechanism and has a much larger code and data size.
15001 and
15014 Fixed a problem with constant folding and the LNot operator. LNot was
15039 and
15047 Source1 and Source2 must each evaluate to an integer, a string, or a
15053 - Updated and corrected the behavior of the string conversion support.
15077 - Code and Data Size: Current and previous core subsystem library sizes
15079 shown below. These are the code and data sizes for the acpica.lib
15081 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15083 debug output trace mechanism and has a much larger code and data size.
15086 and
15107 Designed and implemented support within the AML interpreter for the so-
15118 hardware interfaces (AcpiHwLowLevelRead and AcpiHwLowLevelWrite). This
15119 support was not used internally, and would not work correctly anyway
15121 the PCI bus number and segment number were not supported. There are
15126 Code and Data Size: Current and previous core subsystem library sizes are
15127 shown below. These are the code and data sizes for the acpica.lib
15129 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15131 debug output trace mechanism and has a much larger code and data size.
15134 and
15159 of interrupts (enabled/disabled) in order to avoid possible deadlock and
15162 Implemented a "lexicographical compare" for String and Buffer objects
15164 the logical operators -- LGreater, LLess, LGreaterEqual, and LLessEqual -
15187 Renamed OSD_HANDLER to ACPI_OSD_HANDLER, and OSD_EXECUTION_CALLBACK to
15196 Code and Data Size: Current and previous core subsystem library sizes are
15197 shown below. These are the code and data sizes for the acpica.lib
15199 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15201 debug output trace mechanism and has a much larger code and data size.
15204 and
15231 Eliminated optimization messages for "_T_x" objects and small constants
15240 Implemented support for Buffer and String objects (as per ACPI 2.0) for
15242 following ASL operators: LEqual, LGreater, LLess, LGreaterEqual, and
15252 Code and Data Size: Current and previous core subsystem library sizes are
15253 shown below. These are the code and data sizes for the acpica.lib
15255 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15257 debug output trace mechanism and has a much larger code and data size.
15260 and
15274 Implemented support for Buffer and String objects (as per ACPI 2.0) for
15276 following ASL operators: LEqual, LGreater, LLess, LGreaterEqual, and
15287 of Windows place the FADT in the registry under the name "FADT" and not
15303 Completed a new design and implementation for EBDA (Extended BIOS Data
15317 Found and fixed a problem in the Field Support Code where data could be
15325 Code and Data Size: Current and previous core subsystem library sizes are
15326 shown below. These are the code and data sizes for the acpica.lib
15328 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15330 debug output trace mechanism and has a much larger code and data size.
15333 and
15356 during and after GPE method execution. Result of 04/27 changes.
15360 Removed AcpiHwEnableGpe and AcpiHwDisableGpe, replaced by the single
15377 _INI methods, and apparently "other" AML interpreters execute them.
15383 Code and Data Size: Current and previous core subsystem library sizes are
15384 shown below. These are the code and data sizes for the acpica.lib
15386 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15388 debug output trace mechanism and has a much larger code and data size.
15391 and
15407 now three types of GPEs: wake-only, runtime-only, and combination
15412 or a notebook lid switch. GPEs that have an _Lxx or _Exx method and are
15414 referenced by any _PRW methods are marked for "runtime" and hardware
15417 (and disabled at runtime). However, at sleep time, only those GPEs that
15431 and the _PRW methods are executed. This will prevent errors when the
15437 enable info for runtime and wake separate and in the GPE_EVENT_INFO. We
15440 Always clear the wake status and fixed/GPE status bits before sleep, even
15443 Improved the AML debugger output for displaying the GPE blocks and their
15468 CPU stack requirement reduction: Cleaned up the method execution and
15471 copying the various method parameters over and over again.
15473 In evregion.c: Correctly exit and reenter the interpreter region if and
15505 Extract GPE number and possibly GpeDevice
15518 Code and Data Size: Current and previous core subsystem library sizes are
15519 shown below. These are the code and data sizes for the acpica.lib
15521 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15523 debug output trace mechanism and has a much larger code and data size.
15526 and
15548 argument (LocalX or ArgX), no conversion is performed and the result is
15552 Changed the behavior of the _PRW method scan to ignore any and all errors
15561 Code and Data Size: Current and previous core subsystem library sizes are
15562 shown below. These are the code and data sizes for the acpica.lib
15564 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15566 debug output trace mechanism and has a much larger code and data size.
15569 and
15603 Implemented support for "wake" GPEs via interaction between GPEs and the
15605 identified as a WAKE GPE and by default will no longer be enabled at
15625 Integrated a fix for resource descriptors where both _MEM and _MTP were
15638 Code and Data Size: Current and previous core subsystem library sizes are
15639 shown below. These are the code and data sizes for the acpica.lib
15641 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15643 debug output trace mechanism and has a much larger code and data size.
15646 and
15663 method execution did not abort cleanly. For example, objects created and
15674 and
15675 "Windows 2001.1", and can be easily upgraded for new strings as
15680 Global Lock Support: Now allows multiple acquires and releases with any
15702 Code and Data Size: Current and previous core subsystem library sizes are
15703 shown below. These are the code and data sizes for the acpica.lib
15705 by the Microsoft Visual C++ 6.0 compiler, and these values do not include
15707 debug output trace mechanism and has a much larger code and data size.
15710 and
15759 Completed investigation and implementation of the call-by-reference
15773 Improved the output of the Debug object to display buffer, package, and
15823 the object reference count, and not create a new copy of the
15829 Implemented support to clear the SLP_TYP and SLP_EN bits when
15841 the active and edge/level bits.
15849 Code and Data Size: Current and previous core subsystem library
15850 sizes are shown below. These are the code and data sizes for the
15851 acpica.lib produced by the Microsoft Visual C++ 6.0 compiler, and
15854 mechanism and has a much larger code and data size. Note that
15856 and the compiler options used during generation.
15889 Implemented support for executing _STA and _INI methods for
15894 Implemented and deployed a GetDescriptorName function to decode
15898 Implemented and deployed a GetNodeName function to extract the 4-
15900 and error output, as well as guarding against null pointers during
15903 Implemented and deployed the ACPI_FORMAT_UINT64 helper macro to
15904 simplify the debug and error output of 64-bit integers. This
15905 macro replaces the HIDWORD and LODWORD macros for dumping these
15909 AcpiOsStall(), and also return an error if the operand is larger
15919 Fixed a reported error where and incorrect GPE number was passed
15921 output, however. Used this opportunity to clean up and streamline
15924 Code and Data Size: Current and previous core subsystem library
15925 sizes are shown below. These are the code and data sizes for the
15926 acpica.lib produced by the Microsoft Visual C++ 6.0 compiler, and
15930 mechanism and has a much larger code and data size. Note that
15932 and the compiler options used during generation.
15961 granularity and therefore required multiple writes to complete the
15969 Completed fixes for LoadTable() and Unload() and verified their
15973 Implemented full support for the MADT and ECDT tables in the ACPI
15979 list. This included checks for minimum descriptor length, and
15983 Code and Data Size: Current and previous core subsystem library
15984 sizes are shown below. These are the code and data sizes for the
15985 acpica.lib produced by the Microsoft Visual C++ 6.0 compiler, and
15988 mechanism and has a much larger code and data size. Note that
15990 and the compiler options used during generation.
16016 Found and fixed a longstanding problem with the late execution of
16018 Buffer Fields, Buffers, and Packages). If the name string
16030 Fixed several 64-bit issues with prototypes, casting and data
16037 Code and Data Size: Current and previous core subsystem library
16038 sizes are shown below. These are the code and data sizes for the
16039 acpica.lib produced by the Microsoft Visual C++ 6.0 compiler, and
16042 mechanism and has a much larger code and data size. Note that
16044 and the compiler options used during generation.
16068 Fixes from FreeBSD and NetBSD. (Frank van der Linden, Thomas
16108 Re-add acpitable.c and acpismp=force. This improves backwards
16110 compatibility and also cleans up the code to a significant degree.
16112 Add ASUS Value-add driver (Karol Kozimor and Julien Lerouge)
16119 Found and fixed a reported problem where an AE_NOT_FOUND error
16124 caller's and the called method would delete the caller's
16130 locals and arguments at the time of the abort, and a trace of all
16137 and length zero is created. A warning is no longer issued when
16141 _HIDs, _UIDs, and _CIDs in the AML interpreter. One leading
16156 Code and Data Size: Current and previous core subsystem library
16157 sizes are shown below. These are the code and data sizes for the
16158 acpica.lib produced by the Microsoft Visual C++ 6.0 compiler, and
16161 mechanism and has a much larger code and data size. Note that
16163 and the compiler options used during generation.
16176 after it was already working, thus disabling all ACPI and the IRQs
16190 in incorrect warnings and incorrect AML code. This was a problem
16191 in both the ASL parser and the code generator.
16196 Added changes to existing interfaces, new exception codes, and new
16208 initialized and the system has entered ACPI mode. This is because
16213 Fixed some memory leak issues related to address space handler and
16224 structures to simplify the linked lists and the related code.
16231 Updated AcpiOsReadable and AcpiOsWritable to use the ACPI_SIZE
16242 first in the parent's child list, and had additional peers (not
16245 Code and Data Size: Current core subsystem library sizes are shown
16246 below. These are the code and data sizes for the acpica.lib
16247 produced by the Microsoft Visual C++ 6.0 compiler, and these
16249 version of the code includes the debug output trace mechanism and
16250 has a much larger code and data size. Note that these values will
16251 vary depending on the efficiency of the compiler and the compiler
16288 Fixed a problem in AcpiHwDisableGpeBlock() and
16313 interfaces and changes to existing interfaces.
16321 are AcpiInstallGpeBlock and AcpiRemoveGpeBlock. The Event
16323 into separate interfaces for Fixed Events and General Purpose
16330 Code and Data Size: Current core subsystem library sizes are shown
16331 below. These are the code and data sizes for the acpica.lib
16332 produced by the Microsoft Visual C++ 6.0 compiler, and these
16334 version of the code includes the debug output trace mechanism and
16335 has a much larger code and data size. Note that these values will
16336 vary depending on the efficiency of the compiler and the compiler
16353 The GPE handling and dispatch code has been completely overhauled
16355 This affects internal data structures and code only; there should
16359 The FADT fields GPE0_BLK_LEN and GPE1_BLK_LEN are now the only
16368 causes an SMI event and greatly slows down SCI events. (This may
16380 Code and Data Size: Current core subsystem library sizes are shown
16381 below. These are the code and data sizes for the acpica.lib
16382 produced by the Microsoft Visual C++ 6.0 compiler, and these
16384 version of the code includes the debug output trace mechanism and
16385 has a much larger code and data size. Note that these values will
16386 vary depending on the efficiency of the compiler and the compiler
16408 Expand the mem= cmdline to allow the specification of reserved and
16425 Fixed a problem where ASL include files could not be found and
16453 (Both) Move more headers to include/acpi, and delete an unused
16462 (Both) acpiphp.h includes both linux/acpi.h and acpi_bus.h. Since
16485 Added support to disassemble SSDT and PSDTs.
16510 Renamed all instances of NATIVE_UINT and NATIVE_INT to
16511 ACPI_NATIVE_UINT and ACPI_NATIVE_INT, respectively.
16513 Copyright in all module headers (both Linux and non-Linux) has be
16516 Code and Data Size: Current core subsystem library sizes are shown
16517 below. These are the code and data sizes for the acpica.lib
16518 produced by the Microsoft Visual C++ 6.0 compiler, and these
16520 version of the code includes the debug output trace mechanism and
16521 has a much larger code and data size. Note that these values will
16522 vary depending on the efficiency of the compiler and the compiler
16556 All typedefs on structs and unions have been removed in keeping
16565 Fixed a problem where identifiers within procedure headers and
16571 readability and maintainability.
16596 lack of need and lack of consistent use.
16598 Code and Data Size: Current core subsystem library sizes are shown
16599 below. These are the code and data sizes for the acpica.lib
16600 produced by the Microsoft Visual C++ 6.0 compiler, and these
16602 version of the code includes the debug output trace mechanism and
16603 has a much larger code and data size. Note that these values will
16604 vary depending on the efficiency of the compiler and the compiler
16622 the same as the target object type and the length of the object
16630 the control method and thus the deferred creation of the internal
16634 able to obtain the required parameter count and thus properly
16640 and caused memory corruption. This problem was seen to cause
16648 evaluation (such as _STA, etc.) This may become and external
16655 linking for iASL compiler and AcpiExec. Several files were split
16663 Code and Data Size: Current core subsystem library sizes are shown
16664 below. These are the code and data sizes for the acpica.lib
16665 produced by the Microsoft Visual C++ 6.0 compiler, and these
16667 version of the code includes the debug output trace mechanism and
16668 has a much larger code and data size. Note that these values will
16669 vary depending on the efficiency of the compiler and the compiler
16684 Source Index" and "Resource Source" fields were not inserted into
16689 The optional "Resource Source Index" and "Resource Source" fields
16712 a protection fault if the object being copied was a Package and
16718 specification states that both the address and length of the GPE
16721 supported. The code has been changed so that both the address and
16726 Code and Data Size: Current core subsystem library sizes are shown
16727 below. These are the code and data sizes for the acpica.lib
16728 produced by the Microsoft Visual C++ 6.0 compiler, and these
16730 version of the code includes the debug output trace mechanism and
16731 has a much larger code and data size. Note that these values will
16732 vary depending on the efficiency of the compiler and the compiler
16753 ASM and C (the -i switch). This simplifies BIOS development by
16757 (optionally generated) ASM and C AML source files.
16784 functions that create and initialize a specific object type. This
16800 Code and Data Size: Current core subsystem library sizes are shown
16801 below. These are the code and data sizes for the acpica.lib
16802 produced by the Microsoft Visual C++ 6.0 compiler, and these
16804 version of the code includes the debug output trace mechanism and
16805 has a much larger code and data size. Note that these values will
16806 vary depending on the efficiency of the compiler and the compiler
16844 0) ACPI Specification 2.0B is released and is now available at:
16851 This includes the early detection and handoff of the request to
16853 support code), and support for the bidirectional return packet
16865 Code and Data Size: Current core subsystem library sizes are shown
16866 below. These are the code and data sizes for the acpica.lib
16867 produced by the Microsoft Visual C++ 6.0 compiler, and these
16869 version of the code includes the debug output trace mechanism and
16870 has a much larger code and data size. Note that these values will
16871 vary depending on the efficiency of the compiler and the compiler
16923 Code and Data Size: Current core subsystem library sizes are shown
16924 below. These are the code and data sizes for the acpica.lib
16925 produced by the Microsoft Visual C++ 6.0 compiler, and these
16927 version of the code includes the debug output trace mechanism and
16928 has a much larger code and data size. Note that these values will
16929 vary depending on the efficiency of the compiler and the compiler
16943 Processor and Thermal objects were not recognized and installed in
16950 from the registry and save them to files (Windows version of the
16951 compiler only.) The required tables are the FADT, FACS, and DSDT.
16965 words, forward references are not allowed and Scope() cannot
16970 the known Compaq _SB_.OKEC problem and makes both the AML
16971 interpreter and iASL compiler compatible with other ACPI
16975 the ACPI Namespace and the associated operand objects. Many of
16977 pass namespace load. This cleanup simplifies the code and makes
16978 the entire namespace load mechanism much clearer and easier to
16984 problems with ASL Mutex objects and error messages for GPE
16991 and does not emit non-printable characters.
17005 Implemented ACPI 2.0B grammar change that disallows all Type 1 and
17014 forward references are not allowed and Scope() cannot create a new
17016 implementations and makes the Scope() implementation adhere to the
17047 Fixed a problem where CopyObject and the other "explicit"
17056 lookups. Common procedure generates and prints the lookup name as
17068 Code and Data Size: Current core subsystem library sizes are shown
17069 below. These are the code and data sizes for the acpica.lib
17070 produced by the Microsoft Visual C++ 6.0 compiler, and these
17072 version of the code includes the debug output trace mechanism and
17073 has a larger code and data size. Note that these values will vary
17074 depending on the efficiency of the compiler and the compiler
17092 Fix thermal management and make trip points. R/W (Pavel Machek)
17116 and RefOf() operators) in the ObjectType() and SizeOf() operators.
17129 predefined Scopes, Processor, PowerResource, and ThermalZone.)
17132 affects both the AML interpreter and the iASL compiler. Below is
17148 Ensure that the SCI has the proper polarity and trigger, even on
17159 would use ACPI tables, and then halfway through init, check the
17189 Ensure that the ACPI interrupt has the proper trigger and
17194 Make "acpi=off" actually do what it says, and not use the ACPI
17197 Added arch-neutral support for parsing SLIT and SRAT tables (Kochi
17215 Implemented a check and warning for unreachable code in the same
17241 handle corner cases, and improve code legibility (Kochi Takayoshi)
17248 standalone and the search rule (to root) was inadvertently
17249 applied. This could cause both the iASL compiler and the
17253 Found and fixed the problem where the HP Pavilion DSDT would not
17260 Code and Data Size: Current core subsystem library sizes are shown
17261 below. These are the code and data sizes for the acpica.lib
17262 produced by the Microsoft Visual C++ 6.0 compiler, and these
17264 version of the code includes the debug output trace mechanism and
17265 has a larger code and data size. Note that these values will vary
17266 depending on the efficiency of the compiler and the compiler
17297 Reworked the compiler options to make them more consistent and to
17302 Completed the design and implementation of the ASL namepath
17305 first attempt tries to utilize a single nameseg (4 characters) and
17320 Implemented a new option to disassemble and compile in one step.
17322 DSDT from the local machine, disassemble it, and compile it in one
17340 start and end), and missing StartDependentFn macro. These are
17343 Implemented _OSI support for the disassembler and compiler. _OSI
17349 constant folding, integer optimization, and namepath optimization.
17358 code and has been integrated into the iASL compiler (see below) as
17359 well as the single-step disassembly for the AML debugger and the
17361 resource templates and macros are fully supported. The
17366 Modified the Resource Manager to allow zero interrupts and zero
17371 output redirection for the AcpiOsPrintf and AcpiOsVprintf
17374 Code and Data Size: Current core subsystem library sizes are shown
17375 below. These are the code and data sizes for the acpica.lib
17376 produced by the Microsoft Visual C++ 6.0 compiler, and these
17378 version of the code includes the debug output trace mechanism and
17379 has a larger code and data size. Note that these values will vary
17380 depending on the efficiency of the compiler and the compiler
17408 Fixed a problem with the VendorShort and VendorLong resource
17412 inadvertently defined twice, allowing invalid syntax to pass and
17431 validated in any way and are returned from AcpiGetFirmwareTable if
17435 could be overridden. Added one new files, tbrsdt.c and
17443 Fixed a reported problem with the use of the RefOf and DeRefOf
17474 is necessary for ACPI 2.0 support, and for some laptops to
17500 Fixed a reported problem where constants such as Zero and One
17514 strings are resolved to object handles, and constant operators
17519 within the AML stream. This has simplified and reduced the
17524 optional target operands and stores to constants are defined to be
17527 Code and Data Size: Current core subsystem library sizes are shown
17528 below. These are the code and data sizes for the acpica.lib
17529 produced by the Microsoft Visual C++ 6.0 compiler, and these
17531 version of the code includes the debug output trace mechanism and
17532 has a larger code and data size. Note that these values will vary
17533 depending on the efficiency of the compiler and the compiler
17554 control method with one argument. There are no arguments, and
17560 Windows and Unix. This appears to be the longstanding issue
17561 concerning listing output and error messages.
17579 OmniBook where the FADT revision number and the table size are
17584 case where the workaround is simple enough and with no side
17589 - the FADT and FACS, as well as consistency checks between the
17590 revision number and the table size.
17596 Eliminated the use of the AE_AML_ERROR exception and replaced it
17603 Code and Data Size: Current core subsystem library sizes are shown
17604 below. These are the code and data sizes for the acpica.lib
17605 produced by the Microsoft Visual C++ 6.0 compiler, and these
17607 version of the code includes the debug output trace mechanism and
17608 has a larger code and data size. Note that these values will vary
17609 depending on the efficiency of the compiler and the compiler
17623 Much work done on ACPI init (MADT and PCI IRQ routing support).
17624 (Paul D. and Dominik Brodowski)
17643 uppercase letters and 4 hex digits.
17652 OperationRegion, PowerResource, Processor, and ThermalZone.)
17666 4) Tools and Utilities
17668 The 16-bit tools (adump16 and aexec16) have been regenerated and
17671 Fixed a problem with the output of both acpidump and adump16 where
17672 the indentation of closing parentheses and brackets was not
17687 version of the firmware DSDT and replace it with a different one
17691 device drivers and other system software - AcpiGetRegister and
17702 Code and Data Size: Current core subsystem library sizes are shown
17703 below. These are the code and data sizes for the acpica.lib
17704 produced by the Microsoft Visual C++ 6.0 compiler, and these
17706 version of the code includes the debug output trace mechanism and
17707 has a larger code and data size. Note that these values will vary
17708 depending on the efficiency of the compiler and the compiler
17721 Enhanced ACPI init code for SMP. We are now fully MPS and $PIR-
17744 Type3, Type4, and Type5 opcodes first defined in the ACPI 2.0
17747 evaluate to constants at compile time and will also simplify the
17759 Implemented an AML opcode optimization to use the Zero, One, and
17761 constants and thus reduce the overall size of the generated AML
17771 operators that are allowed within constant expressions and can
17778 and memory allocation model options.
17780 Updated the iASL Compiler User Reference to apply new format and
17781 add information about new features and options.
17789 cleaned with PC-lint (FlexLint) for both 32-bit and 64-bit
17795 the OSL) are now bubbled up and will abort a running control
17829 function was out of date and required a rewrite.
17831 Code and Data Size: Current core subsystem library sizes are shown
17832 below. These are the code and data sizes for the acpica.lib
17833 produced by the Microsoft Visual C++ 6.0 compiler, and these
17835 version of the code includes the debug output trace mechanism and
17836 has a larger code and data size. Note that these values will vary
17837 depending on the efficiency of the compiler and the compiler
17860 The Core subsystem and iASL compiler now share a common parse
17871 Buffer and Package objects. This allows complex expressions to be
17885 support to allow a common data type for both physical and logical
17890 GPE, Fixed Event, and PM Timer I/O. This allows the use of memory
17894 tables other than the FADT, FACS, DSDT, and SSDTs), but also does
17900 objects are now supported -- Devices, Processor, Power, and
17906 Code and Data Size: Current core subsystem library sizes are shown
17907 below. These are the code and data sizes for the acpica.lib
17908 produced by the Microsoft Visual C++ 6.0 compiler, and these
17910 version of the code includes the debug output trace mechanism and
17911 has a larger code and data size. Note that these values will vary
17912 depending on the efficiency of the compiler and the compiler
17929 'limit' and 'performance' interface (/proc) are fully functional.
17932 idle handler was modified to more aggressively use C2, and PIIX4
17951 Added back visual differentiation between fixed-feature and
17990 This was the root cause of the "AE_ERROR" and "AE_NO_MEMORY"
18004 will increase the limit, 2 will decrease, and 0 will reset to the
18056 Implemented support in AcpiLoadTable to allow loading of FACS and
18068 it is never used and causes lint warnings for ignoring the return
18071 Added error checking to all internal mutex acquire and release
18082 being overwritten with the FACS signature and clobbering the
18089 Code and Data Size: Current core subsystem library sizes are shown
18090 below. These are the code and data sizes for the acpica.lib
18091 produced by the Microsoft Visual C++ 6.0 compiler, and these
18093 version of the code includes the debug output trace mechanism and
18094 has a larger code and data size. Note that these values will vary
18095 depending on the efficiency of the compiler and the compiler
18108 Updated Linux-specific code for core macro and OSL interface
18111 Improved /proc/acpi/event. It now can be opened only once and has
18114 Fixed and restructured power management (acpi_bus).
18118 Fixed "charging/discharging" bug (and others) in acpi_battery.
18131 AML object labels that are output to the optional C and ASM source
18132 are now prefixed with both the ACPI table signature and table ID
18141 ACPI 2.0 support is complete in the entire Core Subsystem and the
18142 ASL compiler. All new ACPI 2.0 operators are implemented and all
18144 simultaneous code and data optimizations throughout the subsystem,
18146 cost in terms of code and data size.
18151 buffer validation and allocation to a common procedure. Return
18155 still use the original mechanism and pre-allocate the buffer(s).
18160 Restructured the Hardware and Event managers to be table driven,
18161 simplifying the source code and reducing the amount of generated
18165 procedure into a separate read and write, simplifying the code
18169 used only a handful of times and didn't have enough critical mass
18175 Reorganized the GPE information and shrunk a large array that was
18183 Changed the AcpiEnableEvent and AcpiDisableEvent external
18190 and eliminated.
18194 prefix (^) was not handled correctly in the interpreter and
18197 Removed obsolete and unnecessary GPE save/restore code.
18203 Implemented timeout and handle support in the external Global Lock
18214 Code and Data Size: Current core subsystem library sizes are shown
18215 below. These are the code and data sizes for the acpica.lib
18216 produced by the Microsoft Visual C++ 6.0 compiler, and these
18218 version of the code includes the debug output trace mechanism and
18219 has a larger code and data size. Note that these values will vary
18220 depending on the efficiency of the compiler and the compiler
18235 Added new Limit interface (Processor and Thermal drivers)
18243 Supports ACPI PCI IRQ routing (PCI Link and PCI root drivers)
18255 with labels and interleaved ASL source. 3) Output the AML in
18263 as well as the Octal and Hex escapes. Note: the insertion of a
18283 Enhanced blacklist with reason and severity fields. Any table's
18297 "ConcatenateResTemplate", "DataTableRegion", and "LoadTable"
18299 the ASL compiler and the AML interpreter. The only remaining ACPI
18307 AcpiAcquireGlobalLock and AcpiReleaseGlobalLock. The Timeout and
18310 Completed another pass at removing warnings and issues when
18313 add and subtract (diff) macros have changed considerably.
18316 Created and deployed a new ACPI_SIZE type that is 64-bits wide on
18318 wherever memory allocation and/or the C sizeof() operator is used,
18319 and affects the OSL memory allocation interfaces AcpiOsAllocate
18320 and AcpiOsCallocate.
18324 Code and Data Size: Current core subsystem library sizes are shown
18325 below. These are the code and data sizes for the acpica.lib
18326 produced by the Microsoft Visual C++ 6.0 compiler, and these
18328 version of the code includes the debug output trace mechanism and
18329 has a larger code and data size. Note that these values will vary
18330 depending on the efficiency of the compiler and the compiler
18342 Now checks for (and generates an error if detected) the use of a
18355 operator creates a new copy of an object (and is also used to
18365 have been implemented. The interrupt polarity and mode are now
18376 parse were not being deleted, and 2) The object owner ID mechanism
18386 Code and Data Size: Current core subsystem library sizes are shown
18387 below. These are the code and data sizes for the acpica.lib
18388 produced by the Microsoft Visual C++ 6.0 compiler, and these
18390 version of the code includes the debug output trace mechanism and
18391 has a larger code and data size. Note that these values will vary
18392 depending on the efficiency of the compiler and the compiler
18408 (acpi_pci.c), and unified the PRT code for IA32 and IA64. This
18409 version supports both static and dynamic PRT entries, but dynamic
18416 in init/main.c. This ordering is required to support PRT and
18418 ACPI bus driver and certain device drivers can no longer be loaded
18422 Routing support to be included without the ACPI Bus and other
18427 Fixed some issues with the use of the new CopyObject and
18448 The internal object cache is now purged after table loading and
18456 Code and Data Size: Code and Data optimizations have permitted new
18459 the code and data sizes for the acpica.lib produced by the
18460 Microsoft Visual C++ 6.0 compiler, and these values do not include
18462 includes the debug output trace mechanism and has a larger code
18463 and data size. Note that these values will vary depending on the
18464 efficiency of the compiler and the compiler options used during
18478 of Local APIC tables for processor enumeration on IA-32, and to
18488 parsing support without inclusion of the ACPI Interpreter (and
18492 power-down, and thermal passive cooling issues (coming soon).
18497 Operation Regions. All fields within EC and CMOS regions must be
18522 affected CreateWordField, CreateDwordField, CreateQwordField, and
18531 (CONFIG_ACPI_BOOT) for IA32 and IA64 UP/SMP systems. This code
18534 processors, memory, and interrupts during setup_arch(). Note that
18537 will be posted for both IA32 and IA64 to achieve this.
18542 driver model and power-manageable drivers will prevent its
18546 submenu, unified IA32 and IA64 options, added new "Boot using ACPI
18564 PciConfiguration(), Read/Write Memory(), and Read/Write Port() now
18570 Index Fields: Fixed a problem where unaligned bit assembly and
18573 Index and Bank Fields: Nested Index and Bank Fields are now
18584 BYTE access OpRegion, forcing multiple writes and causing the
18606 Code and Data Size: Code and Data optimizations have permitted new
18609 the code and data sizes for the acpica.lib produced by the
18610 Microsoft Visual C++ 6.0 compiler, and these values do not include
18612 includes the debug output trace mechanism and has a larger code
18613 and data size. Note that these values will vary depending on the
18614 efficiency of the compiler and the compiler options used during
18632 Duplicate FieldUnit names within a scope are now detected and
18637 Programmer Reference updated to reflect OSL and address space
18659 interpreter have been renamed with a more meaningful and
18660 consistent naming convention. The modules exmonad.c and
18662 exoparg2.c, exoparg3.c, and exoparg6.c.
18673 Fixed a problem with IndexFields and BankFields where the
18691 are the code and data sizes for the acpica.lib produced by the
18692 Microsoft Visual C++ 6.0 compiler, and these values do not include
18696 larger code and data size. Note that these values will vary
18697 depending on the efficiency of the compiler and the compiler
18714 Enhanced the /proc interface for the thermal zone driver and added
18716 file now includes threshold/policy information, and allows setting
18717 of _SCP (cooling preference) and _TZP (polling frequency) values
18719 frequency to 5 seconds, and "echo scp=1 > info" sets the cooling
18730 The AcpiEnableEvent and AcpiDisableEvent interfaces have been
18735 The AcpiEnterSleepState and AcpiLeaveSleepState interfaces now
18772 variables. This reduces stack use and code size, and improves
18779 are the code and data sizes for the acpica.lib produced by the
18780 Microsoft Visual C++ 6.0 compiler, and these values do not include
18783 larger code and data size. Note that these values will vary
18784 depending on the efficiency of the compiler and the compiler
18796 All Acpi data types and structures are now in lower case. Only
18809 was found and fixed. The implicit function return value (not the
18811 the quotient. This was a longstanding bug and it fixes several
18814 The ACPI_DEBUG_PRINT and function trace entry/exit macros have
18823 All public symbols and global variables within the subsystem are
18825 symbols grouped together in a kernel map, and avoids conflicts
18832 reduce the code size and improve performance.
18835 are the code and data sizes for the acpica.lib produced by the
18836 Microsoft Visual C++ 6.0 compiler, and these values do not include
18840 invocations, and over 900 function exit macro invocations --
18841 leading to a much larger code and data size. Note that these
18842 values will vary depending on the efficiency of the compiler and
18852 Fixed /proc/acpi/event to handle poll() and short reads.
18868 compiler): ToDecimalString, ToHexString, ToString, ToInteger, and
18870 AML parser, debugger, and disassembler.
18874 block is no longer allocated for each memory allocation), and now
18877 The data structures and code for the internal object caches have
18878 been coelesced and optimized so that there is a single cache and
18879 memory list data structure and a single group of functions that
18881 size in both the debug and release versions of the subsystem.
18883 The DEBUG_PRINT macro(s) have been optimized for size and replaced
18887 invocation, resulting in an overall code and data savings of about
18892 Fixed C3 disk corruption problems and re-enabled C3 on supporting
18919 virtual memory manager is initialized and paging is enabled. This
18925 conditions: 1) the field width is larger than 8 bits and 2) the
18933 ACPI 2.0 support in the AML Interpreter has begun and will be
18939 and Function values.
18946 result in a large diff, but the change is strictly cosmetic and
18952 add the PCI Segment number and to split the single 32-bit combined
18955 PCI configuration space (segment, bus, device, and function) to
18960 interfaces for PCI, I/O, and Memory. The previously existing 18
18962 must be propagated across at least 6 interfaces) and do not easily
18978 to perform the platform and/or OS-specific actions necessary to
18984 remain OS and platform independent.
18987 "function code and pointer" interface for various miscellaneous
18988 signals and notifications that must be made to the host OS. The
18989 first such signals are intended to support the ASL Fatal and
19004 and are fully functional. They will work with all ACPI 1.0
19008 The ACPI 2.0 ElseIf operator is implemented and will also work
19012 packages have a separate opcode, and their size is determined by
19016 reflect the new interfaces and changes to existing interfaces.
19043 valid at compile time and are not passed through to the AML
19046 Resource descriptor named fields are now typed as Integers and
19057 readability and maintainability.
19068 and directories have been moved and/or renamed.
19080 improvement on large ASL files. Parse nodes and namestring
19142 minimum access width that is smaller than the parent region, and
19176 Cleaned up comments and removed TBDs.
19180 Enhanced error detection and reporting for all file I/O
19194 Restructured support for BufferFields and RegionFields.
19197 and (Operation) RegionFields are now supported by the same field
19200 Resource support now supports QWORD address and IO resources. The
19201 16/32/64 bit address structures and the Extended IRQ structure
19205 condition internally and must never be returned by AcpiOsThreadId.
19237 for stores to method Args and Locals. Source operand conversion
19278 Added new thermal zone and power resource drivers.
19315 includes multiple acquires/releases by owner and support for the
19322 ("All mutexes must be released when an invocation exits") and
19330 Recursive method calls are now allowed and supported (the ACPI
19333 SERIALIZED method keyword and SyncLevel (ACPI 2.0) method
19352 allocations, and can therefore detect memory leaks and attempts to
19398 Added C-state debugging output and other miscellaneous fixes.
19404 The compiler tracks initialization of the arguments and issues an
19434 to the core, fixed it, and modified Linux OSL accordingly.
19436 Fixed C2 and C3 latency calculations.
19444 Documentation: The Programmer Reference has been updated and
19449 numbering and error reporting could get out of sync in the
19462 implemented. The ASL source operand types Integer, Buffer, and
19463 String are freely interchangeable for most ASL operators and are
19468 Support for 32-bit and 64-bit BCD integers is implemented.
19484 2. The ASL source line is printed with ALL errors and warnings.
19486 4. Debug option is split into a parse trace and a namespace trace.
19488 integers and strings.
19494 strings, integers, and buffers. These types are now converted by
19514 of both OperationRegions and CreateXXXFields did not work
19520 Implemented both 32-bit and 64-bit support for the BCD ASL
19521 functions ToBCD and FromBCD.
19530 of both OperationRegions and CreateXXXFields did not work
19560 ACPI 2.0 table support with backwards support for ACPI 1.0 and the
19646 spaces) and fields that have not yet been initialized during the
19647 execution of the various _INI and REG methods.
19656 resulted in dynamic memory savings of 3X within the namespace and
19695 complete parse trees for ACPI tables and control methods.
19696 Instead, parse subtrees are created and then deleted as soon as
19701 Exception codes broken into classes and renumbered. Be sure to
19704 classes (environment, programmer, AML code, ACPI table, and
19710 Implemented semaphore tracking in the AcpiExec utility, and fixed
19722 AcpiAmlReadFieldData() and AcpiAmlWriteFieldData(). This problem
19735 change to the generic address space handler and address space
19738 AcpiInstallAddressSpaceHandler() and a specific region context
19739 that is unique to each region (For example, the _ADR, _SEG and
19755 Major file consolidation and rename. All files within the
19758 OSs -- filenames such as "config.h" and "global.h" seem to be
19765 parse tree and therefore reduces the amount of dynamic memory
19776 With a nod and a tip of the hat to the technology of yesteryear,
19779 less to support environments and editors that 1) cannot display
19780 or print more than 80 characters on a single line, and 2) cannot
19784 completed. The result is 1) cleaner and more
19785 understandable/maintainable code, and 2) a significant reduction
19795 users (all the changes are generic and OS- independent). The
19797 Files have been merged and/or renamed and interfaces have been
19805 and header files have been merged to reduce the file count and
19811 prefix am* instead of ie* and is*.
19821 (not all) of the constants, typedefs, and structs.
19823 The globals "DebugLevel" and "DebugLayer" have been renamed
19824 "AcpiDbgLevel" and "AcpiDbgLayer" respectively.
19835 existing source by removing extraneous spaces and blank lines.
19838 OsdUnMapMemory was renamed to OsdUnmapMemory and then
19849 "mutex" and "semaphore" interfaces - where the mutex interface is
19861 accesses (e.g. firmware and OS environments devoid of alignment
19862 handler technology namely SAL/EFI and the IA-64 Linux kernel) has
19875 The methods subdirectory has been obsoleted and removed. A new