10089 Commits

Author SHA1 Message Date
Robert Moore
d82328f271 Add support for FunctionalFixedHW in GetRegionName.
Was missing this region type.
2011-01-28 10:38:44 -08:00
Robert Moore
ac3a38aaf5 iASL: Warn if reserved method incorrectly returns a value.
Many predefined names are defined such that they do not return
a value. If implemented as a method, issue a warning if such
a name returns a value. ACPICA BZ 855.
2011-01-27 13:45:46 -08:00
Robert Moore
26e99b0d83 Split large dsopcode.c and dsload.c files.
split dsopcode.c into dsargs.c and dscontrol.c
split dsload.c into dsload2.c
2011-01-27 10:28:18 -08:00
Robert Moore
cee9d3462c Debugger: Split large dbcmds.c file.
Split into 2 new additional files:
dbmethod.c - control method commands.
dbnames.c - namespace commands.
2011-01-26 13:03:41 -08:00
Robert Moore
e058e42242 Debugger: Simplify help command.
All help output now in a single screen, instead of help
subcommands. ACPICA BZ 897.
2011-01-26 08:56:09 -08:00
Robert Moore
217e7043e6 Fix unresolved name issue for no-debug and no-error-msg cases.
The _AcpiModuleName was left undefined in these cases, but it
is actually needed as a parameter to some interfaces. Define
_AcpiModuleName as a null string in these cases.
Acpica BZ 888.
2011-01-25 15:05:45 -08:00
Robert Moore
fba030e8a8 Debugger: Add command to display status of global handlers.
Display op region, fixed event, and misc global handlers.
installation status and for op regions, whether default or
user-installed handler will be used.
2011-01-25 13:47:58 -08:00
Robert Moore
73dbf922ac Split large utglobal.c into utdecode.c.
Utglobal.c contained a lot of code not related to global variables.
These utility decode functions are moved to utdecode.c
2011-01-21 15:10:19 -08:00
Robert Moore
fcd8dad6f3 Clarify a couple of error messages.
Clarify region error messages with ID= prefix for space id.
2011-01-21 13:51:44 -08:00
Robert Moore
32e867e348 iASL/DTC: Reduce severity of some errors from fatal to error.
No need to abort on simple errors within a field definition.
2011-01-21 09:41:55 -08:00
Robert Moore
6cad5980b5 Disassembler: Resolve/fix special case for ASF! table.
Removed a special case for a 7-byte buffer in ASF!. Lin Ming.
2011-01-21 09:16:59 -08:00
Robert Moore
fd430272ca iASL/DTC: Add support for integer expressions and labels.
Support for full expressions for all integer fields in all tables.
Support for labels in "generic" portions of tables such as UEFI.
2011-01-21 08:42:11 -08:00
Robert Moore
c47bd2bb9e Remove use of unreliable FADT revision field.
The revision number in the FADT has been found to be completely
unreliable and cannot be trusted. Only the table length can be
used to infer the actual version.

This change updates the ACPICA core and the disassembler so that
both no longer even look at the FADT version and instead depend
upon the FADT length.
2011-01-14 13:24:08 -08:00
Robert Moore
62276d5441 GPE detect optimization - ignore unused GPE registers.
This optimization will simply ignore GPE registers that contain no
enabled GPEs - there is no need to read the register.
ACPICA bugzilla 884. Lin Ming. Suggestion from Joe Liu.
2011-01-13 14:34:00 -08:00
Robert Moore
03890c8512 iASL: Add predefined macros __LINE__, __FILE__, and __DATE__
Adds these c-style macros with the standard definitions.
ACPICA bugzilla 898.
2011-01-13 12:08:26 -08:00
Robert Moore
ad694f5bd9 Update version to 20110112.
Version 20110112.
2011-01-12 09:47:52 -08:00
Robert Moore
71ef3a82d8 iASL: Merge duplicate UUID support code into single module.
Merged duplicated UUID functions. Adds one new file,
compiler/asluuid.c. Lin Ming, Bob Moore.
2011-01-11 14:44:08 -08:00
Robert Moore
314834b417 iASL: Fix to deterministically detect "Raw Table Data" field in DTC.
Caused a problem with the recent changes for generic data types
in the Data Table compiler. Lin Ming.
2011-01-11 13:19:01 -08:00
Robert Moore
9a5f2aa74c iASL: Add listing support for Data Table Compiler.
Adds listing support (-l) to display actual output for each
line of input code.
2011-01-11 12:41:30 -08:00
Robert Moore
4110b9bdc9 Fix issues/fault with automatic "serialized" method support.
History: This support changes a method to "serialized" on the fly if the
method generates an AE_ALREADY_EXISTS error, indicating the possibility
that it cannot handle reentrancy.

This fix repairs a couple of issues seen in the field, especially on
machines with many cores.

1) Delete method children only upon the exit of the last thread, so
as to not delete objects out from under running threads.

2) Set the "serialized" bit for the method only upon the exit of the
last thread, so as to not cause deadlock when running threads attempt
to exit.

3) Cleanup the use of the AML "MethodFlags" and internal method flags
so that there is no longer any confustion between the two.

Lin Ming, Bob Moore. Reported by dana.myers@oracle.com.
2011-01-11 10:25:15 -08:00
Robert Moore
a39fa5a0a6 iASL: Add generic data types to the Data Table compiler.
Add "generic" data types such as UINT32, String, Unicode, etc.,
to simplify the generation of platform-defined tables such
as UEFI. Lin Ming.
2011-01-06 13:44:12 -08:00
Robert Moore
a90085ba04 Debugger: Do not invoke methods with too many arguments.
Limit the number of arguments sent to a control method to
the number of required arguments - to avoid a warning
message from the argument checking code.
2011-01-05 09:12:08 -08:00
Robert Moore
d41344f1ec Update all ACPICA copyrights and signons to 2011.
Standard ACPICA source modules only.
2011-01-03 14:02:13 -08:00
Robert Moore
21f9129788 Update ordering of include files.
The ACPICA headers should appear before any compiler-specific
headers (stdio.h, etc.) so that acenv.h can set any
necessary compiler-specific defines, etc.
2010-12-17 17:07:16 -08:00
Robert Moore
bb624f47b8 Update msvc header for VC++ 9 (VS 2008)
Add a couple new compiler-specific items to eliminate warnings.
2010-12-17 17:06:14 -08:00
Robert Moore
5d65ffe2ef AcpiSrc: Add option to simply inject dual-license header.
No other transforms performed. -h option.
2010-12-16 13:37:15 -08:00
Robert Moore
da9aadea0b Debugger: Lock namespace for duration of a namespace dump.
Prevents issues if the namespace is changing underneath the debugger.
Especially temporary nodes, since the debugger displays these also.
2010-12-15 12:39:36 -08:00
Robert Moore
c3baf042e9 Fix namespace race condition.
Fixes a race condition between method execution and namespace walks
that can possibly fault. Problem was apparently introduced in version
20100528 as a result of a performance optimization that reduces the
number of namespace walks upon method exit by using the
delete_namespace_subtree function instead of the delete_namespace_by_owner
function used previously. Bug is in the delete_namespace_subtree function.
dana.myers@oracle.com
2010-12-14 14:43:51 -08:00
Robert Moore
b55e472e92 Update version to 20101209.
Version 20101209.
2010-12-09 09:52:55 -08:00
Robert Moore
0093d40286 Update for warning on 64-bit generation.
Fix a printf in the aml debugger.
2010-12-09 08:26:11 -08:00
Robert Moore
5c5b53d53c iASL: Update EOF error message fix.
Handle case where source file is null.
2010-12-03 14:22:55 -08:00
Robert Moore
3efb775402 iASL: Fix error message for premature EOF.
Repairs seek off end-of-file case if a syntax error causes the
parser to reach EOF.

Previously:
[*** iASL: Read error on source code temp file gr.src ***]

Now, something like this:
gr.asl(6) : Error    4096 -  parse error and premature End-Of-File

ACPICA bugzilla 891.
2010-12-03 10:26:45 -08:00
Robert Moore
79a99d76c8 iASL: Clarify operator timeout error message.
Was not clear to many users. ACPICA BZ 893.
2010-12-02 09:55:20 -08:00
Robert Moore
818d9a5f31 New: AcpiNames - Example namespace dump utility.
Shows example of ACPICA configuration for a minimal namespace
dump utility. Uses table and namespace managers, but no AML
interpreter.

Does not add any functionality over AcpiExec. It is a subset
of AcpiExec. The purpose is to show how to partition and
configure ACPICA.
2010-12-01 14:33:02 -08:00
Robert Moore
3bc77e86ae GPE support code overhaul and enhancement.
Contains the complete overhaul of the GPE support code including
removal of _PRW execution, improved handling of wake GPEs, new
external interfaces, and implicit notify support. ACPICA BZ 858,
870,877. Matthew Garrett, Lin Ming, Bob Moore, Rafael Wysocki.

Note: This support is committed as a single patch here because
of multiple patch backporting from Linux and the resulting
interdependency issues.

See the ACPICA reference for full documentation.
2010-12-01 12:57:25 -08:00
Robert Moore
1d96aaf67d acpisrc: modify include file paths for linux conversion.
Change all instances of "acpi.h" to <acpi/acpi.h>
2010-11-18 13:40:45 -08:00
Robert Moore
81f545c7c6 Increase debugger buffer size for method return objects.
Was 4K, increased to 16K. Also enhanced error messages for debugger
method execution, including the buffer overflow case.
2010-11-17 13:48:30 -08:00
Robert Moore
019ccfe508 Fix problem with Scope() operator during parse load phase.
During load phase (table load or method execution), the scope operator
should not enter the target into the namespace. Instead, it should
open a new scope at the target location. Linux BZ 19462.
2010-11-03 10:40:54 -07:00
Robert Moore
8cc0a33fe7 iASL: Relax alphanumeric restriction on _CID strings.
These strings are "bus-specific" per the ACPI specification, therefore
any characters are acceptable. The only checks that can be performed
are for a null string and perhaps for a leading asterisk.
2010-11-03 10:31:30 -07:00
Robert Moore
378378c888 Disassembler: Decode AccessWidth field of GAS structure.
Decode the encoded width (1=Byte, 2=Word, etc.)
2010-10-15 12:47:07 -07:00
Robert Moore
615836b90d Update version to 20101013.
Version 20101013.
2010-10-13 09:24:43 -07:00
Robert Moore
14486424a2 Update file permissions.
No functional change.
2010-10-13 08:09:26 -07:00
Robert Moore
b66fd716e0 iASL: Add additional _HID/_CID string validation.
_HID strings must be 7 or 8 characters. Additional checks for
uppercase non-hex characters. ACPICA BZ 874.
2010-10-05 14:54:39 -07:00
Robert Moore
1fa54bc597 iASL: Enhance "null descriptor" error messages.
Message displays the first line of the descriptor.
2010-10-05 14:47:33 -07:00
Robert Moore
ab46514ffe iASL: Move all compiler messages to new file, aslmessages.h
All error/warning/remark messages (strings) and the numeric
definitions.
2010-10-01 14:32:20 -07:00
Robert Moore
f25ea48797 iASL: Allow certain "null" Resource Descriptors.
Fixes a problem where some resource descriptors are created with
most fields set to zero, because the intent is that these
descriptors will be updated at runtime via a BufferField.
These "null" resource desriptors are now allowed iff the desrcriptor
is created with a resource tag -- meaning that the descriptor
can be referenced by a BufferField. ACPICA BZ 873.
2010-10-01 14:14:50 -07:00
Robert Moore
16da8c8163 Deploy common signon/header for all ACPICA tools.
Common signon with version,32/64 width,date,copyright.
2010-09-30 14:47:37 -07:00
Robert Moore
d01d91a34c Add configuration for AcpiBin utility.
To acenv.h file.
2010-09-30 14:37:48 -07:00
Robert Moore
ae36fb6358 AcpiExec: Additional changes for 64-bit build support.
64-bit addresses for DSDT, FACS.
2010-09-30 14:15:57 -07:00
Robert Moore
28b20c5ca6 AcpiExec: Fix for 64-bit build (add XSDT support).
Now uses XSDT exclusively instead of RSDT.
Also, split AML data into new file, aetables.h
2010-09-30 09:59:55 -07:00