From 531fbf0ef25e75884f2ade2acafcf010cb3d7d2a Mon Sep 17 00:00:00 2001 From: Spencer Oliver Date: Thu, 12 Jul 2012 12:25:10 +0100 Subject: [PATCH] flash: stm32l handle flash size read failure Rather than failing if the flash size reg cannot be read lets assume we have the max flash size fitted. It is quite common on early ST silicon to not correct support this register. Change-Id: Ife058d60ae0027faad2c929ebd5b7fe2ef27234d Signed-off-by: Spencer Oliver Reviewed-on: http://openocd.zylin.com/743 Tested-by: jenkins Reviewed-by: Andreas Fritiofson Reviewed-by: Freddie Chopin --- src/flash/nor/stm32lx.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/flash/nor/stm32lx.c b/src/flash/nor/stm32lx.c index 716517b1..38631440 100644 --- a/src/flash/nor/stm32lx.c +++ b/src/flash/nor/stm32lx.c @@ -476,8 +476,11 @@ static int stm32lx_probe(struct flash_bank *bank) /* get flash size from target. */ retval = target_read_u16(target, F_SIZE, &flash_size_in_kb); - if (retval != ERROR_OK) - return retval; + if (retval != ERROR_OK) { + LOG_WARNING("failed reading flash size, default to max target family"); + /* failed reading flash size, default to max target family */ + flash_size_in_kb = 0xffff; + } if ((device_id & 0xfff) == 0x416) { /* check for early silicon */ -- 2.39.5