aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTarek BOCHKATI <tarek.bouchkati@gmail.com>2022-02-24 15:18:53 +0100
committerAntonio Borneo <borneo.antonio@gmail.com>2022-03-12 09:44:31 +0000
commit6673f90e08ac7fb079403dfe7011779349559f0c (patch)
tree548f0f5f8c057c78694929946c15438ca1bbd212
parent6883567d5f734040a40c4b2c2d739fa432132cb2 (diff)
downloadriscv-openocd-6673f90e08ac7fb079403dfe7011779349559f0c.zip
riscv-openocd-6673f90e08ac7fb079403dfe7011779349559f0c.tar.gz
riscv-openocd-6673f90e08ac7fb079403dfe7011779349559f0c.tar.bz2
flash/stm32h7x: fix FLASH_WPSN_PRG mask used for protection
STM32H7Ax/7Bx devices have a different WPSN mask (0xFFFFFFFF), (0xFF for STM32H74x/75x and STM32H72x/73x devices). And when supporting STM32H7Ax/7Bx devices, stm32x_protect() was not updated accordingly. Change-Id: I081217af3e5ed815b67bfdfec7f4ebaa3152a865 Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com> Fixes: 0b7eca17691a (flash/stm32h7x: add support of STM32H7Ax/H7Bx devices) Reviewed-on: https://review.openocd.org/c/openocd/+/6858 Reviewed-by: Tomas Vanek <vanekt@fbl.cz> Tested-by: jenkins
-rw-r--r--src/flash/nor/stm32h7x.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/flash/nor/stm32h7x.c b/src/flash/nor/stm32h7x.c
index 6d3149f..d2914eb 100644
--- a/src/flash/nor/stm32h7x.c
+++ b/src/flash/nor/stm32h7x.c
@@ -531,6 +531,7 @@ static int stm32x_protect(struct flash_bank *bank, int set, unsigned int first,
unsigned int last)
{
struct target *target = bank->target;
+ struct stm32h7x_flash_bank *stm32x_info = bank->driver_priv;
uint32_t protection;
if (target->state != TARGET_HALTED) {
@@ -553,7 +554,7 @@ static int stm32x_protect(struct flash_bank *bank, int set, unsigned int first,
}
/* apply WRPSN mask */
- protection &= 0xff;
+ protection &= stm32x_info->part_info->wps_mask;
LOG_DEBUG("stm32x_protect, option_bytes written WPSN 0x%" PRIx32, protection);