diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-07-14 16:05:52 -0700 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2015-02-20 00:49:37 +0000 |
commit | d4cf625cc1965ccf4433bce0bfb62c9d5c2ef436 (patch) | |
tree | ac0c333cdb004fb7ec8e4268c89d010725da45f4 /include/linux | |
parent | 0d189b4451f424bdb4296a0c791b9cd731bc317e (diff) | |
download | lwn-d4cf625cc1965ccf4433bce0bfb62c9d5c2ef436.tar.gz lwn-d4cf625cc1965ccf4433bce0bfb62c9d5c2ef436.zip |
sysfs.h: add ATTRIBUTE_GROUPS() macro
commit f2f37f58b1b933b06d6d84e80a31a1b500fb0db2 upstream.
To make it easier for driver subsystems to work with attribute groups,
create the ATTRIBUTE_GROUPS macro to remove some of the repetitive
typing for the most common use for attribute groups.
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>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'include/linux')
-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 dac0859e6440..2b9cd8d84e6c 100644 --- a/include/linux/sysfs.h +++ b/include/linux/sysfs.h @@ -80,6 +80,15 @@ struct attribute_group { #define __ATTR_NULL { .attr = { .name = NULL } } +#define ATTRIBUTE_GROUPS(name) \ +static const struct attribute_group name##_group = { \ + .attrs = name##_attrs, \ +}; \ +static const struct attribute_group *name##_groups[] = { \ + &name##_group, \ + NULL, \ +} + #define attr_name(_attr) (_attr).attr.name struct file; |