* [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro
2013-07-10 20:05 Driver core and sysfs changes for attribute groups Greg Kroah-Hartman
@ 2013-07-10 20:05 ` Greg Kroah-Hartman
0 siblings, 0 replies; 4+ messages in thread
From: Greg Kroah-Hartman @ 2013-07-10 20:05 UTC (permalink / raw)
To: linux-kernel; +Cc: oliver+list, linux, khali, Greg Kroah-Hartman
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.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
include/linux/sysfs.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
index 9cd20c8..f62ff01 100644
--- a/include/linux/sysfs.h
+++ b/include/linux/sysfs.h
@@ -94,6 +94,15 @@ struct attribute_group {
#define __ATTR_IGNORE_LOCKDEP __ATTR
#endif
+#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;
--
1.8.3.rc0.20.gb99dd2e
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro
@ 2013-07-10 22:48 Guenter Roeck
2013-07-10 22:57 ` Greg Kroah-Hartman
0 siblings, 1 reply; 4+ messages in thread
From: Guenter Roeck @ 2013-07-10 22:48 UTC (permalink / raw)
To: Greg Kroah-Hartman; +Cc: linux-kernel, oliver+list, khali
On Wed, Jul 10, 2013 at 01:05:10PM -0700, Greg Kroah-Hartman wrote:
> 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.
>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> ---
> include/linux/sysfs.h | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
> index 9cd20c8..f62ff01 100644
> --- a/include/linux/sysfs.h
> +++ b/include/linux/sysfs.h
> @@ -94,6 +94,15 @@ struct attribute_group {
> #define __ATTR_IGNORE_LOCKDEP __ATTR
> #endif
>
> +#define ATTRIBUTE_GROUPS(name) \
Would it be possible to add is_visible as additional argument ?
Thanks,
Guenter
> +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;
> --
> 1.8.3.rc0.20.gb99dd2e
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro
2013-07-10 22:48 [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro Guenter Roeck
@ 2013-07-10 22:57 ` Greg Kroah-Hartman
2013-07-10 23:09 ` Guenter Roeck
0 siblings, 1 reply; 4+ messages in thread
From: Greg Kroah-Hartman @ 2013-07-10 22:57 UTC (permalink / raw)
To: Guenter Roeck; +Cc: linux-kernel, oliver+list, khali
On Wed, Jul 10, 2013 at 03:48:56PM -0700, Guenter Roeck wrote:
> On Wed, Jul 10, 2013 at 01:05:10PM -0700, Greg Kroah-Hartman wrote:
> > 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.
> >
> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > ---
> > include/linux/sysfs.h | 9 +++++++++
> > 1 file changed, 9 insertions(+)
> >
> > diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
> > index 9cd20c8..f62ff01 100644
> > --- a/include/linux/sysfs.h
> > +++ b/include/linux/sysfs.h
> > @@ -94,6 +94,15 @@ struct attribute_group {
> > #define __ATTR_IGNORE_LOCKDEP __ATTR
> > #endif
> >
> > +#define ATTRIBUTE_GROUPS(name) \
>
> Would it be possible to add is_visible as additional argument ?
I thought about the other options (multiple groups, is_visible, and
bin_attrs), but those are almost all not the "normal" usage, so I figure
it's worth the extra 6 lines of text if you want to support is_visible
or binary attributes.
After converting all of the class code to use groups, it seems to match
up with the defaults, but if in the future it's more popular than
expected, I'll gladly add it.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro
2013-07-10 22:57 ` Greg Kroah-Hartman
@ 2013-07-10 23:09 ` Guenter Roeck
0 siblings, 0 replies; 4+ messages in thread
From: Guenter Roeck @ 2013-07-10 23:09 UTC (permalink / raw)
To: Greg Kroah-Hartman; +Cc: linux-kernel, oliver+list, khali
On Wed, Jul 10, 2013 at 03:57:30PM -0700, Greg Kroah-Hartman wrote:
> On Wed, Jul 10, 2013 at 03:48:56PM -0700, Guenter Roeck wrote:
> > On Wed, Jul 10, 2013 at 01:05:10PM -0700, Greg Kroah-Hartman wrote:
> > > 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.
> > >
> > > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > ---
> > > include/linux/sysfs.h | 9 +++++++++
> > > 1 file changed, 9 insertions(+)
> > >
> > > diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
> > > index 9cd20c8..f62ff01 100644
> > > --- a/include/linux/sysfs.h
> > > +++ b/include/linux/sysfs.h
> > > @@ -94,6 +94,15 @@ struct attribute_group {
> > > #define __ATTR_IGNORE_LOCKDEP __ATTR
> > > #endif
> > >
> > > +#define ATTRIBUTE_GROUPS(name) \
> >
> > Would it be possible to add is_visible as additional argument ?
>
> I thought about the other options (multiple groups, is_visible, and
> bin_attrs), but those are almost all not the "normal" usage, so I figure
> it's worth the extra 6 lines of text if you want to support is_visible
> or binary attributes.
>
Ok, fair enough.
Thanks,
Guenter
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-07-10 23:09 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-10 22:48 [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro Guenter Roeck
2013-07-10 22:57 ` Greg Kroah-Hartman
2013-07-10 23:09 ` Guenter Roeck
-- strict thread matches above, loose matches on Subject: below --
2013-07-10 20:05 Driver core and sysfs changes for attribute groups Greg Kroah-Hartman
2013-07-10 20:05 ` [PATCH 2/6] sysfs.h: add ATTRIBUTE_GROUPS() macro Greg Kroah-Hartman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox