| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Added ahasl.c and ahaml.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following mechanisms are OSPM specific:
1. Redirect output destination to console: no file redirection will be
needed by an in-kernel debugger, there is even no file can be accessed
when the debugger is running in the kernel mode.
2. Output command prompts: programs other than acpiexec can have different
prompt characters and the prompt characters may be implemented as a
special character sequence to form a char device IO protocol.
3. Command ready/complete handshake: OSPM debugger may wait more conditions
to implement OSPM specific semantics (for example, FIFO full/empty
conditions for O_NONBLOCK or IO open/close conditions).
Leaving such OSPM specific stuffs in the ACPICA debugger core blocks
Linux debugger IO driver implementation.
Several new OSL APIs are provided by this patch:
1. AcpiOsInitializeDebugger: initialize debugger.
2. AcpiOsTerminateDebugger: reversal of AcpiOsInitializeDebugger.
3. AcpiOsWaitCommandReady: putting debugger task into wait state when a
command is not ready. OSPMs can terminate command loop by returning
AE_CTRL_TERMINATE from this API. Normally, wait_event() or
WaitForMultipleObject() may be used to implement this API.
4. AcpiOsNotifyCommandComplete: putting user task into running state when a
command has been completed. OSPMs can terminate command loop by
returning AE_CTRL_TERMINATE from this API. Normally, wake_up() or
SetEvent() may be used to implement this API.
This patch also converts current command signaling implementation into a
generic debugger layer (osgendbg.c) to be used by the existing OSPMs or
acpiexec, in return, Linux can have chance to implement its own command
handshake mechanism. This patch also implements acpiexec batch mode in a
multi-threading mode comaptible style as a demo (this can be confirmed by
configuring acpiexec into DEBUGGER_MULTI_THREADED mode where the batch mode
is still working). Lv Zheng.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
|
|
|
|
|
|
|
| |
Consolidate multiple versions of strtoul64 to one common version.
limit possible bases to either 10 or 16.
Handles both implicit and explicit conversions.
Added a 2-character ascii-to-hex function for GPEs and buffers.
Adds a new file, utsrttoul64.c
|
|
|
|
| |
Adds aslhelp.c
|
|\
| |
| | |
Acpica efi2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
fxxx()/errno/perror() instead
This patch follows new ACPICA design, eliminates old portable OSLs, and
implements fopen/fread/fwrite/fclose/fseek/ftell for GNU EFI
environment. This patch also eliminates AcpiLogError(), convering them
into fprintf(stderr)/perror(). Lv Zheng.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds sprintf()/snprintf()/vsnprintf()/printf()/vfprintf()
support for OSPMs that have ACPI_USE_SYSTEM_CLIBRARY defined but do not
have ACPI_USE_STANDARD_HEADERS defined.
-iwithprefix include is required to include <stdarg.h> which contains
compiler specific implementation of vargs when -nostdinc is specified.
-fno-builtin is required for GCC to avoid optimization performed printf().
This optimization cannot be automatically disabled by specifying -nostdlib.
Please refer to the Link 1 for the details. Lv Zheng.
Link 1: http://www.ciselant.de/projects/gcc_printf/gcc_printf.html
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
| |
| |
| |
| |
| |
| | |
This reverts commit 43fa9b91b4c4d74290664a98b54a3facb3434cd7.
Needs extra partitioning to handle the multiple "types" of
string-to-integer conversions defined in the ACPI spec.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update function AcpiUtStrtoul64:
Remove dead code.
Restructure to eliminate support for all numeric bases, only
base 16 and base 10 are needed.
Split off the base 10 and base 16 support into separate functions.
Added new exception for overflow during conversion.
Improved error detection and handling.
|
| |
| |
| |
| |
| | |
All flags values, name grammar, package length encoding, etc.
Adds a new startup option, -g
|
| | |
|
|\ \
| | |
| | | |
Efi edk2
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
fxxx()/errno/perror() instead
This patch follows new ACPICA design, eliminates old portable OSLs, and
implements fopen/fread/fwrite/fclose/fseek/ftell for GNU EFI
environment. This patch also eliminates AcpiLogError(), convering them
into fprintf(stderr)/perror(). Lv Zheng.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
| |
| |
| |
| | |
Don't use new bison file (internal file for now).
|
|/
|
|
| |
Broken into more logical groups of rules.i
|
|
|
|
| |
New file is utascii.c
|
|
|
|
|
|
|
| |
"-o" option is an extension for GNU Bison. Although many modern POSIX yacc
implementations have this extension now, POSIX itself does not support it.
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/yacc.html
|
|
|
|
|
|
|
|
|
|
|
| |
- byacc has a bug in "-o" option parsing. Prefix may not be set properly
if its argument contains ".c" somewhere before the actual output file name.
With "byacc -ofoo.cXXXXX/foo.c -d foo.y", for example, it generates "foo.h"
instead of "foo.cXXXXX/foo.h" because ".cXXXXX/foo.c" is replaced with ".h".
- Prefer a GNU make built-in function, suffix(), rather than a series of
complex variable substitutions, to improve readability.
- Use symbol prefix for output file name to reduce external command uses.
- Exit with a meaningful exit status to make it more like a real function.
|
| |
|
|
|
|
| |
Adds aslpld.c
|
|
|
|
|
|
|
|
|
| |
Allows all object types to be used with Concatenate. Objects
other than Int/Str/Buf are convert to a string that contains
the type of the object. Improves the utility of the Printf
and Fprintf macros.
Adds a new file, exconcat.c
|
|
|
|
|
| |
-lx option: creates a large, multiple cross-reference file.
Intended mostly for BIOS developers.
|
|
|
|
|
|
|
| |
Support for both the compiler and disassembler.
Also, the interpreter will ignore this opcode if it
is ever encountered (should not happen).
David Box.
|
|
|
|
|
|
| |
1) Cleanup output
2) Enhance output with additional data (namestrings, etc.)
3) Adds a new file: asldebug.c
|
|
|
|
| |
Matches the support in iASL and AcpiExec.
|
|
|
|
| |
New files: acpixtract.h, axutils.c
|
|
|
|
| |
dttable.c -> dttable, dttable1, dttable2
|
|
|
|
| |
Split out functions from exdebug.c to extrace.c
|
|
|
|
| |
Not available on FreeBSD or Apple.
|
|
|
|
| |
Adds aslresources.y
|
|
|
|
| |
Adds aslcstyle.y
|
|\
| |
| | |
iASL: Support POSIX yacc again.
|
| | |
|
| | |
|
|/
|
|
|
|
|
| |
- Add wilcard support for input filenames.
- Add -l option to load tables and exit, no display. This is
useful for validation of the namespace during BIOS generation.
- Add -x option for specifying debug level.
|
|
|
|
|
|
| |
This ensures that all object files are deleted. This is especially
important for files that have been made obsolete by makefile
changes.
|
|
|
|
| |
This file no longer exists.
|
|
|
|
|
|
|
| |
Some disassembler APIs should rather be debugger APIs. This patch moves
them to the debugger folder to be ready for debugger porting.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
|
|
|
|
|
|
|
| |
ACPICA implements all non-ANSI functions locally. However, there
are sometimes two or more versions of the same function throughout
the ACPICA code. This change fixes this.
Adds a new file, utilities/utnonansi.c
|
|
|
|
| |
Also add stubs for some of the tracing functions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The AcpiDebugTrace() is the mechanism known as ACPI method tracing that is
used by Linux as ACPICA debugging message reducer. This facility can be
controlled through Linux ACPI subsystem - /sys/module/acpi/parameters.
This facility requires CONFIG_ACPI_DEBUG to be enabled to see ACPICA trace
logs in the kernel dmesg output.
This patch enhances AcpiDebugTrace() to make it not only a message reducer,
but a real tracer to trace AML interpreter execution. Note that in addition
to the AML tracer enabling, this patch also updates the facility with the
following enhancements:
1. Allow a full path to be specified by the AcpiDebugTrace() API.
2. Allow any method rather than just the entrance of AcpiEvaluateObject()
to be traced.
3. All interpreter ACPI_LV_TRACE_POINT messages are collected for
ACPI_EXECUTER layer.
This patch also updates "trace" command to allow it to perform all Linux
method tracing functionalities:
1. "trace aml" to always enable AML execution trace messages
(level=TRACE_POINT, layer=EXECUTER) for all control methods.
2. "trace aml \MTHD" to always enable AML execution trace messages for
only \MTHD method.
3. "trace aml \MTHD once" to enable AML execution trace messages only
once for only \MTHD method.
4. "trace enable" to always enable all trace messsages (level=ALL,
layer=ALL) for all control methods.
5. "trace enable \MTHD" to always enable all trace messages for only
\MTHD method.
6. "trace enable \MTHD once" to enable all trace messages only once for
only \MTHD method.
7. "trace disable" to disable trace facility.
The Makefiles of acpinames/iasl are also updated to include exdebug.o and
the duplicated stubs are removed after that.
Note that since this patch has enhanced the method tracing facility, Linux
need also be updated after applying this patch. Lv Zheng.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch moves parts of AcpiDmDumpMethodInfo() to the dispatcher
component.
This patch also makes the new function dependent on ACPI_DEBUG_OUTPUT
compile-stage definition so that it can be used by the trace facility.
AcpiDmDumpMethodInfo() traverses method stack when an exception is
encountered. Such traversal is needed to support method tracing for the
exceptions. When an exception is encountered, the end indications of the
aborted methods should be logged in order not to break the user space
analysis tool. Lv Zheng.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
|
|
|
|
| |
-t option displays all ACPI tables.
|
|
|
|
| |
Makefiles and environment defines.
|
| |
|
| |
|
|
|
|
| |
Adds -std=c99 option to the makefiles. Replaces -ansi flag.
|
|
|
|
|
|
|
|
|
|
| |
This change removes the _FORTIFY_SOURCE flag from the NOOPT disable option and
creates a separate flag (NOFORTIFY) for this purpose. Some toolchains may
define _FORTIFY_SOURCE which leads redefined errors when building ACPICA. This
allows disabling the option without also having to disable optimazations.
ACPICA BZ 1127. Reported by Alan Stone <ahs3@redhat.com>
Signed-off-by: David E. Box <david.e.box@linux.intel.com>
|
|
|
|
|
|
|
| |
Printf stores to the debug object.
Fprintf stores to any named object.
%o is the main format specifier since only very limited typechecking
can be performed at compile time.
|
|
|
|
|
| |
Now emit ASL+ code which includes C-style operators.
Optionally, legacy text ASL operators can still be emitted.
|