flash/nor: Do not update 'is_erased'
authorMarc Schink <dev@zapb.de>
Fri, 7 May 2021 10:02:23 +0000 (12:02 +0200)
committerAntonio Borneo <borneo.antonio@gmail.com>
Sat, 14 Aug 2021 12:32:07 +0000 (13:32 +0100)
Remove useless setting of the 'is_erased' flag after a flash
modification. Also, remove code that erroneously depends on
this flag.

Keep the flag for now since it is still used by the
erase_check() functionality.

See commit 07da3b3913dcb6b65564f4fe67c2f26032f180c0

Change-Id: Ia046905bc9e0cb2572145f19251c3e10c4e2d553
Signed-off-by: Marc Schink <dev@zapb.de>
Reviewed-on: http://openocd.zylin.com/6279
Tested-by: jenkins
Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
27 files changed:
src/flash/nor/ambiqmicro.c
src/flash/nor/at91sam4l.c
src/flash/nor/avrf.c
src/flash/nor/cfi.c
src/flash/nor/dsp5680xx_flash.c
src/flash/nor/em357.c
src/flash/nor/fm3.c
src/flash/nor/fm4.c
src/flash/nor/kinetis_ke.c
src/flash/nor/max32xxx.c
src/flash/nor/mdr.c
src/flash/nor/niietcm4.c
src/flash/nor/numicro.c
src/flash/nor/pic32mx.c
src/flash/nor/psoc4.c
src/flash/nor/psoc6.c
src/flash/nor/stellaris.c
src/flash/nor/stm32f1x.c
src/flash/nor/stm32f2x.c
src/flash/nor/stm32h7x.c
src/flash/nor/stm32l4x.c
src/flash/nor/stm32lx.c
src/flash/nor/stmqspi.c
src/flash/nor/str7x.c
src/flash/nor/str9x.c
src/flash/nor/xmc1xxx.c
src/flash/nor/xmc4xxx.c

index 684d21de0591582c49699e1d7db62a1d18317be3..6eda9286c137c5087a14e7deba495b05f459e121 100644 (file)
@@ -777,13 +777,9 @@ COMMAND_HANDLER(ambiqmicro_handle_mass_erase_command)
        if (retval != ERROR_OK)
                return retval;
 
-       if (ambiqmicro_mass_erase(bank) == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (ambiqmicro_mass_erase(bank) == ERROR_OK)
                command_print(CMD, "ambiqmicro mass erase complete");
-       else
+       else
                command_print(CMD, "ambiqmicro mass erase failed");
 
        return ERROR_OK;
index d09414cbe771a78169f30291a97fb9ffee8a32a5..f8c6f6490644c384cc2375ff9427116a952230d3 100644 (file)
@@ -480,9 +480,6 @@ static int sam4l_erase(struct flash_bank *bank, unsigned int first,
                                        return ERROR_FAIL;
                                }
                        }
-
-                       /* This sector is definitely erased. */
-                       bank->sectors[i].is_erased = 1;
                }
        }
 
index a5a2cbd5b60131d95ae6d935d759bf15c1f746f1..634f7396a8e9e236a3221f18f60b463540ce7af5 100644 (file)
@@ -438,13 +438,9 @@ COMMAND_HANDLER(avrf_handle_mass_erase_command)
        if (retval != ERROR_OK)
                return retval;
 
-       if (avrf_mass_erase(bank) == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (avrf_mass_erase(bank) == ERROR_OK)
                command_print(CMD, "avr mass erase complete");
-       else
+       else
                command_print(CMD, "avr mass erase failed");
 
        LOG_DEBUG("%s", __func__);
index 830d3e36942b23ad2a2a5229cbee8b16b6fe6c14..e3fb6c8ff82a7f93999c9c6df6147155de68b1cb 100644 (file)
@@ -870,9 +870,7 @@ static int cfi_intel_erase(struct flash_bank *bank, unsigned int first,
                if (retval != ERROR_OK)
                        return retval;
 
-               if (status == 0x80)
-                       bank->sectors[i].is_erased = 1;
-               else {
+               if (status != 0x80) {
                        retval = cfi_send_command(bank, 0xff, cfi_flash_address(bank, 0, 0x0));
                        if (retval != ERROR_OK)
                                return retval;
@@ -927,9 +925,7 @@ static int cfi_spansion_erase(struct flash_bank *bank, unsigned int first,
                if (retval != ERROR_OK)
                        return retval;
 
-               if (cfi_spansion_wait_status_busy(bank, cfi_info->block_erase_timeout) == ERROR_OK)
-                       bank->sectors[i].is_erased = 1;
-               else {
+               if (cfi_spansion_wait_status_busy(bank, cfi_info->block_erase_timeout) != ERROR_OK) {
                        retval = cfi_send_command(bank, 0xf0, cfi_flash_address(bank, 0, 0x0));
                        if (retval != ERROR_OK)
                                return retval;
index 49022825ed1a76daa4d4bdb82336d44a87e71efc..5e8eec30fb0d313d231cfec41348a84e6d8a4b50 100644 (file)
@@ -130,15 +130,9 @@ static int dsp5680xx_flash_protect(struct flash_bank *bank, int set,
 
        if (set)
                retval = dsp5680xx_f_lock(bank->target);
-       else {
+       else
                retval = dsp5680xx_f_unlock(bank->target);
-               if (retval == ERROR_OK) {
-                       /* mark all as erased */
-                       for (int i = 0; i <= (HFM_SECTOR_COUNT - 1); i++)
-                               /* FM does not recognize it as erased if erased via JTAG. */
-                               bank->sectors[i].is_erased = 1;
-               }
-       }
+
        return retval;
 }
 
@@ -156,8 +150,6 @@ static int dsp5680xx_flash_protect(struct flash_bank *bank, int set,
 static int dsp5680xx_flash_write(struct flash_bank *bank, const uint8_t *buffer,
                                 uint32_t offset, uint32_t count)
 {
-       int retval;
-
        if ((offset + count / 2) > bank->size) {
                LOG_ERROR("%s: Flash bank cannot fit data.", __func__);
                return ERROR_FAIL;
@@ -171,17 +163,7 @@ static int dsp5680xx_flash_write(struct flash_bank *bank, const uint8_t *buffer,
                LOG_ERROR("%s: Writing to odd addresses not supported for this target", __func__);
                return ERROR_FAIL;
        }
-       retval = dsp5680xx_f_wr(bank->target, buffer, bank->base + offset / 2, count, 0);
-       uint32_t addr_word;
-
-       for (addr_word = bank->base + offset / 2; addr_word < count / 2;
-                       addr_word += (HFM_SECTOR_SIZE / 2)) {
-               if (retval == ERROR_OK)
-                       bank->sectors[addr_word / (HFM_SECTOR_SIZE / 2)].is_erased = 0;
-               else
-                       bank->sectors[addr_word / (HFM_SECTOR_SIZE / 2)].is_erased = -1;
-       }
-       return retval;
+       return dsp5680xx_f_wr(bank->target, buffer, bank->base + offset / 2, count, 0);
 }
 
 static int dsp5680xx_probe(struct flash_bank *bank)
@@ -206,22 +188,7 @@ static int dsp5680xx_probe(struct flash_bank *bank)
 static int dsp5680xx_flash_erase(struct flash_bank *bank, unsigned int first,
                unsigned int last)
 {
-       int retval;
-
-       retval = dsp5680xx_f_erase(bank->target, (uint32_t) first, (uint32_t) last);
-       if ((!(first | last)) || ((first == 0) && (last == (HFM_SECTOR_COUNT - 1))))
-               last = HFM_SECTOR_COUNT - 1;
-       if (retval == ERROR_OK)
-               for (unsigned int i = first; i <= last; i++)
-                       bank->sectors[i].is_erased = 1;
-       else
-               /**
-                * If an error occurred unknown status
-                *is set even though some sector could have been correctly erased.
-                */
-               for (unsigned int i = first; i <= last; i++)
-                       bank->sectors[i].is_erased = -1;
-       return retval;
+       return dsp5680xx_f_erase(bank->target, (uint32_t) first, (uint32_t) last);
 }
 
 /**
@@ -241,16 +208,14 @@ static int dsp5680xx_flash_erase_check(struct flash_bank *bank)
        uint32_t i;
 
        for (i = 0; i < HFM_SECTOR_COUNT; i++) {
-               if (bank->sectors[i].is_erased == -1) {
-                       retval = dsp5680xx_f_erase_check(bank->target, &erased, i);
-                       if (retval != ERROR_OK) {
-                               bank->sectors[i].is_erased = -1;
-                       } else {
-                               if (erased)
-                                       bank->sectors[i].is_erased = 1;
-                               else
-                                       bank->sectors[i].is_erased = 0;
-                       }
+               retval = dsp5680xx_f_erase_check(bank->target, &erased, i);
+               if (retval != ERROR_OK) {
+                       bank->sectors[i].is_erased = -1;
+               } else {
+                       if (erased)
+                               bank->sectors[i].is_erased = 1;
+                       else
+                               bank->sectors[i].is_erased = 0;
                }
        }
        return retval;
index 2597d8bebda922fe597a0a0dc15a5ce1257292b6..705c1b3399d93a4fdc04620f701ee58164ee315a 100644 (file)
@@ -382,8 +382,6 @@ static int em357_erase(struct flash_bank *bank, unsigned int first,
                retval = em357_wait_status_busy(bank, 100);
                if (retval != ERROR_OK)
                        return retval;
-
-               bank->sectors[i].is_erased = 1;
        }
 
        retval = target_write_u32(target, EM357_FLASH_CR, FLASH_LOCK);
@@ -877,13 +875,9 @@ COMMAND_HANDLER(em357_handle_mass_erase_command)
                return retval;
 
        retval = em357_mass_erase(bank);
-       if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (retval == ERROR_OK)
                command_print(CMD, "em357 mass erase complete");
-       else
+       else
                command_print(CMD, "em357 mass erase failed");
 
        return retval;
index dc7dd40be650680581defde96fbd67bb42fdab8b..831f34257163d28d5a606fec88466b5b28f22ec5 100644 (file)
@@ -328,7 +328,6 @@ static int fm3_erase(struct flash_bank *bank, unsigned int first,
                        if (retval != ERROR_OK)
                                return retval;
                }
-               bank->sectors[sector].is_erased = 1;
        }
 
        target_free_working_area(target, write_algorithm);
@@ -953,10 +952,6 @@ COMMAND_HANDLER(fm3_handle_chip_erase_command)
                return retval;
 
        if (fm3_chip_erase(bank) == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
                command_print(CMD, "fm3 chip erase complete");
        } else {
                command_print(CMD, "fm3 chip erase failed");
index 592ccb6033992971926c15cf9180c76f8c244067..09865d2ab77ff16bcae0ae4e4845af23012d088d 100644 (file)
@@ -177,8 +177,6 @@ static int fm4_flash_erase(struct flash_bank *bank, unsigned int first,
                        goto err_run_ret;
                } else
                        retval = ERROR_OK;
-
-               bank->sectors[sector].is_erased = 1;
        }
 
 err_run_ret:
index 0b5ba12a9a7fa97dc985ee9201907b3d0e11bf0d..513b072dde068692bbb7a02ff8166f52c6bf3ac2 100644 (file)
@@ -1000,8 +1000,6 @@ static int kinetis_ke_erase(struct flash_bank *bank, unsigned int first,
                        return ERROR_FLASH_OPERATION_FAILED;
                }
 
-               bank->sectors[i].is_erased = 1;
-
                if (i == 2)
                        fcf_erased = true;
        }
index 1327da6e11bea6299e1feb6c01e89eb664917697..d11af909463b48b60182bcc802c8b587403d2544 100644 (file)
@@ -302,8 +302,6 @@ static int max32xxx_erase(struct flash_bank *bank, unsigned int first,
                        max32xxx_flash_op_post(bank);
                        return ERROR_FLASH_OPERATION_FAILED;
                }
-
-               bank->sectors[banknr].is_erased = 1;
        }
 
        if (!erased) {
@@ -771,13 +769,9 @@ COMMAND_HANDLER(max32xxx_handle_mass_erase_command)
        if (retval != ERROR_OK)
                return retval;
 
-       if (max32xxx_mass_erase(bank) == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (max32xxx_mass_erase(bank) == ERROR_OK)
                command_print(CMD, "max32xxx mass erase complete");
-       else
+       else
                command_print(CMD, "max32xxx mass erase failed");
 
        return ERROR_OK;
index 228d4bcd5c099d4575b24a5bb9c100126f244662..f3c85525a1a315a0162a5da36b112a5b449de054 100644 (file)
@@ -197,7 +197,6 @@ static int mdr_erase(struct flash_bank *bank, unsigned int first,
                        if (retval != ERROR_OK)
                                goto reset_pg_and_lock;
                }
-               bank->sectors[i].is_erased = 1;
        }
 
 reset_pg_and_lock:
index b26680383b0b04a238aa3a5ed3c7ff6d86bf31ab..6f9a5d378e94b1184b588bc8d2299ced953ec4a2 100644 (file)
@@ -1206,8 +1206,6 @@ static int niietcm4_erase(struct flash_bank *bank, unsigned int first,
                retval = niietcm4_opstatus_check(bank);
                if (retval != ERROR_OK)
                        return retval;
-
-               bank->sectors[i].is_erased = 1;
        }
 
        return retval;
index ce3973b9f331a3764be399a1b8b886b018d51161..cb7c1df836f3605ab5c10f1da228f40c7efb4c39 100644 (file)
@@ -1532,8 +1532,6 @@ static int numicro_erase(struct flash_bank *bank, unsigned int first,
                        retval = target_write_u32(target, NUMICRO_FLASH_ISPCON, (status | ISPCON_ISPFF));
                        if (retval != ERROR_OK)
                                return retval;
-               } else {
-                       bank->sectors[i].is_erased = 1;
                }
        }
 
index a1f2cdf4ec3e8d8991dae7f9ad2e860d6368ea3e..31433e03fc1d33d79be9af4fd7049c592defafd9 100644 (file)
@@ -353,7 +353,6 @@ static int pic32mx_erase(struct flash_bank *bank, unsigned int first,
                        return ERROR_FLASH_OPERATION_FAILED;
                if (status & NVMCON_LVDERR)
                        return ERROR_FLASH_OPERATION_FAILED;
-               bank->sectors[i].is_erased = 1;
        }
 
        return ERROR_OK;
index 609d3b9dd583095c938e58a88d0f87e9e17b5bd8..0a2702ab5d3e13338ba15ea35619677dd4b42048 100644 (file)
@@ -520,16 +520,9 @@ static int psoc4_mass_erase(struct flash_bank *bank)
 
        /* Call "Erase All" system ROM API */
        uint32_t param = 0;
-       retval = psoc4_sysreq(bank, PSOC4_CMD_ERASE_ALL,
+       return psoc4_sysreq(bank, PSOC4_CMD_ERASE_ALL,
                        0,
                        &param, sizeof(param), NULL);
-
-       if (retval == ERROR_OK)
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
-       return retval;
 }
 
 
index c65411bb9cfb98ce85609ada2ca5e0c56d424e5d..b8b520237e61def82a22d2449e686e3b9f3b120f 100644 (file)
@@ -744,9 +744,6 @@ static int psoc6_erase(struct flash_bank *bank, unsigned int first,
                        if (hr != ERROR_OK)
                                goto exit_free_wa;
 
-                       for (unsigned int i = first; i < first + rows_in_sector; i++)
-                               bank->sectors[i].is_erased = 1;
-
                        first += rows_in_sector;
                } else {
                        /* Perform Row Erase otherwise */
@@ -754,7 +751,6 @@ static int psoc6_erase(struct flash_bank *bank, unsigned int first,
                        if (hr != ERROR_OK)
                                goto exit_free_wa;
 
-                       bank->sectors[first].is_erased = 1;
                        first += 1;
                }
        }
index 569c09b46915026c6112e2068d0a2b6c70ab1c2d..d2638c152dd9e5672314d7c7c24e8cf7d65b0f3e 100644 (file)
@@ -886,8 +886,6 @@ static int stellaris_erase(struct flash_bank *bank, unsigned int first,
                        target_write_u32(target, FLASH_CRIS, 0);
                        return ERROR_FLASH_OPERATION_FAILED;
                }
-
-               bank->sectors[banknr].is_erased = 1;
        }
 
        return ERROR_OK;
@@ -1318,13 +1316,9 @@ COMMAND_HANDLER(stellaris_handle_mass_erase_command)
        if (retval != ERROR_OK)
                return retval;
 
-       if (stellaris_mass_erase(bank) == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (stellaris_mass_erase(bank) == ERROR_OK)
                command_print(CMD, "stellaris mass erase complete");
-       else
+       else
                command_print(CMD, "stellaris mass erase failed");
 
        return ERROR_OK;
index afc6ec9b6c628638f3584534514ece61462b16b3..3bda9bc20b5b414834881d1590165ad8febd3546 100644 (file)
@@ -402,8 +402,6 @@ static int stm32x_erase(struct flash_bank *bank, unsigned int first,
                retval = stm32x_wait_status_busy(bank, FLASH_ERASE_TIMEOUT);
                if (retval != ERROR_OK)
                        return retval;
-
-               bank->sectors[i].is_erased = 1;
        }
 
        retval = target_write_u32(target, stm32x_get_flash_reg(bank, STM32_FLASH_CR), FLASH_LOCK);
@@ -1524,13 +1522,9 @@ COMMAND_HANDLER(stm32x_handle_mass_erase_command)
                return retval;
 
        retval = stm32x_mass_erase(bank);
-       if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (retval == ERROR_OK)
                command_print(CMD, "stm32x mass erase complete");
-       else
+       else
                command_print(CMD, "stm32x mass erase failed");
 
        return retval;
index c5adf0926eb25be47d53d3dae607cc67edd31d17..e80928ddf887f5ceb5490e029633ef165492df3d 100644 (file)
@@ -649,8 +649,6 @@ static int stm32x_erase(struct flash_bank *bank, unsigned int first,
                retval = stm32x_wait_status_busy(bank, FLASH_ERASE_TIMEOUT);
                if (retval != ERROR_OK)
                        return retval;
-
-               bank->sectors[i].is_erased = 1;
        }
 
        retval = target_write_u32(target, stm32x_get_flash_reg(bank, STM32_FLASH_CR), FLASH_LOCK);
@@ -1561,10 +1559,6 @@ COMMAND_HANDLER(stm32x_handle_mass_erase_command)
 
        retval = stm32x_mass_erase(bank);
        if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
                command_print(CMD, "stm32x mass erase complete");
        } else {
                command_print(CMD, "stm32x mass erase failed");
index 5c71d31f06653f30742dbc722b68846287f73571..89ba75dad8a34c2cd656cc9b430969c2cf9084e7 100644 (file)
@@ -512,7 +512,6 @@ static int stm32x_erase(struct flash_bank *bank, unsigned int first,
                        LOG_ERROR("erase time-out or operation error sector %u", i);
                        goto flash_lock;
                }
-               bank->sectors[i].is_erased = 1;
        }
 
 flash_lock:
@@ -1087,15 +1086,10 @@ COMMAND_HANDLER(stm32x_handle_mass_erase_command)
                return retval;
 
        retval = stm32x_mass_erase(bank);
-       if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (retval == ERROR_OK)
                command_print(CMD, "stm32h7x mass erase complete");
-       } else {
+       else
                command_print(CMD, "stm32h7x mass erase failed");
-       }
 
        return retval;
 }
index e6d3a8350bba59ae6c38c1ecf7fabb7e5ac4226c..7d6c900283b14eae3d91147a8f795c1092c4f479 100644 (file)
@@ -1002,8 +1002,6 @@ static int stm32l4_erase(struct flash_bank *bank, unsigned int first,
                retval = stm32l4_wait_status_busy(bank, FLASH_ERASE_TIMEOUT);
                if (retval != ERROR_OK)
                        break;
-
-               bank->sectors[i].is_erased = 1;
        }
 
 err_lock:
@@ -1713,15 +1711,10 @@ COMMAND_HANDLER(stm32l4_handle_mass_erase_command)
                return retval;
 
        retval = stm32l4_mass_erase(bank);
-       if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (retval == ERROR_OK)
                command_print(CMD, "stm32l4x mass erase complete");
-       } else {
+       else
                command_print(CMD, "stm32l4x mass erase failed");
-       }
 
        return retval;
 }
index 3bb986e1ca90fb22d8c1e989820d6a8ff39eca32..488dc978a54d42df00c434a7ec937005bb8248ba 100644 (file)
@@ -317,15 +317,10 @@ COMMAND_HANDLER(stm32lx_handle_mass_erase_command)
                return retval;
 
        retval = stm32lx_mass_erase(bank);
-       if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (unsigned int i = 0; i < bank->num_sectors; i++)
-                       bank->sectors[i].is_erased = 1;
-
+       if (retval == ERROR_OK)
                command_print(CMD, "stm32lx mass erase complete");
-       } else {
+       else
                command_print(CMD, "stm32lx mass erase failed");
-       }
 
        return retval;
 }
index f6a4934141b21c94f679fc716cb2d7bf6e16c470..0abd8449b782d6da5aa31422d919e6aa1ad9954b 100644 (file)
@@ -588,18 +588,13 @@ COMMAND_HANDLER(stmqspi_handle_mass_erase_command)
        retval = wait_till_ready(bank, SPI_MASS_ERASE_TIMEOUT);
 
        duration_measure(&bench);
-       if (retval == ERROR_OK) {
-               /* set all sectors as erased */
-               for (sector = 0; sector < bank->num_sectors; sector++)
-                       bank->sectors[sector].is_erased = 1;
-
+       if (retval == ERROR_OK)
                command_print(CMD, "stmqspi mass erase completed in %fs (%0.3f KiB/s)",
                        duration_elapsed(&bench),
                        duration_kbps(&bench, bank->size));
-       } else {
+       else
                command_print(CMD, "stmqspi mass erase not completed even after %fs",
                        duration_elapsed(&bench));
-       }
 
 err:
        /* Switch to memory mapped mode before return to prompt */
index 5f3ff0069ef7f15d46b2a8cb01c01d9e0fb090aa..9b977bf908775ae5fdf21e237ed64931c9c8866b 100644 (file)
@@ -376,9 +376,6 @@ static int str7x_erase(struct flash_bank *bank, unsigned int first,
        if (err != ERROR_OK)
                return err;
 
-       for (unsigned int i = first; i <= last; i++)
-               bank->sectors[i].is_erased = 1;
-
        return ERROR_OK;
 }
 
index 5c3a9cb2b7edbada8f8c0a195ed6eae032dddf8e..8f39d75fa5f591c02bcc457b709f3b1bf88fb3fe 100644 (file)
@@ -300,9 +300,6 @@ static int str9x_erase(struct flash_bank *bank, unsigned int first,
                        break;
        }
 
-       for (unsigned int i = first; i <= last; i++)
-               bank->sectors[i].is_erased = 1;
-
        return ERROR_OK;
 }
 
index a519ab864302d2bc177bde6ddd11bf81132c51c8..9e5f0a3ddd7ce2937ed07380b2eab62112e9bb9b 100644 (file)
@@ -141,9 +141,6 @@ static int xmc1xxx_erase(struct flash_bank *bank, unsigned int first,
                goto err_run;
        }
 
-       for (unsigned int sector = first; sector <= last; sector++)
-               bank->sectors[sector].is_erased = 1;
-
 err_run:
        for (i = 0; i < ARRAY_SIZE(reg_params); i++)
                destroy_reg_param(&reg_params[i]);
index 04734d10f9ff0b0cbc0acbb4232508983bcab3a3..bd37537ccd5547382b18b641be2b68c71ebeacd7 100644 (file)
@@ -577,8 +577,6 @@ static int xmc4xxx_erase(struct flash_bank *bank, unsigned int first,
 
                if (res != ERROR_OK)
                        goto clear_status_and_exit;
-
-               bank->sectors[i].is_erased = 1;
        }
 
 clear_status_and_exit: