summaryrefslogtreecommitdiff
path: root/tcl/target/icepick.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'tcl/target/icepick.cfg')
-rw-r--r--tcl/target/icepick.cfg23
1 files changed, 23 insertions, 0 deletions
diff --git a/tcl/target/icepick.cfg b/tcl/target/icepick.cfg
new file mode 100644
index 00000000..0597a9a5
--- /dev/null
+++ b/tcl/target/icepick.cfg
@@ -0,0 +1,23 @@
+# Utilities for TI ICEpick-C ... used in DaVinci, OMAP3, and more.
+
+# jrc == TAP name for the ICEpick
+# port == a port number, 0..15
+proc icepick_c_tapenable {jrc port} {
+
+ # NOTE: it's important not to enter RUN/IDLE state until
+ # done sending these instructions and data to the ICEpick.
+ # And never to enter RESET, which will disable the TAPs.
+
+ # select router
+ irscan $jrc 7 -endstate IRPAUSE
+ drscan $jrc 8 0x89 -endstate DRPAUSE
+
+ # set ip control
+ irscan $jrc 2 -endstate IRPAUSE
+ drscan $jrc 32 [expr 0xa0002108 + ($port << 24)] -endstate DRPAUSE
+
+ irscan $jrc 0x3F -endstate RUN/IDLE
+ runtest 10
+}
+
+# vim:syntax tcl