2018-01-22 23:18:13 +08:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0 */
|
2007-09-20 16:31:38 +08:00
|
|
|
/*
|
|
|
|
* fs/sysfs/sysfs.h - sysfs internal header file
|
|
|
|
*
|
|
|
|
* Copyright (c) 2001-3 Patrick Mochel
|
|
|
|
* Copyright (c) 2007 SUSE Linux Products GmbH
|
|
|
|
* Copyright (c) 2007 Tejun Heo <teheo@suse.de>
|
|
|
|
*/
|
|
|
|
|
2013-11-29 03:54:31 +08:00
|
|
|
#ifndef __SYSFS_INTERNAL_H
|
|
|
|
#define __SYSFS_INTERNAL_H
|
2009-09-10 02:25:37 +08:00
|
|
|
|
2013-11-29 03:54:31 +08:00
|
|
|
#include <linux/sysfs.h>
|
2007-06-14 03:27:24 +08:00
|
|
|
|
2007-09-20 15:05:10 +08:00
|
|
|
/*
|
|
|
|
* mount.c
|
|
|
|
*/
|
2013-12-12 03:11:53 +08:00
|
|
|
extern struct kernfs_node *sysfs_root_kn;
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2007-09-20 15:05:10 +08:00
|
|
|
/*
|
|
|
|
* dir.c
|
|
|
|
*/
|
2013-10-30 22:28:36 +08:00
|
|
|
extern spinlock_t sysfs_symlink_target_lock;
|
2007-09-20 15:05:10 +08:00
|
|
|
|
2013-12-12 03:11:53 +08:00
|
|
|
void sysfs_warn_dup(struct kernfs_node *parent, const char *name);
|
2007-09-20 15:05:10 +08:00
|
|
|
|
|
|
|
/*
|
|
|
|
* file.c
|
|
|
|
*/
|
2013-12-12 03:11:53 +08:00
|
|
|
int sysfs_add_file(struct kernfs_node *parent,
|
2013-11-29 03:54:23 +08:00
|
|
|
const struct attribute *attr, bool is_bin);
|
2013-12-12 03:11:53 +08:00
|
|
|
int sysfs_add_file_mode_ns(struct kernfs_node *parent,
|
2013-11-29 03:54:23 +08:00
|
|
|
const struct attribute *attr, bool is_bin,
|
2013-09-12 10:29:04 +08:00
|
|
|
umode_t amode, const void *ns);
|
2013-10-02 05:42:07 +08:00
|
|
|
|
2007-09-20 15:05:10 +08:00
|
|
|
/*
|
|
|
|
* symlink.c
|
|
|
|
*/
|
2013-12-12 03:11:53 +08:00
|
|
|
int sysfs_create_link_sd(struct kernfs_node *kn, struct kobject *target,
|
2013-01-26 04:51:13 +08:00
|
|
|
const char *name);
|
2013-11-29 03:54:31 +08:00
|
|
|
|
|
|
|
#endif /* __SYSFS_INTERNAL_H */
|