13 Aug, 2016

1 commit


09 Mar, 2016

1 commit


16 Jan, 2016

1 commit


24 Jul, 2015

4 commits

  • ACPICA commit 61e9e20aadfaa03184d0959fbdc1fa5cdfea2551

    This patch adds option to bypass opcode tracing. The option can be used to
    reduce the trace message output. Lv Zheng.

    Link: https://github.com/acpica/acpica/commit/61e9e20a
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Lv Zheng
     
  • ACPICA commit e8e4a9b19d0b72a7b165398bdc961fc2f6f502ec

    This patch adds OSL trace hook support.

    OSPMs are encouraged to use acpi_os_trace_point() with
    ACPI_USE_SYSTEM_TRACER defined to implement platform specific trace
    facility. Lv Zheng.

    Link: https://github.com/acpica/acpica/commit/e8e4a9b1
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Lv Zheng
     
  • ACPICA commit 07fffd02607685b655ed92ee15c160e6a810b60b

    The acpi_debug_trace() 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 acpi_debug_trace() 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 acpi_debug_trace() API.
    2. Allow any method rather than just the entrance of acpi_evaluate_object()
    to be traced.
    3. All interpreter ACPI_LV_TRACE_POINT messages are collected for
    ACPI_EXECUTER layer.

    The Makefile of drivers/acpi/acpica is 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.

    Link: https://github.com/acpica/acpica/commit/07fffd02
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Lv Zheng
     
  • ACPICA commit 71299ec8b49054daace0df50268e8e055654ca37

    This patch adds trace point at the following point:
    1. Begin/end of a control method execution;
    2. Begin/end of an opcode execution.

    The trace point feature can be enabled by defining ACPI_DEBUG_OUTPUT
    and specifying a debug level that includes ACPI_LV_TRACDE_POINT and the
    debug layers that include ACPI_PARSER and ACPI_DISPACTCHER.

    In order to make aml_op_name of union acpi_parse_object usable for tracer, it is
    enabled for ACPI_DEBUG_OUTPUT in this patch. Lv Zheng.

    Link: https://github.com/acpica/acpica/commit/71299ec8
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Lv Zheng
     

02 Jul, 2015

1 commit

  • ACPICA commit 72f5a358f28c5d154ed613c142c7dca03192c5ee

    This patch intoduces generic variable macro detection support and fixes
    build breakage issue with macros using __VA_ARGS__ feature defined in
    C99.

    This patch fixes this build issue. Lv Zheng.

    This patch doesn't affect Linux kernel.

    Link: https://github.com/acpica/acpica/commit/72f5a358
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Lv Zheng
     

13 Feb, 2015

1 commit

  • __FUNCTION__ hasn't been treated as a string literal since gcc 3.4, so
    this only helps people who only test-compile using 3.3 (compiler-gcc3.h
    barks at anything older than that). Besides, there are almost no
    occurrences of __FUNCTION__ left in the tree.

    [akpm@linux-foundation.org: convert remaining __FUNCTION__ references]
    Signed-off-by: Rasmus Villemoes
    Cc: Michal Nazarewicz
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rasmus Villemoes
     

05 Feb, 2015

1 commit


18 Mar, 2014

1 commit


27 Feb, 2014

1 commit

  • Use push and pop to both guarantee that the correct alignment is used,
    and to restore the alignment to whatever it was before the header
    was included.

    It is reported that the #pragma pack(push/pop) directives are not supported
    by the specific GCCs, but this patch still doesn't affect kernel build
    as there are already #pragma pack([1]) directives used in the old ACPICA
    headers, which means there shouldn't be GCCs that are currently used to
    compile the ACPI kernels do not support #pragma pack() directives.

    References: https://bugs.acpica.org/show_bug.cgi?id=1058
    Signed-off-by: Bob Moore
    Signed-off-by: Lv Zheng
    Signed-off-by: Rafael J. Wysocki

    Bob Moore
     

11 Feb, 2014

1 commit


02 Jun, 2013

1 commit


12 Mar, 2013

1 commit


25 Jan, 2013

1 commit


10 Jan, 2013

6 commits


17 Jul, 2012

2 commits


03 Mar, 2011

1 commit


19 Jan, 2011

1 commit


07 Jul, 2010

1 commit


20 Apr, 2010

1 commit

  • This change will enable debug object output via a global variable,
    acpi_gbl_enable_aml_debug_object. This will help with remote machine
    debugging. Also, moved all debug object support code to a new
    file, exdebug.c. Entire debug object module can now be
    configured out of the ACPICA build if desired.

    Signed-off-by: Lin Ming
    Signed-off-by: Bob Moore
    Signed-off-by: Len Brown

    Lin Ming
     

23 Jan, 2010

1 commit


16 Dec, 2009

1 commit

  • Repair mechanism was considered too wordy. Now, messages are only
    unconditionally emitted if the return object cannot be repaired.
    Existing messages for successful repairs were converted to
    ACPI_DEBUG_PRINT messages for now. ACPICA BZ 827.

    http://www.acpica.org/bugzilla/show_bug.cgi?id=827

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     

31 Dec, 2008

1 commit

  • acpi.h now includes only the "public" acpica headers. All other
    acpica headers are "private" and should not be included by acpica
    users. One new file, accommon.h is used to include the commonly
    used private headers for acpica code generation. Future plans
    are to move all private headers to a new subdirectory.

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     

19 Dec, 2008

1 commit

  • acpi_early_init() was changed to over-write the cmdline param,
    making it really inconvenient to set debug flags at boot-time.

    Also,
    This sets the default level to "info", which is what all the ACPI
    drivers use. So to enable messages from drivers, you only have to
    supply the "layer" (a.k.a. "component"). For non-"info" ACPI core
    and ACPI interpreter messages, you have to supply both level and
    layer masks, as before.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Bjorn Helgaas
     

23 Oct, 2008

1 commit

  • Removed ACPI_DB_WARN and ACPI_DB_ERROR. These debug levels were
    made obsolete by the ACPI_WARNING and ACPI_ERROR/ACPI_EXCEPTION
    interfaces. Also added ACPI_DB_EVENTS to correspond with the
    existing ACPI_LV_EVENTS.

    Signed-off-by: Bob Moore
    Signed-off-by: Lin Ming
    Signed-off-by: Len Brown

    Bob Moore
     

24 Apr, 2008

1 commit


22 Jul, 2007

1 commit

  • Split ACPI_DEBUG into function trace enabled and not enabled.

    Function trace is most of the ACPI_DEBUG costs, but is
    not much of use for kernel ACPI debugging.

    Size of kernel image increased on test compile:
    + 48k (Full ACPI_DEBUG)
    + 35k (ACPI_DEBUG with function trace compiled out)

    Performance without function trace is also much better.

    Also remove ACPI_LV_DEBUG_OBJECT from default debug level as
    a lot vendors let Store (value, debug) in their code and this
    might confuse users when it pops up in syslog.

    Signed-off-by: Thomas Renninger
    Signed-off-by: Len Brown

    Thomas Renninger
     

03 Feb, 2007

1 commit

  • Added 2007 copyright to all module headers and signons. This affects
    virtually every file in the ACPICA core subsystem, iASL compiler,
    and the utilities.

    Signed-off-by: Alexey Starikovskiy
    Signed-off-by: Len Brown

    Bob Moore
     

14 Jun, 2006

2 commits

  • Removed a device initialization optimization introduced in
    20051216 where the _STA method was not run unless an _INI
    was also present for the same device. This optimization
    could cause problems because it could allow _INI methods
    to be run within a not-present device subtree (If a
    not-present device had no _INI, _STA would not be run,
    the not-present status would not be discovered, and the
    children of the device would be incorrectly traversed.)

    Implemented a new _STA optimization where namespace
    subtrees that do not contain _INI are identified and
    ignored during device initialization. Selectively running
    _STA can significantly improve boot time on large machines
    (with assistance from Len Brown.)

    Implemented support for the device initialization case
    where the returned _STA flags indicate a device not-present
    but functioning. In this case, _INI is not run, but the
    device children are examined for presence, as per the
    ACPI specification.

    Implemented an additional change to the IndexField support
    in order to conform to MS behavior. The value written to
    the Index Register is not simply a byte offset, it is a
    byte offset in units of the access width of the parent
    Index Field. (Fiodor Suietov)

    Defined and deployed a new OSL interface,
    acpi_os_validate_address(). This interface is called during
    the creation of all AML operation regions, and allows
    the host OS to exert control over what addresses it will
    allow the AML code to access. Operation Regions whose
    addresses are disallowed will cause a runtime exception
    when they are actually accessed (will not affect or abort
    table loading.)

    Defined and deployed a new OSL interface,
    acpi_os_validate_interface(). This interface allows the host OS
    to match the various "optional" interface/behavior strings
    for the _OSI predefined control method as appropriate
    (with assistance from Bjorn Helgaas.)

    Restructured and corrected various problems in the
    exception handling code paths within DsCallControlMethod
    and DsTerminateControlMethod in dsmethod (with assistance
    from Takayoshi Kochi.)

    Modified the Linux source converter to ignore quoted string
    literals while converting identifiers from mixed to lower
    case. This will correct problems with the disassembler
    and other areas where such strings must not be modified.

    The ACPI_FUNCTION_* macros no longer require quotes around
    the function name. This allows the Linux source converter
    to convert the names, now that the converter ignores
    quoted strings.

    Signed-off-by: Bob Moore
    Signed-off-by: Len Brown

    Bob Moore
     
  • Implemented the use of a cache object for all internal
    namespace nodes. Since there are about 1000 static nodes
    in a typical system, this will decrease memory use for
    cache implementations that minimize per-allocation overhead
    (such as a slab allocator.)

    Removed the reference count mechanism for internal
    namespace nodes, since it was deemed unnecessary. This
    reduces the size of each namespace node by about 5%-10%
    on all platforms. Nodes are now 20 bytes for the 32-bit
    case, and 32 bytes for the 64-bit case.

    Optimized several internal data structures to reduce
    object size on 64-bit platforms by packing data within
    the 64-bit alignment. This includes the frequently used
    ACPI_OPERAND_OBJECT, of which there can be ~1000 static
    instances corresponding to the namespace objects.

    Added two new strings for the predefined _OSI method:
    "Windows 2001.1 SP1" and "Windows 2006".

    Split the allocation tracking mechanism out to a separate
    file, from utalloc.c to uttrack.c. This mechanism appears
    to be only useful for application-level code. Kernels may
    wish to not include uttrack.c in distributions.

    Removed all remnants of the obsolete ACPI_REPORT_* macros
    and the associated code. (These macros have been replaced
    by the ACPI_ERROR and ACPI_WARNING macros.)

    Signed-off-by: Bob Moore
    Signed-off-by: Len Brown

    Bob Moore
     

20 Jan, 2006

1 commit

  • Added 2006 copyright.

    At SuSE's suggestion, enabled all error messages
    without enabling function tracing, ie with CONFIG_ACPI_DEBUG=n

    Replaced all instances of the ACPI_DEBUG_PRINT macro invoked at
    the ACPI_DB_ERROR and ACPI_DB_WARN debug levels with
    the ACPI_REPORT_ERROR and ACPI_REPORT_WARNING macros,
    respectively. This preserves all error and warning messages
    in the non-debug version of the ACPICA code (this has been
    referred to as the "debug lite" option.) Over 200 cases
    were converted to create a total of over 380 error/warning
    messages across the ACPICA code. This increases the code
    and data size of the default non-debug version by about 13K.
    Added ACPI_NO_ERROR_MESSAGES flag to enable deleting all messages.
    The size of the debug version remains about the same.

    Signed-off-by: Bob Moore
    Signed-off-by: Len Brown

    Bob Moore
     

05 Aug, 2005

1 commit