10395 Commits

Author SHA1 Message Date
Robert Moore
b622e9f4d8 Update DMAR and SRAT table definitions.
Synchronized tables with current specifications.
2008-05-16 10:04:17 -07:00
Robert Moore
2a6f5e2ab0 Workaround for reversed _PRT entries from BIOS.
Some BIOSs erroneously reverse the _PRT SourceName and the SourceIndex.
Detect and repair this problem. MS ACPI also allows and repairs this
problem, thus ACPICA must also.
2008-05-16 08:50:47 -07:00
Robert Moore
d55d5dc9a7 Update version to 20080514 2008-05-14 10:40:18 -07:00
Robert Moore
3547c1b619 Update for version 20080514 2008-05-14 10:34:37 -07:00
Robert Moore
634d164129 Update for version 20080514 2008-05-14 10:32:16 -07:00
Robert Moore
a33265bc7c Fix for Load operator, load table at the namespace root.
This reverts a change introduced in version 20071019. The table is now loaded
at the namespace root even though this goes against the ACPI specification.
This provides compatibility with other ACPI implementations.
2008-05-13 13:07:13 -07:00
Robert Moore
35bcda4be0 Update Linux/Unix makefiles for source tree changes.
Affects acpiexec and iASL only.
2008-05-13 13:00:35 -07:00
Robert Moore
6f2303e030 Update lint batchfile to process entire ACPICA tree.
Updated pathnames to be relative. removed 16-bit lint.
2008-05-13 11:11:49 -07:00
Robert Moore
250cbe2a7b Update windows project files for source tree changes.
The tree was recently flattened. Adjusted all paths to be relative,
allowing generation anywhere. Split the workspace into two - one that
generates the released binaries, another that is used for testing only.
2008-05-13 10:49:16 -07:00
Robert Moore
fc7c3e91d8 Add ACPI table revision ID validation to disassembler.
0 is always invalid. For DSDTs, the ID controls the interpreter integer
width. 1 means 32-bit and this is unusual. 2 or greater is 64-bit.
2008-05-12 13:36:23 -07:00
Robert Moore
cd9d57f9c1 Ignore ACPI table signature for Load() operator.
Only "SSDT" is acceptable to the ACPI spec, but tables are seen with
OEMx and null sigs. Therefore, signature validation is worthless.
Apparently MS ACPI accepts such signatures, ACPICA must be compatible.
BZ 10454.
2008-05-12 12:52:46 -07:00
Robert Moore
6668ae970d Move execution of _GTS to just before setting sleep enable bit.
Execution moved from AcpiEnterSleepStatePrep to AcpiEnterSleepState.
_GTS is now executed immediately before the SLP_EN bit is set, as per the
ACPI specification. Luming Yu, BZ 1653
2008-05-09 14:39:12 -07:00
Robert Moore
8c47917fd2 Add const qualifier for appropriate string constants.
Mostly MODULE_NAME and printf format strings.
2008-05-09 13:08:54 -07:00
Robert Moore
24c2b16cce Several lint changes, no functional changes.
remove pointer cast warnings and fix for a debug printf.
2008-05-09 10:23:28 -07:00
Robert Moore
7b41e016ec Removed unused include files from source files.
From lint.
2008-05-08 14:09:05 -07:00
Robert Moore
b48a2476b4 Fix to disable unknown GPEs (2nd version).
Always disable the GPE, even if we think that that it is already
disabled. It is possible that the AML or some other code has enabled
the GPE unbeknownst to the ACPICA code.
2008-05-08 13:37:37 -07:00
Robert Moore
10e9550130 Eliminate ACPI_NATIVE_UINT type.
No longer needed; replaced mostly with UINT32, but also ACPI_SIZE where a
type that changes 32/64 bit on 32/64-bit platforms is required.
2008-05-08 13:22:20 -07:00
Robert Moore
188230e360 Fix to allow zero-length ASL field declarations.
Allows null field list in Field(), BankField(), and IndexField().
BZ 10606.
2008-05-07 14:48:30 -07:00
Robert Moore
4807153ae8 Fix name conflict with resource tables.
Lint pointed this out, rename the local resource table.
2008-05-07 14:40:41 -07:00
Robert Moore
deac354959 Move GPE enable until after _REG/_STA/_INI methods are run.
This ensures that all operation regions and devices throughout the
namespace have been initialized before GPEs are enabled.
Alexey Starikovskiy, BZ 9916
2008-05-07 14:35:59 -07:00
Robert Moore
990816baed Fix possible negative array index in AcpiUtValidateException.
Added NULL fields to the exception string arrays to eliminate the -1
subtraction on the SubStatus field.
2008-05-07 14:21:14 -07:00
Robert Moore
bf8ca28f3f Eliminate warnings for Windows generation.
Fix for AcpiBin utility.
2008-05-07 14:08:25 -07:00
Robert Moore
e3125b9932 Eliminate warning on ACPI_NATIVE_UINT/printf combination.
Changed to UINT32.
2008-05-07 14:04:17 -07:00
Robert Moore
bb48f23503 Add argument count checking to control method invocation via AcpiEvaluateObject.
Error if too few arguments, warning if too many. This applies only to external
programmatic control method execution, not method-to-method calls within the
AML.
2008-05-07 13:50:13 -07:00
Robert Moore
d64f9dd414 Update tracking macros to reduce code/data size.
Changed ACPI_MODULE_NAME and ACPI_FUNCTION_NAME to use arrays of strings
instead of pointers to static strings. Jan Beulich and Bob Moore.
2008-05-07 13:20:58 -07:00
Robert Moore
b0ca5c6cf0 Updates for Debug object output (part2).
Implemented several improvements for the output of the ASL "Debug" object to
clarify and keep all data for a given object on one output line.
2008-05-06 15:12:37 -07:00
Robert Moore
4ec7c2d418 Fix for some local named nodes not marked temporary and to disallow duplicates.
Fixed a problem with the CreateField, CreateXXXField (Bit, Byte, Word, Dword,
Qword), Field, BankField, and IndexField operators when invoked from inside an
executing control method. In this case, these operators created namespace nodes
that were incorrectly left marked as permanent nodes instead of temporary
nodes. This could cause a problem if there is race condition between an exiting
control method and a running namespace walk. (Reported by Linn Crosetto). Fixed
a problem where the CreateField and CreateXXXField operators would incorrectly
allow duplicate names (the name of the field) with no exception generated.
2008-05-06 15:06:44 -07:00
Robert Moore
c0a8fa9ae4 Fix for extraneous debug message for packages.
Fixed a problem where an extraneous debug message was produced for package
objects (when debugging enabled). The message "Package List length larger
than NumElements count" is now produced in the correct case, and is also an
error message rather than a debug message. Added a debug message for the
opposite case, where NumElements is larger than the Package List, and the
package has been padded out with NULL elements.
2008-05-06 15:00:00 -07:00
Lin Ming
3a7f6dfeed Deleted: source/components/interpreter 2008-05-06 15:19:23 +08:00
rmoore1
a206f1664e Cleanup of invalid ACPI name handling and repair.
Implemented a change/cleanup for the handling of invalid ACPI names. Names are now validated and repaired only when 1) entering a new name into the namespace and 2) disassembling a named AML opcode. A warning is only displayed in debug mode or when the interpreter is in "strict" mode, since some working machines do in fact contain invalid ACPI names.
2008-03-26 19:38:15 +00:00
rmoore1
cb60e50a2b Update for version 20080321.
Update for version 20080321.
2008-03-21 18:07:05 +00:00
rmoore1
1fa465fe11 *** empty log message *** 2008-03-21 18:06:23 +00:00
rmoore1
54e0b736ff Changes for notify handling.
Update for new ACPICA interface; cleanup output for received notifies.
2008-03-21 18:05:54 +00:00
rmoore1
86ad4fc09d Fix for some local named nodes not marked temporary and to disallow duplicates.
Fixed a problem with the CreateField, CreateXXXField (Bit, Byte, Word, Dword, Qword), Field, BankField, and IndexField operators when invoked from inside an executing control method. In this case, these operators created namespace nodes that were incorrectly left marked as permanent nodes instead of temporary nodes. This could cause a problem if there is race condition between an exiting control method and a running namespace walk. (Reported by Linn Crosetto). Fixed a problem where the CreateField and CreateXXXField operators would incorrectly allow duplicate names (the name of the field) with no exception generated.
2008-03-21 18:02:33 +00:00
rmoore1
6dc212eb25 Update version to 20080321.
Update version to 20080321.
2008-03-21 18:00:51 +00:00
rmoore1
115e05bdb8 *** empty log message *** 2008-03-21 18:00:02 +00:00
rmoore1
e669ed0e96 Update for new Notify values.
Implemented several changes for Notify handling: Added support for new Notify values (ACPI 2.0+) and improved the Notify debug output. Notify on PowerResource objects is no longer allowed, as per the ACPI specification. (Bob Moore, Zhang Rui)
2008-03-13 22:46:18 +00:00
rmoore1
21d404d37d Fix to disable unknown spurious GPEs.
Implemented another change to eliminate/suppress spurious or stray GPEs. The AcpiEvDisableGpe function will now disable GPEs that are neither enabled nor disabled -- meaning that the GPE is unknown to the system. This will prevent future interrupts from that GPE. (Zhang Rui) BZ 6217
2008-03-12 21:02:56 +00:00
rmoore1
519875d4ed Fixes for size of StartDependent resource descriptor.
Fixed a couple of size calculation issues with the variable-length Start Dependent resource descriptor.
2008-03-12 20:49:52 +00:00
rmoore1
de78653173 Updates for Debug object output.
Implemented several improvements for the output of the ASL "Debug" object to clarify and keep all data for a given object on one output line.
2008-03-12 20:48:21 +00:00
rmoore1
1362ecbe23 Fixes for external Reference Objects.
All Reference Objects returned via the AcpiEvaluteObject interface are now marked as type "REFERENCE" instead of "ANY". The type ANY is now reservered for NULL objects - either NULL package elements or unresolved named references.
2008-03-12 20:44:35 +00:00
rmoore1
c47775c7bc Fix to handle NULL package elements correctly.
Fixed problem where NULL package elements were not returned to the AcpiEvaluateObject interface correctly. Instead of returning a NULL ACPI_OBJECT package element, the element was simply ignored, potentially causing a buffer overflow and/or confusing the caller who expected a fixed number of elements. BZ 10132 (Lin Ming, Bob Moore)
2008-03-12 20:37:26 +00:00
rmoore1
ce68afe20a Fix for extraneous debug message for packages.
Fixed a problem where an extraneous debug message was produced for package objects (when debugging enabled). The message "Package List length larger than NumElements count" is now produced in the correct case, and is also an error message rather than a debug message. Added a debug message for the opposite case, where NumElements is larger than the Package List, and the package has been padded out with NULL elements.
2008-03-05 22:24:37 +00:00
rmoore1
a9c2b329d8 Fix for AE_ALREADY_EXISTS when using Switch operator.
Fixed a problem with the use of the Switch operator where execution by multiple concurrent threads could cause an AE_ALREADY_EXISTS. This is caused by the fact that there is no actual Switch opcode, it must be simulated with temp variables and if/else pairs. The solution chosen was to mark any method that uses Switch to be Serialized, thus preventing multiple thread entries. BZ 469.
2008-02-26 19:55:23 +00:00
rmoore1
cf488d4ed8 Add test for using external buffer as argument to a method 2008-02-13 18:13:18 +00:00
rmoore1
a41245aee8 Update ACPICA version to 20080213.
Update ACPICA version to 20080213.
2008-02-13 18:09:17 +00:00
rmoore1
4fd0a351eb Fix for possible error when packages/buffers are passed to methods externally.
Fixed a problem where buffer and package objects passed as arguments to a control method via the external AcpiEvaluateObject interface could cause an AE_AML_INTERNAL exception depending on the order and type of operators executed by the target control method.
2008-02-13 18:07:19 +00:00
rmoore1
14ac5e4da7 Fix for AcpiGetDevices -- CID matching.
Fixed a problem with the AcpiGetDevices interface where the mechanism to match device CIDs did not examine the entire list of available CIDs, but instead aborted on the first non-matching CID. Andrew Patterson.
2008-02-12 23:45:11 +00:00
rmoore1
513c55f199 Update behavior of CopyObject to match ACPI spec.
Fixed a problem where a CopyObject to RegionField, BankField, and IndexField objects did not perform an implicit conversion as it should. These types must retain their initial type permanently as per the ACPI specification. However, a CopyObject to all other object types should not perform an implicit conversion, as per the ACPI specification. (Lin Ming, Bob Moore) BZ 388
2008-02-12 23:06:29 +00:00
rmoore1
c02ce8378a *** empty log message *** 2008-02-12 21:27:37 +00:00