diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-16 12:24:44 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-16 12:24:44 -0400 |
commit | fc82e1d59a24cbac01c49d4eb3b28d6abc26a5f4 (patch) | |
tree | 5e01479d69e69dbbe483044b39afd2aa99d4f2b2 /include/linux/syscore_ops.h | |
parent | 48d5f6731837f0ec9a0e19ca763aa17d58385a98 (diff) | |
parent | bea3864fb627d110933cfb8babe048b63c4fc76e (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (21 commits)
PM / Hibernate: Reduce autotuned default image size
PM / Core: Introduce struct syscore_ops for core subsystems PM
PM QoS: Make pm_qos settings readable
PM / OPP: opp_find_freq_exact() documentation fix
PM: Documentation/power/states.txt: fix repetition
PM: Make system-wide PM and runtime PM treat subsystems consistently
PM: Simplify kernel/power/Kconfig
PM: Add support for device power domains
PM: Drop pm_flags that is not necessary
PM: Allow pm_runtime_suspend() to succeed during system suspend
PM: Clean up PM_TRACE dependencies and drop unnecessary Kconfig option
PM: Remove CONFIG_PM_OPS
PM: Reorder power management Kconfig options
PM: Make CONFIG_PM depend on (CONFIG_PM_SLEEP || CONFIG_PM_RUNTIME)
PM / ACPI: Remove references to pm_flags from bus.c
PM: Do not create wakeup sysfs files for devices that cannot wake up
USB / Hub: Do not call device_set_wakeup_capable() under spinlock
PM: Use appropriate printk() priority level in trace.c
PM / Wakeup: Don't update events_check_enabled in pm_get_wakeup_count()
PM / Wakeup: Make pm_save_wakeup_count() work as documented
...
Diffstat (limited to 'include/linux/syscore_ops.h')
-rw-r--r-- | include/linux/syscore_ops.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/include/linux/syscore_ops.h b/include/linux/syscore_ops.h new file mode 100644 index 000000000000..27b3b0bc41a9 --- /dev/null +++ b/include/linux/syscore_ops.h | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * syscore_ops.h - System core operations. | ||
3 | * | ||
4 | * Copyright (C) 2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. | ||
5 | * | ||
6 | * This file is released under the GPLv2. | ||
7 | */ | ||
8 | |||
9 | #ifndef _LINUX_SYSCORE_OPS_H | ||
10 | #define _LINUX_SYSCORE_OPS_H | ||
11 | |||
12 | #include <linux/list.h> | ||
13 | |||
14 | struct syscore_ops { | ||
15 | struct list_head node; | ||
16 | int (*suspend)(void); | ||
17 | void (*resume)(void); | ||
18 | void (*shutdown)(void); | ||
19 | }; | ||
20 | |||
21 | extern void register_syscore_ops(struct syscore_ops *ops); | ||
22 | extern void unregister_syscore_ops(struct syscore_ops *ops); | ||
23 | #ifdef CONFIG_PM_SLEEP | ||
24 | extern int syscore_suspend(void); | ||
25 | extern void syscore_resume(void); | ||
26 | #endif | ||
27 | extern void syscore_shutdown(void); | ||
28 | |||
29 | #endif | ||