From: OpenOCD-Gerrit <ope...@us...> - 2022-11-15 21:34:19
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Main OpenOCD repository". The branch, master has been updated via 0d055602c3fcf81e42a3928328e763f80a73097b (commit) from 69391878535ec584a472475ee9767b6beaaa138c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 0d055602c3fcf81e42a3928328e763f80a73097b Author: Simon Smiganovski <sim...@fr...> Date: Wed Nov 9 16:32:26 2022 +0100 flash/nor/stm32f1x: adjust size of the flash loader buffer target_run_flash_async_algorithm expects the source_buffer to have at least 2 words reserved for read and write pointers in addition to the FIFO buffer. If the size of the data to be flashed is <= 8 bytes then the flash function will fail with "corrupted fifo read pointer" error. Ensure the allocated buffer is big enough to hold both FIFO buffer and read/write pointers. Change-Id: I09c22eaac517b8cfea8e0b463f5deb6b98afd267 Signed-off-by: Simon Smiganovski <sim...@fr...> Signed-off-by: Paul Fertser <fer...@gm...> Reviewed-on: https://review.openocd.org/c/openocd/+/7342 Tested-by: jenkins Reviewed-by: Tomas Vanek <va...@fb...> Reviewed-by: Antonio Borneo <bor...@gm...> diff --git a/src/flash/nor/stm32f1x.c b/src/flash/nor/stm32f1x.c index e882d7f79..ab1ef2aef 100644 --- a/src/flash/nor/stm32f1x.c +++ b/src/flash/nor/stm32f1x.c @@ -473,7 +473,7 @@ static int stm32x_write_block_async(struct flash_bank *bank, const uint8_t *buff /* memory buffer */ buffer_size = target_get_working_area_avail(target); - buffer_size = MIN(hwords_count * 2, MAX(buffer_size, 256)); + buffer_size = MIN(hwords_count * 2 + 8, MAX(buffer_size, 256)); /* Normally we allocate all available working area. * MIN shrinks buffer_size if the size of the written block is smaller. * MAX prevents using async algo if the available working area is smaller ----------------------------------------------------------------------- Summary of changes: src/flash/nor/stm32f1x.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- Main OpenOCD repository |