summaryrefslogtreecommitdiffstats
path: root/include/linux/pm_legacy.h
diff options
context:
space:
mode:
authorJeff Garzik2005-11-14 01:06:25 +0100
committerLinus Torvalds2005-11-14 03:14:10 +0100
commitbca73e4bf8563d83f7856164caa44d5f42e44cca (patch)
treeea8c50adca509c8012aed715d578b6c927f9e284 /include/linux/pm_legacy.h
parent[PATCH] reorder struct files_struct (diff)
downloadkernel-qcow2-linux-bca73e4bf8563d83f7856164caa44d5f42e44cca.tar.gz
kernel-qcow2-linux-bca73e4bf8563d83f7856164caa44d5f42e44cca.tar.xz
kernel-qcow2-linux-bca73e4bf8563d83f7856164caa44d5f42e44cca.zip
[PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h
Since few people need the support anymore, this moves the legacy pm_xxx functions to CONFIG_PM_LEGACY, and include/linux/pm_legacy.h. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/pm_legacy.h')
-rw-r--r--include/linux/pm_legacy.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/include/linux/pm_legacy.h b/include/linux/pm_legacy.h
new file mode 100644
index 000000000000..1252b45face1
--- /dev/null
+++ b/include/linux/pm_legacy.h
@@ -0,0 +1,56 @@
+#ifndef __LINUX_PM_LEGACY_H__
+#define __LINUX_PM_LEGACY_H__
+
+#include <linux/config.h>
+
+#ifdef CONFIG_PM_LEGACY
+
+extern int pm_active;
+
+#define PM_IS_ACTIVE() (pm_active != 0)
+
+/*
+ * Register a device with power management
+ */
+struct pm_dev __deprecated *
+pm_register(pm_dev_t type, unsigned long id, pm_callback callback);
+
+/*
+ * Unregister a device with power management
+ */
+void __deprecated pm_unregister(struct pm_dev *dev);
+
+/*
+ * Unregister all devices with matching callback
+ */
+void __deprecated pm_unregister_all(pm_callback callback);
+
+/*
+ * Send a request to all devices
+ */
+int __deprecated pm_send_all(pm_request_t rqst, void *data);
+
+#else /* CONFIG_PM_LEGACY */
+
+#define PM_IS_ACTIVE() 0
+
+static inline struct pm_dev *pm_register(pm_dev_t type,
+ unsigned long id,
+ pm_callback callback)
+{
+ return NULL;
+}
+
+static inline void pm_unregister(struct pm_dev *dev) {}
+
+static inline void pm_unregister_all(pm_callback callback) {}
+
+static inline int pm_send_all(pm_request_t rqst, void *data)
+{
+ return 0;
+}
+
+#endif /* CONFIG_PM_LEGACY */
+
+#endif /* __LINUX_PM_LEGACY_H__ */
+