diff options
author | Artem Bityutskiy <artem.bityutskiy@linux.intel.com> | 2011-12-23 11:47:59 -0500 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2012-01-09 13:25:30 -0500 |
commit | 4ea1cabb926f03a8dbd6e3f064538d9a290ee9fd (patch) | |
tree | 9b29c19ae339c48e8fe36d859c95286061b3ac78 | |
parent | 855e5d8cfebc21f45c9446a88b61e29d94c03781 (diff) |
mtd: introduce mtd_read_user_prot_reg interface
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
-rw-r--r-- | drivers/mtd/mtdchar.c | 3 | ||||
-rw-r--r-- | drivers/mtd/mtdpart.c | 3 | ||||
-rw-r--r-- | include/linux/mtd/mtd.h | 10 |
3 files changed, 12 insertions, 4 deletions
diff --git a/drivers/mtd/mtdchar.c b/drivers/mtd/mtdchar.c index 002a8b5428cc..6aa3fb4a0292 100644 --- a/drivers/mtd/mtdchar.c +++ b/drivers/mtd/mtdchar.c | |||
@@ -217,7 +217,8 @@ static ssize_t mtdchar_read(struct file *file, char __user *buf, size_t count, | |||
217 | &retlen, kbuf); | 217 | &retlen, kbuf); |
218 | break; | 218 | break; |
219 | case MTD_FILE_MODE_OTP_USER: | 219 | case MTD_FILE_MODE_OTP_USER: |
220 | ret = mtd->read_user_prot_reg(mtd, *ppos, len, &retlen, kbuf); | 220 | ret = mtd_read_user_prot_reg(mtd, *ppos, len, |
221 | &retlen, kbuf); | ||
221 | break; | 222 | break; |
222 | case MTD_FILE_MODE_RAW: | 223 | case MTD_FILE_MODE_RAW: |
223 | { | 224 | { |
diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index bf1ab56afb8e..f018373ef3b4 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c | |||
@@ -152,8 +152,7 @@ static int part_read_user_prot_reg(struct mtd_info *mtd, loff_t from, | |||
152 | size_t len, size_t *retlen, u_char *buf) | 152 | size_t len, size_t *retlen, u_char *buf) |
153 | { | 153 | { |
154 | struct mtd_part *part = PART(mtd); | 154 | struct mtd_part *part = PART(mtd); |
155 | return part->master->read_user_prot_reg(part->master, from, | 155 | return mtd_read_user_prot_reg(part->master, from, len, retlen, buf); |
156 | len, retlen, buf); | ||
157 | } | 156 | } |
158 | 157 | ||
159 | static int part_get_user_prot_info(struct mtd_info *mtd, | 158 | static int part_get_user_prot_info(struct mtd_info *mtd, |
diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index ff0a3a18f397..855fb7fab697 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h | |||
@@ -198,13 +198,14 @@ struct mtd_info { | |||
198 | size_t len, size_t *retlen, u_char *buf); | 198 | size_t len, size_t *retlen, u_char *buf); |
199 | int (*get_user_prot_info) (struct mtd_info *mtd, struct otp_info *buf, | 199 | int (*get_user_prot_info) (struct mtd_info *mtd, struct otp_info *buf, |
200 | size_t len); | 200 | size_t len); |
201 | int (*read_user_prot_reg) (struct mtd_info *mtd, loff_t from, | ||
202 | size_t len, size_t *retlen, u_char *buf); | ||
201 | 203 | ||
202 | /* Backing device capabilities for this device | 204 | /* Backing device capabilities for this device |
203 | * - provides mmap capabilities | 205 | * - provides mmap capabilities |
204 | */ | 206 | */ |
205 | struct backing_dev_info *backing_dev_info; | 207 | struct backing_dev_info *backing_dev_info; |
206 | 208 | ||
207 | int (*read_user_prot_reg) (struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen, u_char *buf); | ||
208 | int (*write_user_prot_reg) (struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen, u_char *buf); | 209 | int (*write_user_prot_reg) (struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen, u_char *buf); |
209 | int (*lock_user_prot_reg) (struct mtd_info *mtd, loff_t from, size_t len); | 210 | int (*lock_user_prot_reg) (struct mtd_info *mtd, loff_t from, size_t len); |
210 | 211 | ||
@@ -353,6 +354,13 @@ static inline int mtd_get_user_prot_info(struct mtd_info *mtd, | |||
353 | return mtd->get_user_prot_info(mtd, buf, len); | 354 | return mtd->get_user_prot_info(mtd, buf, len); |
354 | } | 355 | } |
355 | 356 | ||
357 | static inline int mtd_read_user_prot_reg(struct mtd_info *mtd, loff_t from, | ||
358 | size_t len, size_t *retlen, | ||
359 | u_char *buf) | ||
360 | { | ||
361 | return mtd->read_user_prot_reg(mtd, from, len, retlen, buf); | ||
362 | } | ||
363 | |||
356 | static inline struct mtd_info *dev_to_mtd(struct device *dev) | 364 | static inline struct mtd_info *dev_to_mtd(struct device *dev) |
357 | { | 365 | { |
358 | return dev ? dev_get_drvdata(dev) : NULL; | 366 | return dev ? dev_get_drvdata(dev) : NULL; |