diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-07-14 16:05:53 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-07-16 10:57:36 -0700 |
commit | e4b63603c2a1e2c4db3de11b0f2b17360a7695bb (patch) | |
tree | 06747806edc1c0e5c8510091300e5f5fcbd4b170 /include | |
parent | f2f37f58b1b933b06d6d84e80a31a1b500fb0db2 (diff) |
sysfs.h: add BIN_ATTR macro
This makes it easier to create static binary attributes, which is needed
in a number of drivers, instead of "open coding" them.
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/sysfs.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h index f62ff01e5f5..d50a96b9bb6 100644 --- a/include/linux/sysfs.h +++ b/include/linux/sysfs.h @@ -132,6 +132,15 @@ struct bin_attribute { */ #define sysfs_bin_attr_init(bin_attr) sysfs_attr_init(&(bin_attr)->attr) +/* macro to create static binary attributes easier */ +#define BIN_ATTR(_name, _mode, _read, _write, _size) \ +struct bin_attribute bin_attr_##_name = { \ + .attr = {.name = __stringify(_name), .mode = _mode }, \ + .read = _read, \ + .write = _write, \ + .size = _size, \ +} + struct sysfs_ops { ssize_t (*show)(struct kobject *, struct attribute *,char *); ssize_t (*store)(struct kobject *,struct attribute *,const char *, size_t); |