openocd/src/flash/nor
Jimmy 7901cf2124 flash/nor/stm32lx: fixed writes at high adapter speeds
The busy flag must be polled after each half-page write.
At low clock speeds, no issue is observed when the poll
is omitted, because the writes complete before the next
write begins. But at high clock speeds the subsequent
writes would overlap and cause the operation to fail.

The status polls are done on the target for efficiency,
since the half-pages are very small.

Change-Id: Ia1e9b4a6a71930549b3d84a902744ce6e596301b
Signed-off-by: Jimmy <nhminus@gmail.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/5598
Tested-by: jenkins
Reviewed-by: Jelle De Vleeschouwer
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-by: Andrzej Sierżęga <asier70@gmail.com>
2021-11-03 20:32:54 +00:00
..
aduc702x.c flash: rename CamelCase symbols 2021-07-02 17:09:47 +01:00
aducm360.c flash: use proper format with uint32_t 2020-09-05 17:12:32 +01:00
ambiqmicro.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
at91sam3.c openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
at91sam4.c openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
at91sam4l.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
at91sam7.c openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
at91samd.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
ath79.c flash/nor: improved API of flash_driver.info & fixed buffer overruns 2021-06-13 19:58:28 +01:00
atsame5.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
atsamv.c flash/nor/atsamv: fixed "maybe uninitialized" compiler warning 2021-08-14 13:28:54 +01:00
avrf.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
bluenrg-x.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
bluenrg-x.h bluenrg-x: simplyfied the driver 2020-03-07 15:31:09 +00:00
cc26xx.c openocd: fix Yoda conditions with checkpatch 2021-07-24 10:38:31 +01:00
cc26xx.h flash/nor: Add support for TI CC26xx/CC13xx flash 2018-06-15 20:06:25 +01:00
cc3220sf.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
cc3220sf.h flash/nor: Add support for TI CC3220SF internal flash 2018-06-06 15:38:25 +01:00
cfi.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
cfi.h flash/nor/cfi: fix CamelCase symbols in cfi_spansion_pri_ext 2021-07-02 17:08:40 +01:00
core.c openocd: remove NULL comparisons with checkpatch [2/2] 2021-07-24 10:38:11 +01:00
core.h openocd: fix doxygen parameters of functions 2021-01-13 11:33:53 +00:00
driver.h flash/nor: improved API of flash_driver.info & fixed buffer overruns 2021-06-13 19:58:28 +01:00
drivers.c flash/nor: add support for Nuvoton NPCX series flash 2021-09-02 06:42:54 +00:00
dsp5680xx_flash.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
efm32.c openocd: fix Yoda conditions with checkpatch 2021-07-24 10:38:31 +01:00
em357.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
esirisc_flash.c flash/nor: improved API of flash_driver.info & fixed buffer overruns 2021-06-13 19:58:28 +01:00
faux.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
fespi.c openocd: fix Yoda conditions with checkpatch 2021-07-24 10:38:31 +01:00
fm3.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
fm4.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
imp.h Flash, FRAM and EEPROM driver for STM32 QUAD-/OCTOSPI interface 2020-11-08 22:46:00 +00:00
jtagspi.c openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
kinetis_ke.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
kinetis.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
lpc288x.c flash: fix typos and duplicated words 2020-07-26 20:13:22 +01:00
lpc2000.c openocd: fix simple cases of Yoda condition 2021-07-20 14:55:24 +01:00
lpc2900.c openocd: fix simple cases of Yoda condition 2021-07-20 14:55:24 +01:00
lpcspifi.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
Makefile.am flash/nor: add support for Nuvoton NPCX series flash 2021-09-02 06:42:54 +00:00
max32xxx.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
mdr.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
mrvlqspi.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
msp432.c openocd: fix Yoda conditions with checkpatch 2021-07-24 10:38:31 +01:00
msp432.h flash: fix some minor typo 2021-05-22 10:06:32 +01:00
niietcm4.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
non_cfi.c flash/nor/cfi: fix CamelCase symbols in cfi_spansion_pri_ext 2021-07-02 17:08:40 +01:00
non_cfi.h Make #include guard naming consistent 2016-05-24 22:30:55 +01:00
npcx.c flash/nor: add support for Nuvoton NPCX series flash 2021-09-02 06:42:54 +00:00
nrf5.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
numicro.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
ocl.c flash/nor: Use proper data types in driver API 2020-07-07 05:23:54 +01:00
ocl.h flash: fix typos and duplicated words 2020-07-26 20:13:22 +01:00
pic32mx.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
psoc4.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
psoc5lp.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
psoc6.c flash/nor/psoc6: fix doxygen comment 2021-10-25 16:10:40 +00:00
renesas_rpchf.c flash: use proper format with uint32_t 2020-09-05 17:12:32 +01:00
rp2040.c tcl/board: add pico-debug support 2021-05-02 22:40:24 +01:00
sfdp.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
sfdp.h Flash, FRAM and EEPROM driver for STM32 QUAD-/OCTOSPI interface 2020-11-08 22:46:00 +00:00
sh_qspi.c flash/nor: improved API of flash_driver.info & fixed buffer overruns 2021-06-13 19:58:28 +01:00
sim3x.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
spi.c nor/spi.c: add N25Q032A flash chip 2020-08-02 10:47:29 +01:00
spi.h Flash, FRAM and EEPROM driver for STM32 QUAD-/OCTOSPI interface 2020-11-08 22:46:00 +00:00
stellaris.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
stm32f1x.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
stm32f2x.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
stm32h7x.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
stm32l4x.c helper: Remove src/helper from include dirs 2021-10-02 13:18:15 +00:00
stm32l4x.h flash/stm32l4x: fix flash programming in 64-bit hosts 2021-09-12 14:26:31 +00:00
stm32lx.c flash/nor/stm32lx: fixed writes at high adapter speeds 2021-11-03 20:32:54 +00:00
stmqspi.c armv7m.h: relax dependency from 'arm_adi_v5.h' 2021-09-25 12:59:12 +00:00
stmqspi.h flash/stmqspi: minor fixes on coding style 2020-11-15 21:04:29 +00:00
stmsmi.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
str7x.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
str9x.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
str9xpec.c openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
swm050.c openocd: fix simple cases of Yoda condition 2021-07-20 14:55:24 +01:00
tcl.c flash/nor/tcl: 'flash list' command: add the flash bank target 2021-09-04 07:26:10 +00:00
tms470.c openocd: fix Yoda conditions with checkpatch 2021-07-24 10:38:31 +01:00
virtual.c openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
w600.c flash/nor: improved API of flash_driver.info & fixed buffer overruns 2021-06-13 19:58:28 +01:00
xcf.c openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
xmc1xxx.c flash/nor: Do not update 'is_erased' 2021-08-14 13:32:07 +01:00
xmc4xxx.c flash/xmc4xxx: use COMMAND_PARSE_NUMBER in command handlers 2021-08-22 13:18:52 +00:00