diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-07 12:11:16 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-07 12:11:16 -0500 |
commit | e0d65113a70f1dc514e625cc4e7a7485a4bf72df (patch) | |
tree | 7320a130dc304623f5cf4b5dd8f67fb1776225ca /drivers/mtd/redboot.c | |
parent | cf5e15fbd72c13977720aa15b7b7e00e1d8fd8f2 (diff) | |
parent | 48e546b7f281f251893baa40769581fd15f085fb (diff) |
Merge git://git.infradead.org/mtd-2.6
* git://git.infradead.org/mtd-2.6: (226 commits)
mtd: tests: annotate as DANGEROUS in Kconfig
mtd: tests: don't use mtd0 as a default
mtd: clean up usage of MTD_DOCPROBE_ADDRESS
jffs2: add compr=lzo and compr=zlib options
jffs2: implement mount option parsing and compression overriding
mtd: nand: initialize ops.mode
mtd: provide an alias for the redboot module name
mtd: m25p80: don't probe device which has status of 'disabled'
mtd: nand_h1900 never worked
mtd: Add DiskOnChip G3 support
mtd: m25p80: add EON flash EN25Q32B into spi flash id table
mtd: mark block device queue as non-rotational
mtd: r852: make r852_pm_ops static
mtd: m25p80: add support for at25df321a spi data flash
mtd: mxc_nand: preset_v1_v2: unlock all NAND flash blocks
mtd: nand: switch `check_pattern()' to standard `memcmp()'
mtd: nand: invalidate cache on unaligned reads
mtd: nand: do not scan bad blocks with NAND_BBT_NO_OOB set
mtd: nand: wait to set BBT version
mtd: nand: scrub BBT on ECC errors
...
Fix up trivial conflicts:
- arch/arm/mach-at91/board-usb-a9260.c
Merged into board-usb-a926x.c
- drivers/mtd/maps/lantiq-flash.c
add_mtd_partitions -> mtd_device_register vs changed to use
mtd_device_parse_register.
Diffstat (limited to 'drivers/mtd/redboot.c')
-rw-r--r-- | drivers/mtd/redboot.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/mtd/redboot.c b/drivers/mtd/redboot.c index 84b4dda023f4..e366b1d84ead 100644 --- a/drivers/mtd/redboot.c +++ b/drivers/mtd/redboot.c | |||
@@ -57,8 +57,8 @@ static inline int redboot_checksum(struct fis_image_desc *img) | |||
57 | } | 57 | } |
58 | 58 | ||
59 | static int parse_redboot_partitions(struct mtd_info *master, | 59 | static int parse_redboot_partitions(struct mtd_info *master, |
60 | struct mtd_partition **pparts, | 60 | struct mtd_partition **pparts, |
61 | unsigned long fis_origin) | 61 | struct mtd_part_parser_data *data) |
62 | { | 62 | { |
63 | int nrparts = 0; | 63 | int nrparts = 0; |
64 | struct fis_image_desc *buf; | 64 | struct fis_image_desc *buf; |
@@ -198,11 +198,10 @@ static int parse_redboot_partitions(struct mtd_info *master, | |||
198 | goto out; | 198 | goto out; |
199 | } | 199 | } |
200 | new_fl->img = &buf[i]; | 200 | new_fl->img = &buf[i]; |
201 | if (fis_origin) { | 201 | if (data && data->origin) |
202 | buf[i].flash_base -= fis_origin; | 202 | buf[i].flash_base -= data->origin; |
203 | } else { | 203 | else |
204 | buf[i].flash_base &= master->size-1; | 204 | buf[i].flash_base &= master->size-1; |
205 | } | ||
206 | 205 | ||
207 | /* I'm sure the JFFS2 code has done me permanent damage. | 206 | /* I'm sure the JFFS2 code has done me permanent damage. |
208 | * I now think the following is _normal_ | 207 | * I now think the following is _normal_ |
@@ -298,6 +297,9 @@ static struct mtd_part_parser redboot_parser = { | |||
298 | .name = "RedBoot", | 297 | .name = "RedBoot", |
299 | }; | 298 | }; |
300 | 299 | ||
300 | /* mtd parsers will request the module by parser name */ | ||
301 | MODULE_ALIAS("RedBoot"); | ||
302 | |||
301 | static int __init redboot_parser_init(void) | 303 | static int __init redboot_parser_init(void) |
302 | { | 304 | { |
303 | return register_mtd_parser(&redboot_parser); | 305 | return register_mtd_parser(&redboot_parser); |