summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPatrick Mochel <mochel@hera.kernel.org>2002-04-03 03:26:07 -0800
committerPatrick Mochel <mochel@hera.kernel.org>2002-04-03 03:26:07 -0800
commit43f5feae00fc641f940a3f8e6e5e55c8dcbd9164 (patch)
tree7f4550bf49737e435014aeae11eab243c18c4c9b /include
parent5e4b50795ee8c7659a1181cea4c98712e02ea63e (diff)
parent450329de7e192d6ff2321139408176d0f11205f8 (diff)
Merge hera.kernel.org:/home/torvalds/BK/linux-2.5
into hera.kernel.org:/home/mochel/BK/linux-2.5
Diffstat (limited to 'include')
-rw-r--r--include/linux/device.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/linux/device.h b/include/linux/device.h
index 585dd1e57f8b..96d9cb108139 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -64,6 +64,7 @@ struct device_driver {
};
struct device {
+ struct list_head g_list; /* node in depth-first order list */
struct list_head node; /* node in sibling list */
struct list_head children;
struct device * parent;
@@ -99,6 +100,12 @@ list_to_dev(struct list_head *node)
return list_entry(node, struct device, node);
}
+static inline struct device *
+g_list_to_dev(struct list_head *g_list)
+{
+ return list_entry(g_list, struct device, g_list);
+}
+
/*
* High level routines for use by the bus drivers
*/
@@ -143,4 +150,13 @@ static inline void get_device(struct device * dev)
extern void put_device(struct device * dev);
+/* drivers/base/sys.c */
+extern int register_sys_device(struct device * dev);
+extern void unregister_sys_device(struct device * dev);
+
+/* drivers/base/power.c */
+extern int device_suspend(u32 state, u32 level);
+extern void device_resume(u32 level);
+extern void device_shutdown(void);
+
#endif /* _DEVICE_H_ */