diff options
Diffstat (limited to 'drivers/mtd/spi-nor/spi-nor.c')
-rw-r--r-- | drivers/mtd/spi-nor/spi-nor.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c index 9407ca5f9443..3e54e31889c7 100644 --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c | |||
@@ -3250,12 +3250,14 @@ static int spi_nor_init_params(struct spi_nor *nor, | |||
3250 | memcpy(&sfdp_params, params, sizeof(sfdp_params)); | 3250 | memcpy(&sfdp_params, params, sizeof(sfdp_params)); |
3251 | memcpy(&prev_map, &nor->erase_map, sizeof(prev_map)); | 3251 | memcpy(&prev_map, &nor->erase_map, sizeof(prev_map)); |
3252 | 3252 | ||
3253 | if (spi_nor_parse_sfdp(nor, &sfdp_params)) | 3253 | if (spi_nor_parse_sfdp(nor, &sfdp_params)) { |
3254 | nor->addr_width = 0; | ||
3254 | /* restore previous erase map */ | 3255 | /* restore previous erase map */ |
3255 | memcpy(&nor->erase_map, &prev_map, | 3256 | memcpy(&nor->erase_map, &prev_map, |
3256 | sizeof(nor->erase_map)); | 3257 | sizeof(nor->erase_map)); |
3257 | else | 3258 | } else { |
3258 | memcpy(params, &sfdp_params, sizeof(*params)); | 3259 | memcpy(params, &sfdp_params, sizeof(*params)); |
3260 | } | ||
3259 | } | 3261 | } |
3260 | 3262 | ||
3261 | return 0; | 3263 | return 0; |