diff options
author | Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> | 2011-06-10 10:18:28 -0400 |
---|---|---|
committer | Artem Bityutskiy <artem.bityutskiy@intel.com> | 2011-09-11 08:02:10 -0400 |
commit | c7975330154af17aecc167b33ca866b6b3d98918 (patch) | |
tree | b9895816b3f9bd53758410754ad1b1061986a8dd /drivers/mtd/redboot.c | |
parent | f722013ee9fd24623df31dec9a91a6d02c3e2f2f (diff) |
mtd: abstract last MTD partition parser argument
Encapsulate last MTD partition parser argument into a separate
structure. Currently it holds only 'origin' field for RedBoot parser,
but will be extended in future to contain at least device_node for OF
devices.
Amended commentary to make kerneldoc happy
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Artem Bityutskiy <dedekind1@gmail.com>
Diffstat (limited to 'drivers/mtd/redboot.c')
-rw-r--r-- | drivers/mtd/redboot.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/mtd/redboot.c b/drivers/mtd/redboot.c index 7a87d07cd79f..56e48ea7ff05 100644 --- a/drivers/mtd/redboot.c +++ b/drivers/mtd/redboot.c | |||
@@ -56,8 +56,8 @@ static inline int redboot_checksum(struct fis_image_desc *img) | |||
56 | } | 56 | } |
57 | 57 | ||
58 | static int parse_redboot_partitions(struct mtd_info *master, | 58 | static int parse_redboot_partitions(struct mtd_info *master, |
59 | struct mtd_partition **pparts, | 59 | struct mtd_partition **pparts, |
60 | unsigned long fis_origin) | 60 | struct mtd_part_parser_data *data) |
61 | { | 61 | { |
62 | int nrparts = 0; | 62 | int nrparts = 0; |
63 | struct fis_image_desc *buf; | 63 | struct fis_image_desc *buf; |
@@ -197,11 +197,10 @@ static int parse_redboot_partitions(struct mtd_info *master, | |||
197 | goto out; | 197 | goto out; |
198 | } | 198 | } |
199 | new_fl->img = &buf[i]; | 199 | new_fl->img = &buf[i]; |
200 | if (fis_origin) { | 200 | if (data && data->origin) |
201 | buf[i].flash_base -= fis_origin; | 201 | buf[i].flash_base -= data->origin; |
202 | } else { | 202 | else |
203 | buf[i].flash_base &= master->size-1; | 203 | buf[i].flash_base &= master->size-1; |
204 | } | ||
205 | 204 | ||
206 | /* I'm sure the JFFS2 code has done me permanent damage. | 205 | /* I'm sure the JFFS2 code has done me permanent damage. |
207 | * I now think the following is _normal_ | 206 | * I now think the following is _normal_ |