flash/nor/stm32f2x: Fix erase of bank 2 sectors
commit29912328f07d562281e8a0db8855c8362afba546
authorSimon Johansson <ampleyfly@gmail.com>
Mon, 17 Jan 2022 12:30:59 +0000 (17 13:30 +0100)
committerTomas Vanek <vanekt@fbl.cz>
Fri, 25 Feb 2022 10:58:41 +0000 (25 10:58 +0000)
tree838ede55a6cec37ea2e6dfe27771b18395064336
parent94e7535be85a7bd5905dec68b6eae9a98aae0d7e
flash/nor/stm32f2x: Fix erase of bank 2 sectors

This commit corrects the erase function for stm32f2x when dealing with
sectors in bank 2, for STM32F42x/43x devices with 1MB flash.

On STM32F42x/43x with 1MB flash in dual bank configuration, the sector
numbering is not consecutive. The last sector in bank 1 is number 7, and
the first sector in bank 2 is number 12.
The sector indices used by openocd, however, _are_ consecutive (0 to 15
in this case). The arguments "first" and "last" to stm32x_erase() are of
this type, and so the logic surrounding sector numbers needed to be
corrected.
Since the two banks in dual bank mode have the same number of sectors, a
sector index in bank 2 is larger than or equal to half the total number
of sectors.

Change-Id: I15260f8a86d9002769a1ae1c40ebdf62142dae18
Signed-off-by: Simon Johansson <ampleyfly@gmail.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/6810
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
src/flash/nor/stm32f2x.c