summaryrefslogtreecommitdiff
path: root/include/linux/sysfs.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@penguin.transmeta.com>2002-10-30 00:25:56 -0800
committerLinus Torvalds <torvalds@penguin.transmeta.com>2002-10-30 00:25:56 -0800
commitdc85a09d313235fd1dab3adeeb2f79142475b49e (patch)
tree41750fef3d2517ae01a889b5110dae1fd626c5b4 /include/linux/sysfs.h
parent4c664ca51867c1d26d4a294db435584faad200e4 (diff)
parenta0e7d495df35797364092fedff52ec488ec702eb (diff)
Merge master.kernel.org:/home/davem/BK/net-2.5
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
Diffstat (limited to 'include/linux/sysfs.h')
-rw-r--r--include/linux/sysfs.h29
1 files changed, 11 insertions, 18 deletions
diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
index 6479902e1d20..7a46c9f0c308 100644
--- a/include/linux/sysfs.h
+++ b/include/linux/sysfs.h
@@ -11,19 +11,11 @@
struct driver_dir_entry;
struct attribute;
+struct kobject;
struct sysfs_ops {
- int (*open)(struct driver_dir_entry *);
- int (*close)(struct driver_dir_entry *);
- ssize_t (*show)(struct driver_dir_entry *, struct attribute *,char *, size_t, loff_t);
- ssize_t (*store)(struct driver_dir_entry *,struct attribute *,const char *, size_t, loff_t);
-};
-
-struct driver_dir_entry {
- char * name;
- struct dentry * dentry;
- mode_t mode;
- struct sysfs_ops * ops;
+ ssize_t (*show)(struct kobject *, struct attribute *,char *, size_t, loff_t);
+ ssize_t (*store)(struct kobject *,struct attribute *,const char *, size_t, loff_t);
};
struct attribute {
@@ -32,20 +24,21 @@ struct attribute {
};
extern int
-sysfs_create_dir(struct driver_dir_entry *, struct driver_dir_entry *);
+sysfs_create_dir(struct kobject *);
extern void
-sysfs_remove_dir(struct driver_dir_entry * entry);
+sysfs_remove_dir(struct kobject *);
extern int
-sysfs_create_file(struct attribute * attr,
- struct driver_dir_entry * parent);
+sysfs_create_file(struct kobject *, struct attribute *);
+
+extern void
+sysfs_remove_file(struct kobject *, struct attribute *);
extern int
-sysfs_create_symlink(struct driver_dir_entry * parent,
- char * name, char * target);
+sysfs_create_link(struct kobject * kobj, struct kobject * target, char * name);
extern void
-sysfs_remove_file(struct driver_dir_entry *, const char * name);
+sysfs_remove_link(struct kobject *, char * name);
#endif /* _SYSFS_H_ */