diff options
Diffstat (limited to 'drivers/mtd/maps/redwood.c')
-rw-r--r-- | drivers/mtd/maps/redwood.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/mtd/maps/redwood.c b/drivers/mtd/maps/redwood.c index ec8fdae1dd99..2257d2b500c0 100644 --- a/drivers/mtd/maps/redwood.c +++ b/drivers/mtd/maps/redwood.c | |||
@@ -126,6 +126,8 @@ static struct mtd_info *redwood_mtd; | |||
126 | 126 | ||
127 | int __init init_redwood_flash(void) | 127 | int __init init_redwood_flash(void) |
128 | { | 128 | { |
129 | int err = 0; | ||
130 | |||
129 | printk(KERN_NOTICE "redwood: flash mapping: %x at %x\n", | 131 | printk(KERN_NOTICE "redwood: flash mapping: %x at %x\n", |
130 | WINDOW_SIZE, WINDOW_ADDR); | 132 | WINDOW_SIZE, WINDOW_ADDR); |
131 | 133 | ||
@@ -141,11 +143,18 @@ int __init init_redwood_flash(void) | |||
141 | 143 | ||
142 | if (redwood_mtd) { | 144 | if (redwood_mtd) { |
143 | redwood_mtd->owner = THIS_MODULE; | 145 | redwood_mtd->owner = THIS_MODULE; |
144 | return add_mtd_partitions(redwood_mtd, | 146 | err = add_mtd_partitions(redwood_mtd, |
145 | redwood_flash_partitions, | 147 | redwood_flash_partitions, |
146 | NUM_REDWOOD_FLASH_PARTITIONS); | 148 | NUM_REDWOOD_FLASH_PARTITIONS); |
149 | if (err) { | ||
150 | printk("init_redwood_flash: add_mtd_partitions failed\n"); | ||
151 | iounmap(redwood_flash_map.virt); | ||
152 | } | ||
153 | return err; | ||
154 | |||
147 | } | 155 | } |
148 | 156 | ||
157 | iounmap(redwood_flash_map.virt); | ||
149 | return -ENXIO; | 158 | return -ENXIO; |
150 | } | 159 | } |
151 | 160 | ||