From: Greg Kroah-Hartman Date: Sun, 14 Jul 2013 23:05:52 +0000 (-0700) Subject: sysfs.h: add ATTRIBUTE_GROUPS() macro X-Git-Tag: v3.4.107~74 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aa12b754cfbd5b5c900d43a6a215b096d8afc0ee;p=thirdparty%2Fkernel%2Fstable.git 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 Tested-by: Guenter Roeck Signed-off-by: Greg Kroah-Hartman Signed-off-by: Zefan Li --- diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h index 0010009b2f001..caf2e56bdf21b 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;