From: David B. <dbr...@us...> - 2009-10-15 00:18:22
|
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 1a9c531938e55c6b05c1d02a895a2300c7ac1a55 (commit) from 251b5efa04fd3a34f174c2ce91544c39391b4fbd (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 1a9c531938e55c6b05c1d02a895a2300c7ac1a55 Author: David Brownell <dbr...@us...> Date: Wed Oct 14 15:18:00 2009 -0700 doc updates to match "help" better This makes the documentation a closer match to "help" output: - "pathmove" somehow was not documented in the User's Guide - "jtag_nsrst_assert_width" and "jtag_ntrst_assert_width" are new; both needed descriptions. - Removed two undocumented and fairly useless script mechanisms: * production/production_info/production_test ... using it, requires replacing everything; so having it adds no value. * cpu ... way out of date; hopeless to keep that current Note that anyone using that "production" stuff already defines their own procedures, and can keep using them with no change. Signed-off-by: David Brownell <dbr...@us...> diff --git a/doc/openocd.texi b/doc/openocd.texi index fd4f9f7..6d33d56 100644 --- a/doc/openocd.texi +++ b/doc/openocd.texi @@ -2221,6 +2221,12 @@ needing to cope with both architecture and board specific constraints. @section Commands for Handling Resets +@deffn {Command} jtag_nsrst_assert_width milliseconds +Minimum amount of time (in milliseconds) OpenOCD should wait +after asserting nSRST (active-low system reset) before +allowing it to be deasserted. +@end deffn + @deffn {Command} jtag_nsrst_delay milliseconds How long (in milliseconds) OpenOCD should wait after deasserting nSRST (active-low system reset) before starting new JTAG operations. @@ -2228,6 +2234,12 @@ When a board has a reset button connected to SRST line it will probably have hardware debouncing, implying you should use this. @end deffn +@deffn {Command} jtag_ntrst_assert_width milliseconds +Minimum amount of time (in milliseconds) OpenOCD should wait +after asserting nTRST (active-low JTAG TAP reset) before +allowing it to be deasserted. +@end deffn + @deffn {Command} jtag_ntrst_delay milliseconds How long (in milliseconds) OpenOCD should wait after deasserting nTRST (active-low JTAG TAP reset) before starting new JTAG operations. @@ -6075,6 +6087,15 @@ TAP @code{post-reset} events are delivered to all TAPs with handlers for that event. @end deffn +@deffn Command {pathmove} start_state [next_state ...] +Start by moving to @var{start_state}, which +must be one of the @emph{stable} states. +Then, in a series of single state transitions +(conforming to the JTAG state machine) shift to +each @var{next_state} in sequence, one per TCK cycle. +The final state must also be stable. +@end deffn + @deffn Command {runtest} @var{num_cycles} Move to the @sc{run/idle} state, and execute at least @var{num_cycles} of the JTAG clock (TCK). @@ -6102,23 +6123,30 @@ Default is enabled. @cindex TAP state names The @var{tap_state} names used by OpenOCD in the @command{drscan}, -and @command{irscan} commands are: +@command{irscan}, and @command{pathmove} commands are the same +as those used in SVF boundary scan documents, except that some +versions of SVF use @sc{idle} instead of @sc{run/idle}. @itemize @bullet -@item @b{RESET} ... acts as if TRST were pulsed -@item @b{RUN/IDLE} ... don't assume this always means IDLE +@item @b{RESET} ... @emph{stable} (with TMS high); +acts as if TRST were pulsed +@item @b{RUN/IDLE} ... @emph{stable}; don't assume this always means IDLE @item @b{DRSELECT} @item @b{DRCAPTURE} -@item @b{DRSHIFT} ... TDI/TDO shifting through the data register +@item @b{DRSHIFT} ... @emph{stable}; TDI/TDO shifting +through the data register @item @b{DREXIT1} -@item @b{DRPAUSE} ... data register ready for update or more shifting +@item @b{DRPAUSE} ... @emph{stable}; data register ready +for update or more shifting @item @b{DREXIT2} @item @b{DRUPDATE} @item @b{IRSELECT} @item @b{IRCAPTURE} -@item @b{IRSHIFT} ... TDI/TDO shifting through the instruction register +@item @b{IRSHIFT} ... @emph{stable}; TDI/TDO shifting +through the instruction register @item @b{IREXIT1} -@item @b{IRPAUSE} ... instruction register ready for update or more shifting +@item @b{IRPAUSE} ... @emph{stable}; instruction register ready +for update or more shifting @item @b{IREXIT2} @item @b{IRUPDATE} @end itemize diff --git a/src/helper/startup.tcl b/src/helper/startup.tcl index b12d02b..2c90972 100644 --- a/src/helper/startup.tcl +++ b/src/helper/startup.tcl @@ -291,59 +291,10 @@ proc ocd_process_reset_inner { MODE } { } } -# stubs for targets scripts that do not have production procedure -proc production_info {} { - return "Imagine an explanation here..." -} -add_help_text production_info "Displays information on production procedure for target script. Implement this procedure in target script." - -proc production {firmwarefile serialnumber} { - puts "Imagine production procedure running successfully. Programmed $firmwarefile with serial number $serialnumber" -} - -add_help_text production "<serialnumber> - Runs production procedure. Throws exception if procedure failed. Prints progress messages. Implement this procedure in the target script." - -proc production_test {} { - puts "Imagine nifty test procedure having run to completion here." -} -add_help_text production_test "Runs test procedure. Throws exception if procedure failed. Prints progress messages. Implement in target script." - -add_help_text cpu "<name> - prints out target options and a comment on CPU which matches name" - -# A list of names of CPU and options required -set ocd_cpu_list { - { - name IXP42x - options {xscale -variant IXP42x} - comment {IXP42x cpu} - } - { - name arm7 - options {arm7tdmi -variant arm7tdmi} - comment {vanilla ARM7} - } -} - -# Invoked from Tcl code -proc ocd_cpu {args} { - set name $args - set result "" - global ocd_cpu_list - foreach a [lsort $ocd_cpu_list] { - if {[string length $args]==0||[string first [string toupper $name] [string toupper "$a(name)$a(options)$a(comment)"]]!=-1} { - lappend result $a - } - } - return $result -} +######### -proc cpu {args} { - # 0123456789012345678901234567890123456789012345678901234567890123456789 - puts "CPU Options Comment" - foreach a [lsort [ocd_cpu $args]] { - puts [format "%-20s%-40s%s" $a(name) $a(options) $a(comment)] - } -} +# REVISIT power_restore, power_dropout, srst_deasserted, srst_asserted +# are currently neither documented nor supported except on ZY1000. proc power_restore {} { puts "Sensed power restore." @@ -366,6 +317,8 @@ proc srst_asserted {} { puts "Sensed nSRST asserted." } +######### + # catch any exceptions, capture output and return output proc capture_catch {a} { catch { ----------------------------------------------------------------------- Summary of changes: doc/openocd.texi | 42 +++++++++++++++++++++++++++++------ src/helper/startup.tcl | 57 ++++------------------------------------------- 2 files changed, 40 insertions(+), 59 deletions(-) hooks/post-receive -- Main OpenOCD repository |