From: Edgar Grimberg Date: Tue, 2 Feb 2010 12:17:26 +0000 (+0100) Subject: tcl/str7x: Reset init unlocks the flash X-Git-Tag: v0.4.0-rc2~22 X-Git-Url: https://review.openocd.org/gitweb?a=commitdiff_plain;h=cc440ca1d44f0aaaf34daa365966b7b092126913;p=openocd.git tcl/str7x: Reset init unlocks the flash For STR7x flash, the device cannot be queried for the protect status. The solution is to remove the protection on reset init. The driver also initialises the sector protect field to unprotected. [dbrownell@users.sourceforge.net: line length shrinkage] Signed-off-by: Edgar Grimberg Signed-off-by: David Brownell --- diff --git a/tcl/target/str730.cfg b/tcl/target/str730.cfg index 381fa5fcac..cab2338feb 100644 --- a/tcl/target/str730.cfg +++ b/tcl/target/str730.cfg @@ -34,7 +34,14 @@ set _TARGETNAME $_CHIPNAME.cpu target create $_TARGETNAME arm7tdmi -endian little -chain-position 0 -variant arm7tdmi $_TARGETNAME configure -event reset-start { jtag_khz 10 } -$_TARGETNAME configure -event reset-init { jtag_khz 3000 } +$_TARGETNAME configure -event reset-init { + jtag_khz 3000 + +# Because the hardware cannot be interrogated for the protection state +# of sectors, initialize all the sectors to be unprotected. The initial +# state is reflected by the driver, too. + flash protect 0 0 last off +} $_TARGETNAME configure -event gdb-flash-erase-start { flash protect 0 0 7 off } diff --git a/tcl/target/str750.cfg b/tcl/target/str750.cfg index 5df968bfc1..c467ae25b9 100644 --- a/tcl/target/str750.cfg +++ b/tcl/target/str750.cfg @@ -36,7 +36,15 @@ set _TARGETNAME $_CHIPNAME.cpu target create $_TARGETNAME arm7tdmi -endian little -chain-position 0 -variant arm7tdmi $_TARGETNAME configure -event reset-start { jtag_khz 10 } -$_TARGETNAME configure -event reset-init { jtag_khz 3000 } +$_TARGETNAME configure -event reset-init { + jtag_khz 3000 + +# Because the hardware cannot be interrogated for the protection state +# of sectors, initialize all the sectors to be unprotected. The initial +# state is reflected by the driver, too. + flash protect 0 0 last off + flash protect 1 0 last off +} $_TARGETNAME configure -event gdb-flash-erase-start { flash protect 0 0 7 off flash protect 1 0 1 off