summaryrefslogtreecommitdiff
path: root/tcl
diff options
context:
space:
mode:
authorDavid Brownell <dbrownell@users.sourceforge.net>2009-12-28 12:59:47 -0800
committerDavid Brownell <dbrownell@users.sourceforge.net>2009-12-28 12:59:47 -0800
commitec297e4bf10f7d903d8b5fc3237a7c6bbfa6273d (patch)
tree2a2d335051c93e753874b179797e802d79783235 /tcl
parentcba1813d5c017e2d20969bb419a856fe15c5ceef (diff)
downloadopenocd+libswd-ec297e4bf10f7d903d8b5fc3237a7c6bbfa6273d.tar.gz
openocd+libswd-ec297e4bf10f7d903d8b5fc3237a7c6bbfa6273d.tar.bz2
openocd+libswd-ec297e4bf10f7d903d8b5fc3237a7c6bbfa6273d.tar.xz
openocd+libswd-ec297e4bf10f7d903d8b5fc3237a7c6bbfa6273d.zip
Fix Luminary FT2232 layout docs/configs
Most of this patch updates documentation and comments for various Luminary boards, supporting two bug fixes by helping to make sense of the current mess: - Recent rev C lm3s811 eval boards didn't work. They must use the ICDI layout, which sets up some signals that the older boards didn't need. This is actually safe and appropriate for *all* recent boards ... so just make "luminary.cfg" use the ICDI layout. - "luminary-lm3s811.cfg", was previously unusable! No VID/PID; and the wrong vendor string. Make it work, but reserve it for older boards where the ICDI layout is wrong. - Default the LM3748 eval board to "luminary.cfg", like the other boards. If someone uses an external JTAG adapter, all boards will use the same workaround (override that default). The difference between the two FT2232 layouts is that eventually the EVB layout will fail cleanly when asked to enable SWO trace, but the ICDI layout will as cleanly be able to enable it. Folk using "luminary.cfg" with Rev B boards won't see anything going wrong until SWO support is (someday) added. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Diffstat (limited to 'tcl')
-rw-r--r--tcl/board/ek-lm3s3748.cfg4
-rw-r--r--tcl/interface/luminary-icdi.cfg5
-rw-r--r--tcl/interface/luminary-lm3s811.cfg10
-rw-r--r--tcl/interface/luminary.cfg26
4 files changed, 39 insertions, 6 deletions
diff --git a/tcl/board/ek-lm3s3748.cfg b/tcl/board/ek-lm3s3748.cfg
index 950e5119..7613a0ad 100644
--- a/tcl/board/ek-lm3s3748.cfg
+++ b/tcl/board/ek-lm3s3748.cfg
@@ -1,8 +1,8 @@
# Stellaris lm3s3748 Evaluation Kit
# http://www.luminarymicro.com/products/lm3s3748_usb_h_d_evaluation_kits.html
-# NOTE: to use the on-board FT2232 JTAG interface:
-# source [find interface/luminary.cfg]
+# NOTE: using the on-board FT2232 JTAG/SWD/SWO interface is optional!
+source [find interface/luminary.cfg]
source [find target/stellaris.cfg]
diff --git a/tcl/interface/luminary-icdi.cfg b/tcl/interface/luminary-icdi.cfg
index 04330a16..ec772562 100644
--- a/tcl/interface/luminary-icdi.cfg
+++ b/tcl/interface/luminary-icdi.cfg
@@ -2,6 +2,11 @@
# Luminary Micro Stellaris LM3S9B9x Evaluation Kits
# In-Circuit Debug Interface (ICDI) Board
#
+# This is a discrete FT2232 based debug board which supports ARM's
+# JTAG/SWD connectors in both backwards-compatible 20-pin format and
+# in the new-style compact 10-pin. There's also an 8-pin connector
+# with serial port support. It's included with LM3S9B9x eval boards.
+#
# http://www.luminarymicro.com/products/ek-lm3s9b90.html
# http://www.luminarymicro.com/products/ek-lm3s9b92.html
#
diff --git a/tcl/interface/luminary-lm3s811.cfg b/tcl/interface/luminary-lm3s811.cfg
index 3d4b9760..4c1accde 100644
--- a/tcl/interface/luminary-lm3s811.cfg
+++ b/tcl/interface/luminary-lm3s811.cfg
@@ -3,8 +3,16 @@
#
# http://www.luminarymicro.com/products/stellaris_811_evaluation_kits.html
#
+# NOTE: this is only for boards *before* Rev C, which adds support
+# for SWO tracing with ADBUS_6 DBG_ENn and BDBUS_4 SWO_EN signals.
+# The "evb_lm3s811" layout doesn't set up those signals.
+#
+# Rev C boards work more like the other Stellaris eval boards. They
+# need to use the "luminary_icdi" layout to work correctly.
+#
interface ft2232
-ft2232_device_desc "LM3S811 Evaluation Board"
+ft2232_device_desc "Stellaris Evaluation Board"
ft2232_layout evb_lm3s811
+ft2232_vid_pid 0x0403 0xbcd9
diff --git a/tcl/interface/luminary.cfg b/tcl/interface/luminary.cfg
index c86dbb6e..e94e5149 100644
--- a/tcl/interface/luminary.cfg
+++ b/tcl/interface/luminary.cfg
@@ -1,11 +1,31 @@
#
-# Luminary Micro Stellaris LM3S811 Evaluation Kit
+# Luminary Micro Stellaris Evaluation Kits
#
-# http://www.luminarymicro.com/products/stellaris_811_evaluation_kits.html
+# http://www.luminarymicro.com/products/evaluation_kits.html
+#
+# There are a number of evaluation kits for Stellaris Cortex-M3 chips.
+# Currently they all bundle FT2232 based debug support. When that is
+# used (instead of an external adapter), use this config file in one
+# of these two modes:
+#
+# - Eval board debug ... debug of the Stellaris chip via port A.
+#
+# - Other board debug ... same thing, but the board acts as a debug
+# adapter for another board (using a standard ARM JTAG connector).
+# The Stellaris chip stays in reset.
+#
+# Those support both JTAG and SWD. SWD is an ARM-only two-wire debug
+# protocol; in 2009, OpenOCD does not support SWD.
+#
+# Port B of the FT2232 chip is normally used as a serial link to the
+# Stellaris chip. On most boards (but not older LM3S811 eval boards),
+# when SWD is used Port B may instead be used to read low-bandwidth
+# "SWO trace" data, including so-called "printf style" output from
+# firmware via the ITM module as well as profile data.
#
interface ft2232
ft2232_device_desc "Stellaris Evaluation Board"
-ft2232_layout evb_lm3s811
+ft2232_layout luminary_icdi
ft2232_vid_pid 0x0403 0xbcd9