diff options
author | akinobu.mita@gmail.com <akinobu.mita@gmail.com> | 2008-07-17 15:16:17 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-20 20:24:38 -0400 |
commit | fa7f28939634c2ea36817a0c3dbd8d84972c1488 (patch) | |
tree | 35ec91e26e03d1125b8dce2e2b7f0e549a7bd6dc | |
parent | a6a26a3e652671a783563f1e9697c68bd19c40fc (diff) |
zorro: use memory_read_from_buffer
zorro: use memory_read_from_buffer
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | drivers/zorro/zorro-sysfs.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/zorro/zorro-sysfs.c b/drivers/zorro/zorro-sysfs.c index 808b4f8675c5..3da712cc7708 100644 --- a/drivers/zorro/zorro-sysfs.c +++ b/drivers/zorro/zorro-sysfs.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/zorro.h> | 15 | #include <linux/zorro.h> |
16 | #include <linux/stat.h> | 16 | #include <linux/stat.h> |
17 | #include <linux/string.h> | 17 | #include <linux/string.h> |
18 | #include <linux/fs.h> | ||
18 | 19 | ||
19 | #include "zorro.h" | 20 | #include "zorro.h" |
20 | 21 | ||
@@ -56,12 +57,6 @@ static ssize_t zorro_read_config(struct kobject *kobj, | |||
56 | struct zorro_dev *z = to_zorro_dev(container_of(kobj, struct device, | 57 | struct zorro_dev *z = to_zorro_dev(container_of(kobj, struct device, |
57 | kobj)); | 58 | kobj)); |
58 | struct ConfigDev cd; | 59 | struct ConfigDev cd; |
59 | unsigned int size = sizeof(cd); | ||
60 | |||
61 | if (off > size) | ||
62 | return 0; | ||
63 | if (off+count > size) | ||
64 | count = size-off; | ||
65 | 60 | ||
66 | /* Construct a ConfigDev */ | 61 | /* Construct a ConfigDev */ |
67 | memset(&cd, 0, sizeof(cd)); | 62 | memset(&cd, 0, sizeof(cd)); |
@@ -71,8 +66,7 @@ static ssize_t zorro_read_config(struct kobject *kobj, | |||
71 | cd.cd_BoardAddr = (void *)zorro_resource_start(z); | 66 | cd.cd_BoardAddr = (void *)zorro_resource_start(z); |
72 | cd.cd_BoardSize = zorro_resource_len(z); | 67 | cd.cd_BoardSize = zorro_resource_len(z); |
73 | 68 | ||
74 | memcpy(buf, (void *)&cd+off, count); | 69 | return memory_read_from_buffer(buf, count, &off, &cd, sizeof(cd)); |
75 | return count; | ||
76 | } | 70 | } |
77 | 71 | ||
78 | static struct bin_attribute zorro_config_attr = { | 72 | static struct bin_attribute zorro_config_attr = { |