arm_adi_v5: mem_ap_write error propagation
[fw/openocd] / src / target / startup.tcl
index d480f335dd0fbc09f7c6d1eff17bcd88378015e0..d68417e808efd135c5bb4d5d92ba55866effef68 100644 (file)
@@ -1,21 +1,9 @@
-#########
+# Defines basic Tcl procs for OpenOCD target module
 
-# This reset logic may be overridden by board/target/... scripts as needed
-# to provide a reset that, if possible, is close to a power-up reset.
-#
-# Exit requirements include:  (a) JTAG must be working, (b) the scan
-# chain was validated with "jtag arp_init" (or equivalent), (c) nothing
-# stays in reset.  No TAP-specific scans were performed.  It's OK if
-# some targets haven't been reset yet; they may need TAP-specific scans.
-#
-# The "mode" values include:  halt, init, run (from "reset" command);
-# startup (at OpenOCD server startup, when JTAG may not yet work); and
-# potentially more (for reset types like cold, warm, etc)
-proc init_reset { mode } {
-       jtag arp_init-reset
+proc new_target_name { } {
+       return [target number [expr [target count] - 1 ]]
 }
 
-
 global in_process_reset
 set in_process_reset 0
 
@@ -53,7 +41,7 @@ proc ocd_process_reset_inner { MODE } {
                set halt 0;
        }
        if { $halt < 0 } {
-               return -error "Invalid mode: $MODE, must be one of: halt, init, or run";
+               return -code error "Invalid mode: $MODE, must be one of: halt, init, or run";
        }
 
        # Target event handlers *might* change which TAPs are enabled
@@ -131,7 +119,7 @@ proc ocd_process_reset_inner { MODE } {
                        set s [$t curstate]
 
                        if { 0 != [string compare $s "halted" ] } {
-                               return -error [format "TARGET: %s - Not halted" $t]
+                               return -code error [format "TARGET: %s - Not halted" $t]
                        }
                }
        }