1) properly handle constants like One,Ones,Zero. Do not make a
var_package when these are used as a package length.
2) Allow VAR_PACKAGE (in addition to PACKAGE) opcode when validating
object types for predifined names.
Don't load non-aml tables that are specified on the command line.
Prevents issues, especially with odd tables like the RSDP.
However, allow loading of the FADT. ACPICA BZ 932.
Allows construction of custom ACPI tables that contain a standard
ACPI table header, and the rest of the table is defined using
the "generic" data terms (UINT32, etc.)
LinMing.
When compiling CreateXxxField operators that access resource descriptor tags,
check that the bit access width matches the actual width of the resource
descriptor field referenced by the tag. ACPICA BZ 930.
Fixes a problem introduced in a previous commit to emit more
file statistics for the iASL summary. The getfilesize function no
longer leaves the file at offset 0, it preserves the current
offset. Therefore, this patch fixes code that depended on that
behavior.
Bytes were reversed for these types. Fortunately, these are mostly
used for reserved fields. UINT24 is used for actual data in one
field of the SRAT (ProximityDomainHi).
These operators were missing from the ACPI specification and thus
did not get pulled into this utility. ACPI 5.0 spec adds them,
and they are added to AcpiHelp.
It takes some effort to disable the MS language extensions because
of bugs in the MS headers, and the MS remapping of the low I/O
functions (open, read, write, etc.)
Conditionally compile the multi-thread support so that threading
libraries will not be linked if not necessary. The only tool
that requires multi-thread support is AcpiExec.
Disable language extensions where possible for maximum portability.
Unfortunately, when MS system includes are used, this option
cannot be used (oswinxf.c)
We can only sort the _TSS return package if there is no _PSS in the
same scope. This is because if _PSS is present, the ACPI specification
dictates that the _TSS Power Dissipation field is to be ignored, and
therefore some BIOSs leave garbage values in the _TSS Power field(s).
In this case, it is best to just return the _TSS package as-is.
Runtime option can be used to disable return value repair if this
is causing a problem on a particular machine. Also added an option
to AcpiExec (-dr) to set this disable flag.
Now, only allow "SSDT" "OEM", and a null signature.
History:
1) Originally, we checked the table signature for "SSDT" or "PSDT".
2) We added support for OEMx tables, signature "OEM".
3) Valid tables were encountered with a null signature, so we just
gave up on validating the signature, (05/2008).
4) We encountered non-AML tables such as the MADT, which caused
interpreter errors and kernel faults. So now, we once again allow
only "SSDT", "OEMx", and now, also a null signature. (05/2011).
Always setup all arguments required by the method, even if the
command line specifies no arguments, or insufficient arguments.
Use "default" values for the missing arguments.
Also fixes a bug where only 6 method arguments were supported by
these commands instead of the maximum 7 arguments.