diff options
author | Andi Kleen <andi@firstfloor.org> | 2010-01-05 06:48:02 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-03-07 20:04:47 -0500 |
commit | 38457ab3a0d36320370c715145ba6da514127194 (patch) | |
tree | 0c3f729c450b18b439dc6ce7a1542d9e8d3dd8e3 /include/linux/sysdev.h | |
parent | 1c205ae18db53ff72985dd79f3baaf2dbaba6db7 (diff) |
sysfs: Add attribute array to sysdev classes
Add a attribute array that is automatically registered and unregistered
to struct sysdev_class. This is similar to what struct class has.
A lot of drivers add list of attributes, so it's better to do
this easily in the common sysdev layer.
This adds a new field to struct sysdev_class. I audited the
whole tree and there are no dynamically allocated sysdev classes,
so this is fully compatible.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux/sysdev.h')
-rw-r--r-- | include/linux/sysdev.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/sysdev.h b/include/linux/sysdev.h index c2458fa8376c..b6244f9b533f 100644 --- a/include/linux/sysdev.h +++ b/include/linux/sysdev.h | |||
@@ -27,10 +27,12 @@ | |||
27 | 27 | ||
28 | 28 | ||
29 | struct sys_device; | 29 | struct sys_device; |
30 | struct sysdev_class_attribute; | ||
30 | 31 | ||
31 | struct sysdev_class { | 32 | struct sysdev_class { |
32 | const char *name; | 33 | const char *name; |
33 | struct list_head drivers; | 34 | struct list_head drivers; |
35 | struct sysdev_class_attribute **attrs; | ||
34 | 36 | ||
35 | /* Default operations for these types of devices */ | 37 | /* Default operations for these types of devices */ |
36 | int (*shutdown)(struct sys_device *); | 38 | int (*shutdown)(struct sys_device *); |