X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=include%2Flinux%2Fsysfs.h;h=9d68fed50f119423904db7d7f608fd4baede5a82;hb=9a1607071c293e48b08bd703733480b1d55c7b93;hp=27bad59dae7946b7a5386cd5e5daeb2fe3ee5c4e;hpb=2850699c59d513a0cd0c68f60f75609a5f9d4d32;p=safe%2Fjmp%2Flinux-2.6 diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h index 27bad59..9d68fed 100644 --- a/include/linux/sysfs.h +++ b/include/linux/sysfs.h @@ -21,8 +21,9 @@ struct kobject; struct module; /* FIXME - * The *owner field is no longer used, but leave around - * until the tree gets cleaned up fully. + * The *owner field is no longer used. + * x86 tree has been cleaned up. The owner + * attribute is still left for other arches. */ struct attribute { const char *name; @@ -78,6 +79,8 @@ struct sysfs_ops { ssize_t (*store)(struct kobject *,struct attribute *,const char *, size_t); }; +struct sysfs_dirent; + #ifdef CONFIG_SYSFS int sysfs_schedule_callback(struct kobject *kobj, void (*func)(void *), @@ -101,6 +104,9 @@ void sysfs_remove_bin_file(struct kobject *kobj, struct bin_attribute *attr); int __must_check sysfs_create_link(struct kobject *kobj, struct kobject *target, const char *name); +int __must_check sysfs_create_link_nowarn(struct kobject *kobj, + struct kobject *target, + const char *name); void sysfs_remove_link(struct kobject *kobj, const char *name); int __must_check sysfs_create_group(struct kobject *kobj, @@ -114,9 +120,14 @@ int sysfs_add_file_to_group(struct kobject *kobj, void sysfs_remove_file_from_group(struct kobject *kobj, const struct attribute *attr, const char *group); -void sysfs_notify(struct kobject *kobj, char *dir, char *attr); - -extern int __must_check sysfs_init(void); +void sysfs_notify(struct kobject *kobj, const char *dir, const char *attr); +void sysfs_notify_dirent(struct sysfs_dirent *sd); +struct sysfs_dirent *sysfs_get_dirent(struct sysfs_dirent *parent_sd, + const unsigned char *name); +struct sysfs_dirent *sysfs_get(struct sysfs_dirent *sd); +void sysfs_put(struct sysfs_dirent *sd); +void sysfs_printk_last_file(void); +int __must_check sysfs_init(void); #else /* CONFIG_SYSFS */ @@ -180,18 +191,19 @@ static inline int sysfs_create_link(struct kobject *kobj, return 0; } -static inline void sysfs_remove_link(struct kobject *kobj, const char *name) +static inline int sysfs_create_link_nowarn(struct kobject *kobj, + struct kobject *target, + const char *name) { + return 0; } -static inline int sysfs_create_group(struct kobject *kobj, - const struct attribute_group *grp) +static inline void sysfs_remove_link(struct kobject *kobj, const char *name) { - return 0; } -static inline int sysfs_update_group(struct kobject *kobj, - const struct attribute_group *grp) +static inline int sysfs_create_group(struct kobject *kobj, + const struct attribute_group *grp) { return 0; } @@ -218,7 +230,24 @@ static inline void sysfs_remove_file_from_group(struct kobject *kobj, { } -static inline void sysfs_notify(struct kobject *kobj, char *dir, char *attr) +static inline void sysfs_notify(struct kobject *kobj, const char *dir, + const char *attr) +{ +} +static inline void sysfs_notify_dirent(struct sysfs_dirent *sd) +{ +} +static inline +struct sysfs_dirent *sysfs_get_dirent(struct sysfs_dirent *parent_sd, + const unsigned char *name) +{ + return NULL; +} +static inline struct sysfs_dirent *sysfs_get(struct sysfs_dirent *sd) +{ + return NULL; +} +static inline void sysfs_put(struct sysfs_dirent *sd) { } @@ -227,6 +256,10 @@ static inline int __must_check sysfs_init(void) return 0; } +static inline void sysfs_printk_last_file(void) +{ +} + #endif /* CONFIG_SYSFS */ #endif /* _SYSFS_H_ */