Commit 47e073d2 authored by Changbin Du's avatar Changbin Du Committed by Jonathan Corbet
Browse files

trace doc: convert trace/events-power.txt to rst format



This converts the plain text documentation to reStructuredText format and
add it into Sphinx TOC tree. No essential content change.

Cc: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: default avatarChangbin Du <changbin.du@intel.com>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 3cdd868e
Loading
Loading
Loading
Loading
+30 −22
Original line number Diff line number Diff line

=============================
Subsystem Trace Points: power
=============================

The power tracing system captures events related to power transitions
within the kernel. Broadly speaking there are three major subheadings:

  o Power state switch which reports events related to suspend (S-states),
  - Power state switch which reports events related to suspend (S-states),
    cpuidle (C-states) and cpufreq (P-states)
  o System clock related changes
  o Power domains related changes and transitions
  - System clock related changes
  - Power domains related changes and transitions

This document describes what each of the tracepoints is and why they
might be useful.
@@ -22,12 +23,14 @@ Cf. include/trace/events/power.h for the events definitions.

A 'cpu' event class gathers the CPU-related events: cpuidle and
cpufreq.
::

  cpu_idle		"state=%lu cpu_id=%lu"
  cpu_frequency		"state=%lu cpu_id=%lu"

A suspend event is used to indicate the system going in and out of the
suspend mode:
::

  machine_suspend		"state=%lu"

@@ -45,6 +48,7 @@ correctly draw the states diagrams and to calculate accurate statistics etc.
================
The clock events are used for clock enable/disable and for
clock rate change.
::

  clock_enable		"%s state=%lu cpu_id=%lu"
  clock_disable		"%s state=%lu cpu_id=%lu"
@@ -57,6 +61,7 @@ clock rate for set_rate.
3. Power domains events
=======================
The power domain events are used for power domains transitions
::

  power_domain_target	"%s state=%lu cpu_id=%lu"

@@ -67,6 +72,7 @@ The second parameter is the power domain target state.
================
The PM QoS events are used for QoS add/update/remove request and for
target/flags update.
::

  pm_qos_add_request                 "pm_qos_class=%s value=%d"
  pm_qos_update_request              "pm_qos_class=%s value=%d"
@@ -76,6 +82,7 @@ pm_qos_update_request_timeout "pm_qos_class=%s value=%d, timeout_us=%ld"
The first parameter gives the QoS class name (e.g. "CPU_DMA_LATENCY").
The second parameter is value to be added/updated/removed.
The third parameter is timeout value in usec.
::

  pm_qos_update_target               "action=%s prev_value=%d curr_value=%d"
  pm_qos_update_flags                "action=%s prev_value=0x%x curr_value=0x%x"
@@ -85,6 +92,7 @@ The second parameter is the previous QoS value.
The third parameter is the current QoS value to update.

And, there are also events used for device PM QoS add/update/remove request.
::

  dev_pm_qos_add_request             "device=%s type=%s new_value=%d"
  dev_pm_qos_update_request          "device=%s type=%s new_value=%d"
+1 −0
Original line number Diff line number Diff line
@@ -14,3 +14,4 @@ Linux Tracing Technologies
   tracepoints
   events
   events-kmem
   events-power