stm32lx: do not attempt mass-erase in-place of first bank erase
authorJussi Kivilinna <jussi.kivilinna@haltian.com>
Wed, 17 Dec 2014 10:14:32 +0000 (12:14 +0200)
committerSpencer Oliver <spen@spen-soft.co.uk>
Wed, 4 Feb 2015 22:02:59 +0000 (22:02 +0000)
Commit 832f0a5bfb439 'stm32: add mass erase support for STM32L' added
use of mass-erase in-place of bank-erase. This is triggered if first
bank is requested to be fully erased.

This erroneous action completely fails on STM32L162VEY (has 512 KiB
flash in two 256 KiB banks) and also unintently destroying contents of
EEPROM and second flash bank.

Change-Id: I0f13f7b0346747a09c755d72b5b95775ceff5a6f
Signed-off-by: Jussi Kivilinna <jussi.kivilinna@haltian.com>
Reviewed-on: http://openocd.zylin.com/2441
Reviewed-by: Paul Fertser <fercerpav@gmail.com>
Tested-by: jenkins
src/flash/nor/stm32lx.c

index db3897ba6609cf987a3cb44f7606ad3c1152641b..061ccb9e996256de044df03a64442403eb3b81f3 100644 (file)
@@ -307,9 +307,6 @@ static int stm32lx_erase(struct flash_bank *bank, int first, int last)
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       if ((first == 0) && (last == (bank->num_sectors - 1)))
-               return stm32lx_mass_erase(bank);
-
        /*
         * Loop over the selected sectors and erase them
         */