+# SPDX-License-Identifier: GPL-2.0-or-later
+
# ARM Debug Interface V5 (ADI_V5) utility
# ... Mostly for SWJ-DP (not SW-DP or JTAG-DP, since
# SW-DP and JTAG-DP targets don't need to switch based
# split out "chip" and "tag" so we can someday handle
# them more uniformly irlen too...)
+if [catch {transport select}] {
+ echo "Error: unable to select a session transport. Can't continue."
+ shutdown
+}
+
proc swj_newdap {chip tag args} {
-set tran [transport select]
-if [string equal $tran "jtag"] { eval jtag newtap $chip $tag $args}
-if [string equal $tran "swd"] { eval swd newdap $chip $tag $args }
+ if [using_jtag] {
+ eval jtag newtap $chip $tag $args
+ } elseif [using_swd] {
+ eval swd newdap $chip $tag $args
+ } else {
+ echo "Error: transport '[ transport select ]' not supported by swj_newdap"
+ shutdown
+ }
}