PM: Make PM_TRACE more architecture independent
When trying to debug a suspend failure I started implementing PM_TRACE for powerpc. I then noticed that I'm debugging a suspend failure and so PM_TRACE isn't useful at all, but thought that nonetheless this could be useful in the future. Basically, to support PM_TRACE, you add a Kconfig option that selects PM_TRACE and provides the infrastructure as per the help text of PM_TRACE. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
ce2b7147bb
commit
90dda1cb6a
2 changed files with 23 additions and 2 deletions
|
@ -1,6 +1,6 @@
|
||||||
obj-$(CONFIG_PM) += sysfs.o
|
obj-$(CONFIG_PM) += sysfs.o
|
||||||
obj-$(CONFIG_PM_SLEEP) += main.o
|
obj-$(CONFIG_PM_SLEEP) += main.o
|
||||||
obj-$(CONFIG_PM_TRACE) += trace.o
|
obj-$(CONFIG_PM_TRACE_RTC) += trace.o
|
||||||
|
|
||||||
ccflags-$(CONFIG_DEBUG_DRIVER) := -DDEBUG
|
ccflags-$(CONFIG_DEBUG_DRIVER) := -DDEBUG
|
||||||
ccflags-$(CONFIG_PM_VERBOSE) += -DDEBUG
|
ccflags-$(CONFIG_PM_VERBOSE) += -DDEBUG
|
||||||
|
|
|
@ -44,9 +44,30 @@ config PM_VERBOSE
|
||||||
---help---
|
---help---
|
||||||
This option enables verbose messages from the Power Management code.
|
This option enables verbose messages from the Power Management code.
|
||||||
|
|
||||||
|
config CAN_PM_TRACE
|
||||||
|
def_bool y
|
||||||
|
depends on PM_DEBUG && PM_SLEEP && EXPERIMENTAL
|
||||||
|
|
||||||
config PM_TRACE
|
config PM_TRACE
|
||||||
|
bool
|
||||||
|
help
|
||||||
|
This enables code to save the last PM event point across
|
||||||
|
reboot. The architecture needs to support this, x86 for
|
||||||
|
example does by saving things in the RTC, see below.
|
||||||
|
|
||||||
|
The architecture specific code must provide the extern
|
||||||
|
functions from <linux/resume-trace.h> as well as the
|
||||||
|
<asm/resume-trace.h> header with a TRACE_RESUME() macro.
|
||||||
|
|
||||||
|
The way the information is presented is architecture-
|
||||||
|
dependent, x86 will print the information during a
|
||||||
|
late_initcall.
|
||||||
|
|
||||||
|
config PM_TRACE_RTC
|
||||||
bool "Suspend/resume event tracing"
|
bool "Suspend/resume event tracing"
|
||||||
depends on PM_DEBUG && X86 && PM_SLEEP && EXPERIMENTAL
|
depends on CAN_PM_TRACE
|
||||||
|
depends on X86
|
||||||
|
select PM_TRACE
|
||||||
default n
|
default n
|
||||||
---help---
|
---help---
|
||||||
This enables some cheesy code to save the last PM event point in the
|
This enables some cheesy code to save the last PM event point in the
|
||||||
|
|
Loading…
Reference in a new issue