Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) .. SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) .. include:: <isonum.txt>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) ACPICA Trace Facility
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) =====================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) :Copyright: |copy| 2015, Intel Corporation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) :Author: Lv Zheng <lv.zheng@intel.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) Abstract
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) ========
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) This document describes the functions and the interfaces of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) method tracing facility.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) Functionalities and usage examples
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) ==================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) ACPICA provides method tracing capability. And two functions are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) currently implemented using this capability.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) Log reducer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) ACPICA subsystem provides debugging outputs when CONFIG_ACPI_DEBUG is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) enabled. The debugging messages which are deployed via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) ACPI_DEBUG_PRINT() macro can be reduced at 2 levels - per-component
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) level (known as debug layer, configured via
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) /sys/module/acpi/parameters/debug_layer) and per-type level (known as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) debug level, configured via /sys/module/acpi/parameters/debug_level).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) But when the particular layer/level is applied to the control method
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) evaluations, the quantity of the debugging outputs may still be too
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) large to be put into the kernel log buffer. The idea thus is worked out
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) to only enable the particular debug layer/level (normally more detailed)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) logs when the control method evaluation is started, and disable the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) detailed logging when the control method evaluation is stopped.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) The following command examples illustrate the usage of the "log reducer"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) functionality:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) a. Filter out the debug layer/level matched logs when control methods
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44)    are being evaluated::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47)       # echo "0xXXXXXXXX" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48)       # echo "0xYYYYYYYY" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49)       # echo "enable" > trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) b. Filter out the debug layer/level matched logs when the specified
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52)    control method is being evaluated::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55)       # echo "0xXXXXXXXX" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56)       # echo "0xYYYYYYYY" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57)       # echo "\PPPP.AAAA.TTTT.HHHH" > trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58)       # echo "method" > /sys/module/acpi/parameters/trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) c. Filter out the debug layer/level matched logs when the specified
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61)    control method is being evaluated for the first time::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64)       # echo "0xXXXXXXXX" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65)       # echo "0xYYYYYYYY" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66)       # echo "\PPPP.AAAA.TTTT.HHHH" > trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67)       # echo "method-once" > /sys/module/acpi/parameters/trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) Where:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70)    0xXXXXXXXX/0xYYYYYYYY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71)      Refer to Documentation/firmware-guide/acpi/debug.rst for possible debug layer/level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72)      masking values.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73)    \PPPP.AAAA.TTTT.HHHH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74)      Full path of a control method that can be found in the ACPI namespace.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75)      It needn't be an entry of a control method evaluation.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) AML tracer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) ----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) There are special log entries added by the method tracing facility at
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) the "trace points" the AML interpreter starts/stops to execute a control
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) method, or an AML opcode. Note that the format of the log entries are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) subject to change::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85)    [    0.186427]   exdebug-0398 ex_trace_point        : Method Begin [0xf58394d8:\_SB.PCI0.LPCB.ECOK] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86)    [    0.186630]   exdebug-0398 ex_trace_point        : Opcode Begin [0xf5905c88:If] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87)    [    0.186820]   exdebug-0398 ex_trace_point        : Opcode Begin [0xf5905cc0:LEqual] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88)    [    0.187010]   exdebug-0398 ex_trace_point        : Opcode Begin [0xf5905a20:-NamePath-] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89)    [    0.187214]   exdebug-0398 ex_trace_point        : Opcode End [0xf5905a20:-NamePath-] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90)    [    0.187407]   exdebug-0398 ex_trace_point        : Opcode Begin [0xf5905f60:One] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91)    [    0.187594]   exdebug-0398 ex_trace_point        : Opcode End [0xf5905f60:One] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92)    [    0.187789]   exdebug-0398 ex_trace_point        : Opcode End [0xf5905cc0:LEqual] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93)    [    0.187980]   exdebug-0398 ex_trace_point        : Opcode Begin [0xf5905cc0:Return] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94)    [    0.188146]   exdebug-0398 ex_trace_point        : Opcode Begin [0xf5905f60:One] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95)    [    0.188334]   exdebug-0398 ex_trace_point        : Opcode End [0xf5905f60:One] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96)    [    0.188524]   exdebug-0398 ex_trace_point        : Opcode End [0xf5905cc0:Return] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97)    [    0.188712]   exdebug-0398 ex_trace_point        : Opcode End [0xf5905c88:If] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98)    [    0.188903]   exdebug-0398 ex_trace_point        : Method End [0xf58394d8:\_SB.PCI0.LPCB.ECOK] execution.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) Developers can utilize these special log entries to track the AML
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) interpretation, thus can aid issue debugging and performance tuning. Note
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) that, as the "AML tracer" logs are implemented via ACPI_DEBUG_PRINT()
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) macro, CONFIG_ACPI_DEBUG is also required to be enabled for enabling
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) "AML tracer" logs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) The following command examples illustrate the usage of the "AML tracer"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) functionality:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) a. Filter out the method start/stop "AML tracer" logs when control
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)    methods are being evaluated::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113)       # echo "0x80" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114)       # echo "0x10" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115)       # echo "enable" > trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) b. Filter out the method start/stop "AML tracer" when the specified
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118)    control method is being evaluated::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121)       # echo "0x80" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122)       # echo "0x10" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123)       # echo "\PPPP.AAAA.TTTT.HHHH" > trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124)       # echo "method" > trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) c. Filter out the method start/stop "AML tracer" logs when the specified
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127)    control method is being evaluated for the first time::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130)       # echo "0x80" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131)       # echo "0x10" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132)       # echo "\PPPP.AAAA.TTTT.HHHH" > trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)       # echo "method-once" > trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) d. Filter out the method/opcode start/stop "AML tracer" when the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)    specified control method is being evaluated::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139)       # echo "0x80" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140)       # echo "0x10" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141)       # echo "\PPPP.AAAA.TTTT.HHHH" > trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142)       # echo "opcode" > trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) e. Filter out the method/opcode start/stop "AML tracer" when the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145)    specified control method is being evaluated for the first time::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147)       # cd /sys/module/acpi/parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148)       # echo "0x80" > trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149)       # echo "0x10" > trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150)       # echo "\PPPP.AAAA.TTTT.HHHH" > trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151)       # echo "opcode-opcode" > trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) Note that all above method tracing facility related module parameters can
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) be used as the boot parameters, for example::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156)    acpi.trace_debug_layer=0x80 acpi.trace_debug_level=0x10 \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157)    acpi.trace_method_name=\_SB.LID0._LID acpi.trace_state=opcode-once
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) Interface descriptions
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) ======================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) All method tracing functions can be configured via ACPI module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) parameters that are accessible at /sys/module/acpi/parameters/:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) trace_method_name
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167)   The full path of the AML method that the user wants to trace.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169)   Note that the full path shouldn't contain the trailing "_"s in its
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170)   name segments but may contain "\" to form an absolute path.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) trace_debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173)   The temporary debug_layer used when the tracing feature is enabled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175)   Using ACPI_EXECUTER (0x80) by default, which is the debug_layer
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176)   used to match all "AML tracer" logs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) trace_debug_level
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179)   The temporary debug_level used when the tracing feature is enabled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181)   Using ACPI_LV_TRACE_POINT (0x10) by default, which is the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182)   debug_level used to match all "AML tracer" logs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185)   The status of the tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187)   Users can enable/disable this debug tracing feature by executing
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188)   the following command::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190)    # echo string > /sys/module/acpi/parameters/trace_state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) Where "string" should be one of the following:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) "disable"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195)   Disable the method tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) "enable"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)   Enable the method tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199)   
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200)   ACPICA debugging messages matching "trace_debug_layer/trace_debug_level"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201)   during any method execution will be logged.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) "method"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)   Enable the method tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206)   ACPICA debugging messages matching "trace_debug_layer/trace_debug_level"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207)   during method execution of "trace_method_name" will be logged.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) "method-once"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210)   Enable the method tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212)   ACPICA debugging messages matching "trace_debug_layer/trace_debug_level"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213)   during method execution of "trace_method_name" will be logged only once.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) "opcode"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216)   Enable the method tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218)   ACPICA debugging messages matching "trace_debug_layer/trace_debug_level"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219)   during method/opcode execution of "trace_method_name" will be logged.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) "opcode-once"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222)   Enable the method tracing feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224)   ACPICA debugging messages matching "trace_debug_layer/trace_debug_level"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225)   during method/opcode execution of "trace_method_name" will be logged only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226)   once.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) Note that, the difference between the "enable" and other feature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) enabling options are:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 1. When "enable" is specified, since
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232)    "trace_debug_layer/trace_debug_level" shall apply to all control
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233)    method evaluations, after configuring "trace_state" to "enable",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234)    "trace_method_name" will be reset to NULL.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 2. When "method/opcode" is specified, if
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236)    "trace_method_name" is NULL when "trace_state" is configured to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237)    these options, the "trace_debug_layer/trace_debug_level" will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238)    apply to all control method evaluations.