From: ntfreak at B. <nt...@ma...> - 2008-12-06 11:48:50
|
Author: ntfreak Date: 2008-12-06 11:48:46 +0100 (Sat, 06 Dec 2008) New Revision: 1218 Modified: trunk/doc/openocd.texi Log: - update texi to describe str9xpec driver flow Modified: trunk/doc/openocd.texi =================================================================== --- trunk/doc/openocd.texi 2008-12-05 20:26:07 UTC (rev 1217) +++ trunk/doc/openocd.texi 2008-12-06 10:48:46 UTC (rev 1218) @@ -2080,7 +2080,7 @@ @option{enable_turbo} <@var{num>.} Only use this driver for locking/unlocking the device or configuring the option bytes. -Use the standard str9 driver for programming. +Use the standard str9 driver for programming. @xref{STR9 specific commands}. @subsubsection stellaris (LM3Sxxx) options @cindex stellaris (LM3Sxxx) options @@ -2140,6 +2140,7 @@ @subsection STR9 specific commands @cindex STR9 specific commands +@anchor{STR9 specific commands} These are flash specific commands when using the str9xpec driver. @itemize @bullet @item @b{str9xpec enable_turbo} <@var{num}> @@ -2164,6 +2165,43 @@ @*write str9 option bytes. @end itemize +Note: Before using the str9xpec driver here is some background info to help +you better understand how the drivers works. Openocd has two flash drivers for +the str9. +@enumerate +@item +Standard driver @option{str9x} programmed via the str9 core. Normally used for +flash programming as it is faster than the @option{str9xpec} driver. +@item +Direct programming @option{str9xpec} using the flash controller, this is +ISC compilant (IEEE 1532) tap connected in series with the str9 core. The str9 +core does not need to be running to program using this flash driver. Typical use +for this driver is locking/unlocking the target and programming the option bytes. +@end enumerate + +Before we run any cmds using the @option{str9xpec} driver we must first disable +the str9 core. This example assumes the @option{str9xpec} driver has been +configured for flash bank 0. +@example +# assert srst, we do not want core running +# while accessing str9xpec flash driver +jtag_reset 0 1 +# turn off target polling +poll off +# disable str9 core +str9xpec enable_turbo 0 +# read option bytes +str9xpec options_read 0 +# re-enable str9 core +str9xpec disable_turbo 0 +poll on +reset halt +@end example +The above example will read the str9 option bytes. +When performing a unlock remember that you will not be able to halt the str9 - it +has been locked. Halting the core is not required for the @option{str9xpec} driver +as mentioned above, just issue the cmds above manually or from a telnet prompt. + @subsection STR9 configuration @cindex STR9 configuration @itemize @bullet |