aboutsummaryrefslogtreecommitdiff
path: root/tcl
diff options
context:
space:
mode:
Diffstat (limited to 'tcl')
-rw-r--r--tcl/board/ek-lm4f120xl.cfg15
-rw-r--r--tcl/board/ek-lm4f232.cfg10
-rw-r--r--tcl/interface/ti-icdi.cfg15
-rw-r--r--tcl/target/stellaris_icdi.cfg34
4 files changed, 70 insertions, 4 deletions
diff --git a/tcl/board/ek-lm4f120xl.cfg b/tcl/board/ek-lm4f120xl.cfg
new file mode 100644
index 00000000..aa6935c9
--- /dev/null
+++ b/tcl/board/ek-lm4f120xl.cfg
@@ -0,0 +1,15 @@
+#
+# TI Stellaris Launchpad ek-lm4f120xl Evaluation Kits
+#
+# http://www.ti.com/tool/ek-lm4f120xl
+#
+
+#
+# NOTE: using the bundled ICDI interface is optional!
+# This interface is not ftdi based as previous boards were
+#
+source [find interface/ti-icdi.cfg]
+
+set WORKAREASIZE 0x8000
+set CHIPNAME lm4f120h5qr
+source [find target/stellaris_icdi.cfg]
diff --git a/tcl/board/ek-lm4f232.cfg b/tcl/board/ek-lm4f232.cfg
index 6e3f8e31..ebbc01d3 100644
--- a/tcl/board/ek-lm4f232.cfg
+++ b/tcl/board/ek-lm4f232.cfg
@@ -4,10 +4,12 @@
# http://www.ti.com/tool/ek-lm4f232
#
-# NOTE: using the bundled FT2232 JTAG/SWD/SWO interface is optional!
-# so is using in JTAG mode, as done here.
-source [find interface/luminary-icdi.cfg]
+#
+# NOTE: using the bundled ICDI interface is optional!
+# This interface is not ftdi based as previous boards were
+#
+source [find interface/ti-icdi.cfg]
set WORKAREASIZE 0x8000
set CHIPNAME lm4f23x
-source [find target/stellaris.cfg]
+source [find target/stellaris_icdi.cfg]
diff --git a/tcl/interface/ti-icdi.cfg b/tcl/interface/ti-icdi.cfg
new file mode 100644
index 00000000..16a901e9
--- /dev/null
+++ b/tcl/interface/ti-icdi.cfg
@@ -0,0 +1,15 @@
+#
+# TI Stellaris In-Circuit Debug Interface (ICDI) Board
+#
+# This is the propriety ICDI interface used on newer boards such as
+# LM4F232 Evaluation Kit - http://www.ti.com/tool/ek-lm4f232
+# Stellaris Launchpad - http://www.ti.com/stellaris-launchpad
+# http://www.ti.com/tool/ek-lm4f232
+#
+
+interface hla
+hla_layout ti-icdi
+hla_vid_pid 0x1cbe 0x00fd
+
+# unused but set to disable warnings
+adapter_khz 1000
diff --git a/tcl/target/stellaris_icdi.cfg b/tcl/target/stellaris_icdi.cfg
new file mode 100644
index 00000000..11d57c26
--- /dev/null
+++ b/tcl/target/stellaris_icdi.cfg
@@ -0,0 +1,34 @@
+#
+# lm3s icdi pseudo target
+#
+
+if { [info exists CHIPNAME] } {
+ set _CHIPNAME $CHIPNAME
+} else {
+ set _CHIPNAME lm3s
+}
+
+# Work-area is a space in RAM used for flash programming
+# By default use 16kB
+if { [info exists WORKAREASIZE] } {
+ set _WORKAREASIZE $WORKAREASIZE
+} else {
+ set _WORKAREASIZE 0x4000
+}
+
+#
+# possible value are hla_jtag
+# currently swd is not supported
+#
+transport select hla_jtag
+
+# do not check id as icdi currently does not support it
+hla newtap $_CHIPNAME cpu -expected-id 0
+
+set _TARGETNAME $_CHIPNAME.cpu
+target create $_TARGETNAME hla_target -chain-position $_TARGETNAME
+
+$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0
+
+# flash configuration ... autodetects sizes, autoprobed
+flash bank $_CHIPNAME.flash stellaris 0 0 0 0 $_TARGETNAME