Merge branch 'i2c/for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa...
[platform/kernel/linux-rpi.git] / fs / sysfs / sysfs.h
1 /*
2  * fs/sysfs/sysfs.h - sysfs internal header file
3  *
4  * Copyright (c) 2001-3 Patrick Mochel
5  * Copyright (c) 2007 SUSE Linux Products GmbH
6  * Copyright (c) 2007 Tejun Heo <teheo@suse.de>
7  *
8  * This file is released under the GPLv2.
9  */
10
11 #ifndef __SYSFS_INTERNAL_H
12 #define __SYSFS_INTERNAL_H
13
14 #include <linux/sysfs.h>
15
16 /*
17  * mount.c
18  */
19 extern struct kernfs_node *sysfs_root_kn;
20
21 /*
22  * dir.c
23  */
24 extern spinlock_t sysfs_symlink_target_lock;
25
26 void sysfs_warn_dup(struct kernfs_node *parent, const char *name);
27
28 /*
29  * file.c
30  */
31 int sysfs_add_file(struct kernfs_node *parent,
32                    const struct attribute *attr, bool is_bin);
33 int sysfs_add_file_mode_ns(struct kernfs_node *parent,
34                            const struct attribute *attr, bool is_bin,
35                            umode_t amode, const void *ns);
36
37 /*
38  * symlink.c
39  */
40 int sysfs_create_link_sd(struct kernfs_node *kn, struct kobject *target,
41                          const char *name);
42
43 #endif  /* __SYSFS_INTERNAL_H */