diff options
author | Yani Ioannou <yani.ioannou@gmail.com> | 2005-05-17 06:39:34 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-06-20 18:15:31 -0400 |
commit | 54b6f35c99974e99e64c05c2895718355123c55f (patch) | |
tree | 321d08c397bc26b49c706ca5b86de7003c2329c0 | |
parent | ca2b94ba12f3c36fd3d6ed9d38b3798d4dad0d8b (diff) |
[PATCH] Driver core: change device_attribute callbacks
This patch adds the device_attribute paramerter to the
device_attribute store and show sysfs callback functions, and passes a
reference to the attribute when the callbacks are called.
Signed-off-by: Yani Ioannou <yani.ioannou@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/base/core.c | 4 | ||||
-rw-r--r-- | include/linux/device.h | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c index 1d8c7790b55a..86d79755fbfb 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c | |||
@@ -39,7 +39,7 @@ dev_attr_show(struct kobject * kobj, struct attribute * attr, char * buf) | |||
39 | ssize_t ret = -EIO; | 39 | ssize_t ret = -EIO; |
40 | 40 | ||
41 | if (dev_attr->show) | 41 | if (dev_attr->show) |
42 | ret = dev_attr->show(dev, buf); | 42 | ret = dev_attr->show(dev, dev_attr, buf); |
43 | return ret; | 43 | return ret; |
44 | } | 44 | } |
45 | 45 | ||
@@ -52,7 +52,7 @@ dev_attr_store(struct kobject * kobj, struct attribute * attr, | |||
52 | ssize_t ret = -EIO; | 52 | ssize_t ret = -EIO; |
53 | 53 | ||
54 | if (dev_attr->store) | 54 | if (dev_attr->store) |
55 | ret = dev_attr->store(dev, buf, count); | 55 | ret = dev_attr->store(dev, dev_attr, buf, count); |
56 | return ret; | 56 | return ret; |
57 | } | 57 | } |
58 | 58 | ||
diff --git a/include/linux/device.h b/include/linux/device.h index 91aac349b9a7..7b781a72b293 100644 --- a/include/linux/device.h +++ b/include/linux/device.h | |||
@@ -335,8 +335,10 @@ extern void driver_attach(struct device_driver * drv); | |||
335 | 335 | ||
336 | struct device_attribute { | 336 | struct device_attribute { |
337 | struct attribute attr; | 337 | struct attribute attr; |
338 | ssize_t (*show)(struct device * dev, char * buf); | 338 | ssize_t (*show)(struct device *dev, struct device_attribute *attr, |
339 | ssize_t (*store)(struct device * dev, const char * buf, size_t count); | 339 | char *buf); |
340 | ssize_t (*store)(struct device *dev, struct device_attribute *attr, | ||
341 | const char *buf, size_t count); | ||
340 | }; | 342 | }; |
341 | 343 | ||
342 | #define DEVICE_ATTR(_name,_mode,_show,_store) \ | 344 | #define DEVICE_ATTR(_name,_mode,_show,_store) \ |