From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 From: Ben Hutchings To: linux-kernel@vger.kernel.org, stable@vger.kernel.org CC: akpm@linux-foundation.org, "Guenter Roeck" , "Greg Kroah-Hartman" Date: Tue, 17 Feb 2015 01:46:53 +0000 Message-ID: Subject: [PATCH 3.2 111/152] sysfs.h: add ATTRIBUTE_GROUPS() macro In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org List-ID: 3.2.67-rc1 review patch. If anyone has any objections, please let me know. ------------------ From: Greg Kroah-Hartman 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: Ben Hutchings --- include/linux/sysfs.h | 9 +++++++++ 1 file changed, 9 insertions(+) --- 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;