aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTodd E Brandt <todd.e.brandt@linux.intel.com>2018-01-30 03:17:18 -0500
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2018-02-21 17:56:22 -0500
commita6fbdbb2b852c2208156f21747b270931fd0d427 (patch)
tree064ab37264d54e9139f910446e7d2b3c178c5ef6
parent91ab883eb21325ad80f3473633f794c78ac87f51 (diff)
pm-graph: config files and installer
- name change: analyze_boot.py to bootgraph.py - name change: analyze_suspend.py to sleepgraph.py - added config files for easier sleepgraph usage - added example.cfg which describes all config options - added cgskip.txt definition for slimmer callgraphs Signed-off-by: Todd Brandt <todd.e.brandt@linux.intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r--tools/power/pm-graph/Makefile29
-rwxr-xr-xtools/power/pm-graph/bootgraph.py (renamed from tools/power/pm-graph/analyze_boot.py)0
-rw-r--r--tools/power/pm-graph/config/cgskip.txt65
-rw-r--r--tools/power/pm-graph/config/custom-timeline-functions.cfg205
-rw-r--r--tools/power/pm-graph/config/example.cfg133
-rw-r--r--tools/power/pm-graph/config/freeze-callgraph.cfg94
-rw-r--r--tools/power/pm-graph/config/freeze-dev.cfg93
-rw-r--r--tools/power/pm-graph/config/freeze.cfg93
-rw-r--r--tools/power/pm-graph/config/standby-callgraph.cfg94
-rw-r--r--tools/power/pm-graph/config/standby-dev.cfg93
-rw-r--r--tools/power/pm-graph/config/standby.cfg93
-rw-r--r--tools/power/pm-graph/config/suspend-callgraph.cfg98
-rw-r--r--tools/power/pm-graph/config/suspend-dev.cfg93
-rw-r--r--tools/power/pm-graph/config/suspend-x2-proc.cfg93
-rw-r--r--tools/power/pm-graph/config/suspend.cfg93
-rwxr-xr-xtools/power/pm-graph/sleepgraph.py (renamed from tools/power/pm-graph/analyze_suspend.py)0
16 files changed, 1362 insertions, 7 deletions
diff --git a/tools/power/pm-graph/Makefile b/tools/power/pm-graph/Makefile
index 4e1e999e7b05..c1899cd72c80 100644
--- a/tools/power/pm-graph/Makefile
+++ b/tools/power/pm-graph/Makefile
@@ -7,11 +7,24 @@ all:
7 7
8install : uninstall 8install : uninstall
9 install -d $(DESTDIR)$(PREFIX)/lib/pm-graph 9 install -d $(DESTDIR)$(PREFIX)/lib/pm-graph
10 install analyze_suspend.py $(DESTDIR)$(PREFIX)/lib/pm-graph 10 install sleepgraph.py $(DESTDIR)$(PREFIX)/lib/pm-graph
11 install analyze_boot.py $(DESTDIR)$(PREFIX)/lib/pm-graph 11 install bootgraph.py $(DESTDIR)$(PREFIX)/lib/pm-graph
12 install -d $(DESTDIR)$(PREFIX)/lib/pm-graph/config
13 install -m 644 config/cgskip.txt $(DESTDIR)$(PREFIX)/lib/pm-graph/config
14 install -m 644 config/freeze-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
15 install -m 644 config/freeze.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
16 install -m 644 config/freeze-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
17 install -m 644 config/standby-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
18 install -m 644 config/standby.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
19 install -m 644 config/standby-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
20 install -m 644 config/suspend-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
21 install -m 644 config/suspend.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
22 install -m 644 config/suspend-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
23 install -m 644 config/suspend-x2-proc.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
12 24
13 ln -s $(DESTDIR)$(PREFIX)/lib/pm-graph/analyze_boot.py $(DESTDIR)$(PREFIX)/bin/bootgraph 25 install -d $(DESTDIR)$(PREFIX)/bin
14 ln -s $(DESTDIR)$(PREFIX)/lib/pm-graph/analyze_suspend.py $(DESTDIR)$(PREFIX)/bin/sleepgraph 26 ln -s $(DESTDIR)$(PREFIX)/lib/pm-graph/bootgraph.py $(DESTDIR)$(PREFIX)/bin/bootgraph
27 ln -s $(DESTDIR)$(PREFIX)/lib/pm-graph/sleepgraph.py $(DESTDIR)$(PREFIX)/bin/sleepgraph
15 28
16 install -d $(DESTDIR)$(PREFIX)/share/man/man8 29 install -d $(DESTDIR)$(PREFIX)/share/man/man8
17 install bootgraph.8 $(DESTDIR)$(PREFIX)/share/man/man8 30 install bootgraph.8 $(DESTDIR)$(PREFIX)/share/man/man8
@@ -24,9 +37,11 @@ uninstall :
24 rm -f $(DESTDIR)$(PREFIX)/bin/bootgraph 37 rm -f $(DESTDIR)$(PREFIX)/bin/bootgraph
25 rm -f $(DESTDIR)$(PREFIX)/bin/sleepgraph 38 rm -f $(DESTDIR)$(PREFIX)/bin/sleepgraph
26 39
27 rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/analyze_boot.py 40 rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/config/*
28 rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/analyze_suspend.py 41 if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph/config ] ; then \
29 rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/*.pyc 42 rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph/config; \
43 fi;
44 rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/*
30 if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph ] ; then \ 45 if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph ] ; then \
31 rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph; \ 46 rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph; \
32 fi; 47 fi;
diff --git a/tools/power/pm-graph/analyze_boot.py b/tools/power/pm-graph/bootgraph.py
index e83df141a597..e83df141a597 100755
--- a/tools/power/pm-graph/analyze_boot.py
+++ b/tools/power/pm-graph/bootgraph.py
diff --git a/tools/power/pm-graph/config/cgskip.txt b/tools/power/pm-graph/config/cgskip.txt
new file mode 100644
index 000000000000..e48d588fbfb4
--- /dev/null
+++ b/tools/power/pm-graph/config/cgskip.txt
@@ -0,0 +1,65 @@
1# -----------------------------------------------
2# CallGraph function skip list
3#
4# This file contains a list of functions which are
5# meant to be skipped in the callgraph trace. It reduces
6# the callgraph html file size by treating these functions
7# as leaves with no child calls. It can be editted by
8# adding or removing function symbol names.
9#
10# The sleepgraph tool automatically pulls this file in when
11# it is found in the config folder. It can be ignored if
12# the tool is called with "-cgskip off".
13# -----------------------------------------------
14
15# low level scheduling and timing
16up
17down_timeout
18mutex_lock
19down_read
20complete_all
21schedule_timeout
22wake_up_process
23msleep
24__udelay
25ktime_get
26
27# console calls
28printk
29dev_printk
30console_unlock
31
32# memory handling
33__kmalloc
34__kmalloc_track_caller
35kmem_cache_alloc
36kmem_cache_alloc_trace
37kmem_cache_free
38kstrdup
39kstrdup_const
40kmalloc_slab
41new_slab
42__slab_alloc
43__slab_free
44raw_pci_read
45pci_read
46alloc_pages_current
47
48# debugfs and sysfs setup
49debugfs_remove_recursive
50debugfs_create_dir
51debugfs_create_files
52debugfs_create_dir
53debugfs_get_inode
54sysfs_add_file_mode_ns
55sysfs_add_file
56sysfs_create_dir_ns
57sysfs_create_link
58sysfs_create_group
59sysfs_create_groups
60sysfs_create_bin_file
61dpm_sysfs_add
62sysfs_create_file_ns
63sysfs_merge_group
64sysfs_add_link_to_group
65sysfs_create_link_sd
diff --git a/tools/power/pm-graph/config/custom-timeline-functions.cfg b/tools/power/pm-graph/config/custom-timeline-functions.cfg
new file mode 100644
index 000000000000..4f80ad7d7275
--- /dev/null
+++ b/tools/power/pm-graph/config/custom-timeline-functions.cfg
@@ -0,0 +1,205 @@
1#
2# This is the configuration file for sleepgraph. It contains
3# all the tool arguments so that they don't have to be given on the
4# command line. It also includes advanced settings for functions
5# and kprobes. It is run like this
6#
7# sudo ./sleepgraph.py -config thisfile.txt
8#
9
10[Settings]
11
12# Verbosity
13# print verbose messages (default: false)
14verbose: false
15
16# Suspend Mode
17# e.g. standby, mem, freeze, disk (default: mem)
18mode: mem
19
20# Automatic Wakeup
21# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
22rtcwake: 15
23
24# Add Logs
25# add the dmesg and ftrace log to the html output (default: false)
26addlogs: false
27
28# Display function calls
29# graph source functions in the timeline (default: false)
30dev: true
31
32# Callgraph
33# gather detailed ftrace callgraph data on all timeline events (default: false)
34callgraph: false
35
36# Back to Back Suspend/Resume
37# Run two suspend/resumes back to back (default: false)
38x2: false
39
40# Back to Back Suspend Delay
41# Time delay between the two test runs in ms (default: 0 ms)
42x2delay: 0
43
44# Minimum Device Length
45# graph only devices longer than min in the timeline (default: 0.001 ms)
46mindev: 1
47
48# Minimum Callgraph Length
49# provide callgraph data for blocks longer than min (default: 0.001 ms)
50mincg: 1
51
52# Suspend/Resume Gap
53# insert a small visible gap between suspend and resume on the timeline (default: false)
54srgap: false
55
56# Output Directory Format
57# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
58output-dir: suspend-{hostname}-{date}-{time}-custom
59
60# Override default timeline entries
61# Do not use the internal default functions for timeline entries (default: false)
62# Set this to true if you intend to only use the ones defined in this config
63override-timeline-functions: true
64
65# Override default dev timeline entries
66# Do not use the internal default functions for dev timeline entries (default: false)
67# Set this to true if you intend to only use the ones defined in this config
68override-dev-timeline-functions: true
69
70[timeline_functions_x86_64]
71#
72# Function calls to display in the timeline alongside device callbacks.
73# The tool has an internal set of these functions which should cover the
74# whole of kernel execution, but you can append or override here.
75#
76# This is a list of kprobes which use both symbol data and function arg data.
77# The function calls are displayed on the timeline alongside the device blocks.
78# The args are pulled directly from the stack using this architecture's registers
79# and stack formatting. Three pieces of info are required. The function name,
80# a format string, and an argument list
81#
82# Entry format:
83#
84# function: format{fn_arg1}_{fn_arg2} fn_arg1 fn_arg2 ... [color=purple]
85#
86# Required Arguments:
87#
88# function: The symbol name for the function you want probed, this is the
89# minimum required for an entry, it will show up as the function
90# name with no arguments.
91#
92# example: _cpu_up:
93#
94# Optional Arguments:
95#
96# format: The format to display the data on the timeline in. Use braces to
97# enclose the arg names.
98#
99# example: CPU_ON[{cpu}]
100#
101# color: The color of the entry block in the timeline. The default color is
102# transparent, so the entry shares the phase color. The color is an
103# html color string, either a word, or an RGB.
104#
105# example: [color=#CC00CC]
106#
107# arglist: A list of arguments from registers/stack addresses. See URL:
108# https://www.kernel.org/doc/Documentation/trace/kprobetrace.txt
109#
110# example: cpu=%di:s32
111#
112# Example: Display cpu resume in the timeline
113#
114# _cpu_up: CPU_ON[{cpu}] cpu=%di:s32 [color=orange]
115#
116_cpu_down: CPU_OFF[{cpu}] cpu=%di:s32
117_cpu_up: CPU_ON[{cpu}] cpu=%di:s32
118sys_sync:
119pm_prepare_console:
120pm_notifier_call_chain:
121freeze_processes:
122freeze_kernel_threads:
123pm_restrict_gfp_mask:
124acpi_suspend_begin:
125suspend_console:
126acpi_pm_prepare:
127syscore_suspend:
128arch_enable_nonboot_cpus_end:
129syscore_resume:
130acpi_pm_finish:
131resume_console:
132acpi_pm_end:
133pm_restore_gfp_mask:
134thaw_processes:
135pm_restore_console:
136
137[dev_timeline_functions_x86_64]
138#
139# Dev mode function calls to display inside timeline entries
140#
141# This is a list of kprobes which use both symbol data and function arg data.
142# The function calls are displayed on the timeline alongside the device blocks.
143# The args are pulled directly from the stack using this architecture's registers
144# and stack formatting. Three pieces of info are required. The function name,
145# a format string, and an argument list
146#
147# Entry format:
148#
149# function: format{fn_arg1}_{fn_arg2} fn_arg1 fn_arg2 ... [color=purple]
150#
151# Required Arguments:
152#
153# function: The symbol name for the function you want probed, this is the
154# minimum required for an entry, it will show up as the function
155# name with no arguments.
156#
157# example: ata_eh_recover:
158#
159# Optional Arguments:
160#
161# format: The format to display the data on the timeline in. Use braces to
162# enclose the arg names.
163#
164# example: ata{port}_port_reset
165#
166# color: The color of the entry block in the timeline. The default color is
167# transparent, so the entry shares the phase color. The color is an
168# html color string, either a word, or an RGB.
169#
170# example: [color=#CC00CC]
171#
172# arglist: A list of arguments from registers/stack addresses. See URL:
173# https://www.kernel.org/doc/Documentation/trace/kprobetrace.txt
174#
175# example: port=+36(%di):s32
176#
177# Example: Display ATA port reset as ataN_port_reset in the timeline
178#
179# ata_eh_recover: ata{port}_port_reset port=+36(%di):s32
180#
181msleep: msleep time=%di:s32
182schedule_timeout_uninterruptible: schedule_timeout_uninterruptible timeout=%di:s32
183schedule_timeout: schedule_timeout timeout=%di:s32
184usleep_range: usleep_range min=%di:s32 max=%si:s32
185__const_udelay: udelay loops=%di:s32
186__mutex_lock_slowpath: mutex_lock_slowpath
187ata_eh_recover: ata_eh_recover port=+36(%di):s32
188acpi_os_stall:
189acpi_resume_power_resources:
190acpi_ps_parse_aml:
191ext4_sync_fs:
192i915_gem_resume:
193i915_restore_state:
194intel_opregion_setup:
195g4x_pre_enable_dp:
196vlv_pre_enable_dp:
197chv_pre_enable_dp:
198g4x_enable_dp:
199vlv_enable_dp:
200intel_hpd_init:
201intel_opregion_register:
202intel_dp_detect:
203intel_hdmi_detect:
204intel_opregion_init:
205intel_fbdev_set_suspend:
diff --git a/tools/power/pm-graph/config/example.cfg b/tools/power/pm-graph/config/example.cfg
new file mode 100644
index 000000000000..05b2efb9bb54
--- /dev/null
+++ b/tools/power/pm-graph/config/example.cfg
@@ -0,0 +1,133 @@
1#
2# Generic S3 (Suspend to Mem) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/example.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: mem
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: suspend-{hostname}-{date}-{time}
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: true
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# Skip HTML generation
41# Only capture the logs, don't generate the html timeline (default: false)
42skiphtml: false
43
44# Sync filesystem before suspend
45# run sync before the test, minimizes sys_sync call time (default: false)
46sync: true
47
48# Runtime suspend enable/disable
49# Enable/disable runtime suspend for all devices, restore all after test (default: no-action)
50# rs: disable
51
52# Turn display on/off for test
53# Switch the display on/off for the test using xset (default: no-action)
54# display: on
55
56# Print results to text file
57# Print the status of the test run in the given file (default: no-action)
58result: result.txt
59
60# Gzip the log files to save space
61# Gzip the generated log files, and read gzipped log files (default: false)
62gzip: true
63
64# ---- Advanced Options ----
65
66# Command to execute in lieu of suspend (default: "")
67# command: echo mem > /sys/power/state
68
69# Display user processes
70# graph user processes and cpu usage in the timeline (default: false)
71proc: false
72
73# Display function calls
74# graph source functions in the timeline (default: false)
75dev: false
76
77# Multiple test runs
78# Run N tests D seconds apart, generates separate outputs with a summary (default: false)
79# multi: 3 5
80
81# Back to Back Suspend/Resume
82# Run two suspend/resumes back to back and display in the same timeline (default: false)
83x2: false
84
85# Back to Back Suspend Delay
86# Time delay between the two test runs in ms (default: 0 ms)
87x2delay: 0
88
89# Pre Suspend Delay
90# Include an N ms delay before (1st) suspend (default: 0 ms)
91predelay: 0
92
93# Post Resume Delay
94# Include an N ms delay after (last) resume (default: 0 ms)
95postdelay: 0
96
97# Minimum Device Length
98# graph only devices longer than min in the timeline (default: 0.001 ms)
99mindev: 0.001
100
101# ---- Debug Options ----
102
103# Callgraph
104# gather detailed ftrace callgraph data on all timeline events (default: false)
105callgraph: false
106
107# Callgraph phase filter
108# Only enable callgraphs for one phase, i.e. resume_noirq (default: all)
109cgphase: suspend
110
111# Callgraph x2 test filter
112# Only enable callgraphs test 0 or 1 when using -x2 (default: 1)
113cgtest: 0
114
115# Expand Callgraph
116# pre-expand the callgraph data in the html output (default: disabled)
117expandcg: false
118
119# Minimum Callgraph Length
120# provide callgraph data for blocks longer than min (default: 0.001 ms)
121mincg: 1
122
123# Timestamp Precision
124# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
125timeprec: 6
126
127# Device Filter
128# show only devices whose name/driver includes one of these strings
129# devicefilter: _cpu_up,_cpu_down,i915,usb
130
131# Add kprobe functions to the timeline
132# Add functions to the timeline from a text file (default: no-action)
133# fadd: file.txt
diff --git a/tools/power/pm-graph/config/freeze-callgraph.cfg b/tools/power/pm-graph/config/freeze-callgraph.cfg
new file mode 100644
index 000000000000..f692821c4828
--- /dev/null
+++ b/tools/power/pm-graph/config/freeze-callgraph.cfg
@@ -0,0 +1,94 @@
1#
2# Full Callgraph for S2 (Freeze) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/freeze-callgraph.cfg
10#
11# NOTE: the output of this test is very large (> 30MB)
12
13[Settings]
14
15# ---- General Options ----
16
17# Verbosity
18# print verbose messages (default: false)
19verbose: false
20
21# Suspend Mode
22# e.g. standby, mem, freeze, disk (default: mem)
23mode: freeze
24
25# Output Directory Format
26# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
27output-dir: freeze-{hostname}-{date}-{time}-cg
28
29# Automatic Wakeup
30# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
31rtcwake: 15
32
33# Add Logs
34# add the dmesg and ftrace log to the html output (default: false)
35addlogs: false
36
37# Suspend/Resume Gap
38# insert a small visible gap between suspend and resume on the timeline (default: false)
39srgap: false
40
41# ---- Advanced Options ----
42
43# Command to execute in lieu of freeze (default: "")
44# command: echo freeze > /sys/power/state
45
46# Display user processes
47# graph user processes and cpu usage in the timeline (default: false)
48proc: false
49
50# Display function calls
51# graph source functions in the timeline (default: false)
52dev: false
53
54# Back to Back Suspend/Resume
55# Run two suspend/resumes back to back (default: false)
56x2: false
57
58# Back to Back Suspend Delay
59# Time delay between the two test runs in ms (default: 0 ms)
60x2delay: 0
61
62# Pre Suspend Delay
63# Include an N ms delay before (1st) suspend (default: 0 ms)
64predelay: 0
65
66# Post Resume Delay
67# Include an N ms delay after (last) resume (default: 0 ms)
68postdelay: 0
69
70# Minimum Device Length
71# graph only devices longer than min in the timeline (default: 0.001 ms)
72mindev: 1
73
74# ---- Debug Options ----
75
76# Callgraph
77# gather detailed ftrace callgraph data on all timeline events (default: false)
78callgraph: true
79
80# Expand Callgraph
81# pre-expand the callgraph data in the html output (default: disabled)
82expandcg: false
83
84# Minimum Callgraph Length
85# provide callgraph data for blocks longer than min (default: 0.001 ms)
86mincg: 1
87
88# Timestamp Precision
89# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
90timeprec: 6
91
92# Device Filter
93# show only devs whose name/driver includes one of these strings
94# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/freeze-dev.cfg b/tools/power/pm-graph/config/freeze-dev.cfg
new file mode 100644
index 000000000000..c4ad5cea3cbf
--- /dev/null
+++ b/tools/power/pm-graph/config/freeze-dev.cfg
@@ -0,0 +1,93 @@
1#
2# Dev S2 (Freeze) test - includes src calls / kernel threads
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/freeze-dev.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: freeze
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: freeze-{hostname}-{date}-{time}-dev
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of freeze (default: "")
43# command: echo freeze > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: false
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: true
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: false
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 0
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 0
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 0
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 1
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/freeze.cfg b/tools/power/pm-graph/config/freeze.cfg
new file mode 100644
index 000000000000..0b70e0b74527
--- /dev/null
+++ b/tools/power/pm-graph/config/freeze.cfg
@@ -0,0 +1,93 @@
1#
2# Generic S2 (Freeze) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/freeze.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: freeze
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: freeze-{hostname}-{date}-{time}
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of freeze (default: "")
43# command: echo freeze > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: false
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: false
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: false
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 0
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 0
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 0
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 0.001
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/standby-callgraph.cfg b/tools/power/pm-graph/config/standby-callgraph.cfg
new file mode 100644
index 000000000000..f52a6b9d5c32
--- /dev/null
+++ b/tools/power/pm-graph/config/standby-callgraph.cfg
@@ -0,0 +1,94 @@
1#
2# Full Callgraph for S1 (Standby) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/standby-callgraph.cfg
10#
11# NOTE: the output of this test is very large (> 30MB)
12
13[Settings]
14
15# ---- General Options ----
16
17# Verbosity
18# print verbose messages (default: false)
19verbose: false
20
21# Suspend Mode
22# e.g. standby, mem, freeze, disk (default: mem)
23mode: standby
24
25# Output Directory Format
26# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
27output-dir: standby-{hostname}-{date}-{time}-cg
28
29# Automatic Wakeup
30# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
31rtcwake: 15
32
33# Add Logs
34# add the dmesg and ftrace log to the html output (default: false)
35addlogs: false
36
37# Suspend/Resume Gap
38# insert a small visible gap between suspend and resume on the timeline (default: false)
39srgap: false
40
41# ---- Advanced Options ----
42
43# Command to execute in lieu of standby (default: "")
44# command: echo standby > /sys/power/state
45
46# Display user processes
47# graph user processes and cpu usage in the timeline (default: false)
48proc: false
49
50# Display function calls
51# graph source functions in the timeline (default: false)
52dev: false
53
54# Back to Back Suspend/Resume
55# Run two suspend/resumes back to back (default: false)
56x2: false
57
58# Back to Back Suspend Delay
59# Time delay between the two test runs in ms (default: 0 ms)
60x2delay: 0
61
62# Pre Suspend Delay
63# Include an N ms delay before (1st) suspend (default: 0 ms)
64predelay: 0
65
66# Post Resume Delay
67# Include an N ms delay after (last) resume (default: 0 ms)
68postdelay: 0
69
70# Minimum Device Length
71# graph only devices longer than min in the timeline (default: 0.001 ms)
72mindev: 1
73
74# ---- Debug Options ----
75
76# Callgraph
77# gather detailed ftrace callgraph data on all timeline events (default: false)
78callgraph: true
79
80# Expand Callgraph
81# pre-expand the callgraph data in the html output (default: disabled)
82expandcg: false
83
84# Minimum Callgraph Length
85# provide callgraph data for blocks longer than min (default: 0.001 ms)
86mincg: 1
87
88# Timestamp Precision
89# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
90timeprec: 6
91
92# Device Filter
93# show only devs whose name/driver includes one of these strings
94# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/standby-dev.cfg b/tools/power/pm-graph/config/standby-dev.cfg
new file mode 100644
index 000000000000..a5498ece3def
--- /dev/null
+++ b/tools/power/pm-graph/config/standby-dev.cfg
@@ -0,0 +1,93 @@
1#
2# Dev S1 (Standby) test - includes src calls / kernel threads
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/standby-dev.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: standby
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: standby-{hostname}-{date}-{time}-dev
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of standby (default: "")
43# command: echo standby > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: false
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: true
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: false
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 0
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 0
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 0
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 1
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/standby.cfg b/tools/power/pm-graph/config/standby.cfg
new file mode 100644
index 000000000000..f0dd264dfeff
--- /dev/null
+++ b/tools/power/pm-graph/config/standby.cfg
@@ -0,0 +1,93 @@
1#
2# Generic S1 (Standby) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/standby.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: standby
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: standby-{hostname}-{date}-{time}
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of standby (default: "")
43# command: echo standby > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: false
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: false
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: false
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 0
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 0
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 0
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 0.001
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/suspend-callgraph.cfg b/tools/power/pm-graph/config/suspend-callgraph.cfg
new file mode 100644
index 000000000000..11b8cbc12d34
--- /dev/null
+++ b/tools/power/pm-graph/config/suspend-callgraph.cfg
@@ -0,0 +1,98 @@
1#
2# Full Callgraph for S3 (Suspend to Mem) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/suspend.cfg
10#
11# NOTE: the output of this test is very large (> 30MB)
12
13[Settings]
14
15# ---- General Options ----
16
17# Verbosity
18# print verbose messages (default: false)
19verbose: false
20
21# Suspend Mode
22# e.g. standby, mem, freeze, disk (default: mem)
23mode: mem
24
25# Output Directory Format
26# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
27output-dir: suspend-{hostname}-{date}-{time}-cg
28
29# Automatic Wakeup
30# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
31rtcwake: 15
32
33# Add Logs
34# add the dmesg and ftrace log to the html output (default: false)
35addlogs: false
36
37# Suspend/Resume Gap
38# insert a small visible gap between suspend and resume on the timeline (default: false)
39srgap: false
40
41# ---- Advanced Options ----
42
43# Command to execute in lieu of suspend (default: "")
44# command: echo mem > /sys/power/state
45
46# Display user processes
47# graph user processes and cpu usage in the timeline (default: false)
48proc: false
49
50# Display function calls
51# graph source functions in the timeline (default: false)
52dev: false
53
54# Back to Back Suspend/Resume
55# Run two suspend/resumes back to back (default: false)
56x2: false
57
58# Back to Back Suspend Delay
59# Time delay between the two test runs in ms (default: 0 ms)
60x2delay: 0
61
62# Pre Suspend Delay
63# Include an N ms delay before (1st) suspend (default: 0 ms)
64predelay: 0
65
66# Post Resume Delay
67# Include an N ms delay after (last) resume (default: 0 ms)
68postdelay: 0
69
70# Minimum Device Length
71# graph only devices longer than min in the timeline (default: 0.001 ms)
72mindev: 0.001
73
74# ---- Debug Options ----
75
76# Callgraph
77# gather detailed ftrace callgraph data on all timeline events (default: false)
78callgraph: true
79
80# Max graph depth
81# limit the callgraph trace to this depth (default: 0 = all)
82maxdepth: 5
83
84# Expand Callgraph
85# pre-expand the callgraph data in the html output (default: disabled)
86expandcg: false
87
88# Minimum Callgraph Length
89# provide callgraph data for blocks longer than min (default: 0.001 ms)
90mincg: 1
91
92# Timestamp Precision
93# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
94timeprec: 6
95
96# Device Filter
97# show only devs whose name/driver includes one of these strings
98# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/suspend-dev.cfg b/tools/power/pm-graph/config/suspend-dev.cfg
new file mode 100644
index 000000000000..56f1d21cc79b
--- /dev/null
+++ b/tools/power/pm-graph/config/suspend-dev.cfg
@@ -0,0 +1,93 @@
1#
2# Dev S3 (Suspend to Mem) test - includes src calls / kernel threads
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/suspend-dev.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: mem
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: suspend-{hostname}-{date}-{time}-dev
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of suspend (default: "")
43# command: echo mem > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: false
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: true
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: false
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 0
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 0
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 0
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 1
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/suspend-x2-proc.cfg b/tools/power/pm-graph/config/suspend-x2-proc.cfg
new file mode 100644
index 000000000000..0ecca0ede138
--- /dev/null
+++ b/tools/power/pm-graph/config/suspend-x2-proc.cfg
@@ -0,0 +1,93 @@
1#
2# Proc S3 (Suspend to Mem) x2 test - includes user processes
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/suspend-proc.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: mem
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: suspend-{hostname}-{date}-{time}-x2-proc
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of suspend (default: "")
43# command: echo mem > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: true
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: false
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: true
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 1000
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 1000
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 1000
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 1
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/config/suspend.cfg b/tools/power/pm-graph/config/suspend.cfg
new file mode 100644
index 000000000000..70d293231b06
--- /dev/null
+++ b/tools/power/pm-graph/config/suspend.cfg
@@ -0,0 +1,93 @@
1#
2# Generic S3 (Suspend to Mem) test
3#
4# This is the configuration file for sleepgraph. It contains
5# all the tool arguments so that they don't have to be given on the
6# command line. It also includes advanced settings for functions
7# and kprobes. It is run like this
8#
9# sudo ./sleepgraph.py -config config/suspend.cfg
10#
11
12[Settings]
13
14# ---- General Options ----
15
16# Verbosity
17# print verbose messages (default: false)
18verbose: false
19
20# Suspend Mode
21# e.g. standby, mem, freeze, disk (default: mem)
22mode: mem
23
24# Output Directory Format
25# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
26output-dir: suspend-{hostname}-{date}-{time}
27
28# Automatic Wakeup
29# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
30rtcwake: 15
31
32# Add Logs
33# add the dmesg and ftrace log to the html output (default: false)
34addlogs: false
35
36# Suspend/Resume Gap
37# insert a small visible gap between suspend and resume on the timeline (default: false)
38srgap: false
39
40# ---- Advanced Options ----
41
42# Command to execute in lieu of suspend (default: "")
43# command: echo mem > /sys/power/state
44
45# Display user processes
46# graph user processes and cpu usage in the timeline (default: false)
47proc: false
48
49# Display function calls
50# graph source functions in the timeline (default: false)
51dev: false
52
53# Back to Back Suspend/Resume
54# Run two suspend/resumes back to back (default: false)
55x2: false
56
57# Back to Back Suspend Delay
58# Time delay between the two test runs in ms (default: 0 ms)
59x2delay: 0
60
61# Pre Suspend Delay
62# Include an N ms delay before (1st) suspend (default: 0 ms)
63predelay: 0
64
65# Post Resume Delay
66# Include an N ms delay after (last) resume (default: 0 ms)
67postdelay: 0
68
69# Minimum Device Length
70# graph only devices longer than min in the timeline (default: 0.001 ms)
71mindev: 0.001
72
73# ---- Debug Options ----
74
75# Callgraph
76# gather detailed ftrace callgraph data on all timeline events (default: false)
77callgraph: false
78
79# Expand Callgraph
80# pre-expand the callgraph data in the html output (default: disabled)
81expandcg: false
82
83# Minimum Callgraph Length
84# provide callgraph data for blocks longer than min (default: 0.001 ms)
85mincg: 1
86
87# Timestamp Precision
88# Number of significant digits in timestamps (0:S, [3:ms], 6:us)
89timeprec: 3
90
91# Device Filter
92# show only devs whose name/driver includes one of these strings
93# devicefilter: _cpu_up,_cpu_down,i915,usb
diff --git a/tools/power/pm-graph/analyze_suspend.py b/tools/power/pm-graph/sleepgraph.py
index 1b60fe203741..1b60fe203741 100755
--- a/tools/power/pm-graph/analyze_suspend.py
+++ b/tools/power/pm-graph/sleepgraph.py