Marcel Jost <marcel.jost@bfh.ch>:

This patch adds support for the Luminary Micro LM3S9B90 target and
LM3S9B92 Evaluation Kit.  These kits include a new ft2232 adapter, the
Luminary In-Circuit Debug Interface (ICDI) Board, so this is added as a
new ft2232 layout called "luminary_icdi".


git-svn-id: svn://svn.berlios.de/openocd/trunk@2429 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
zwelch 2009-06-30 09:09:30 +00:00
parent 0894ae214a
commit f130f95d45
5 changed files with 82 additions and 0 deletions

View File

@ -539,6 +539,8 @@ chips are starting to become available in JTAG adapters.
@* See: @url{http://www.signalyzer.com}
@item @b{evb_lm3s811}
@* See: @url{http://www.luminarymicro.com} - The Stellaris LM3S811 eval board has an FTD2232C chip built in.
@item @b{luminary_icdi}
@* See: @url{http://www.luminarymicro.com} - Luminary In-Circuit Debug Interface (ICDI) Board, included in the Stellaris LM3S9B90 and LM3S9B92 Evaluation Kits.
@item @b{olimex-jtag}
@* See: @url{http://www.olimex.com}
@item @b{flyswatter}
@ -1829,6 +1831,7 @@ Currently valid layout @var{name} values include:
@item @b{evb_lm3s811} Luminary Micro EVB_LM3S811 as a JTAG interface,
either for the local Cortex-M3 (SRST only)
or in a passthrough mode (neither SRST nor TRST)
@item @b{luminary_icdi} Luminary In-Circuit Debug Interface (ICDI) Board
@item @b{flyswatter} Tin Can Tools Flyswatter
@item @b{icebear} ICEbear JTAG adapter from Section 5
@item @b{jtagkey} Amontec JTAGkey and JTAGkey-Tiny (and compatibles)

View File

@ -156,6 +156,7 @@ static const ft2232_layout_t ft2232_layouts[] =
{ "oocdlink", jtagkey_init, jtagkey_reset, NULL },
{ "signalyzer", usbjtag_init, usbjtag_reset, NULL },
{ "evb_lm3s811", usbjtag_init, usbjtag_reset, NULL },
{ "luminary_icdi", usbjtag_init, usbjtag_reset, NULL },
{ "olimex-jtag", olimex_jtag_init, olimex_jtag_reset, olimex_jtag_blink },
{ "flyswatter", flyswatter_init, flyswatter_reset, flyswatter_jtag_blink },
{ "turtelizer2", turtle_init, turtle_reset, turtle_jtag_blink },
@ -2163,6 +2164,15 @@ static int usbjtag_init(void)
low_output = 0x88;
low_direction = 0x8b;
}
else if (strcmp(ft2232_layout, "luminary_icdi") == 0)
{
nTRST = 0x0;
nTRSTnOE = 0x00;
nSRST = 0x20;
nSRSTnOE = 0x20;
low_output = 0x88;
low_direction = 0xcb;
}
else
{
LOG_ERROR("BUG: usbjtag_init called for unknown layout '%s'", ft2232_layout);

18
tcl/board/ek-lm3s9b9x.cfg Normal file
View File

@ -0,0 +1,18 @@
#
# Luminary Micro Stellaris LM3S9B9x Evaluation Kits
#
# http://www.luminarymicro.com/products/ek-lm3s9b90.html
# http://www.luminarymicro.com/products/ek-lm3s9b92.html
#
source [find interface/luminary-icdi.cfg]
source [find target/lm3s9b9x.cfg]
# jtag speed
jtag_khz 500
jtag_nsrst_delay 100
jtag_ntrst_delay 100
#LM3S9B9x Evaluation Board has only srst
reset_config srst_only

View File

@ -0,0 +1,12 @@
#
# Luminary Micro Stellaris LM3S9B9x Evaluation Kits
# In-Circuit Debug Interface (ICDI) Board
#
# http://www.luminarymicro.com/products/ek-lm3s9b90.html
# http://www.luminarymicro.com/products/ek-lm3s9b92.html
#
interface ft2232
ft2232_device_desc "Luminary Micro ICDI Board"
ft2232_layout luminary_icdi
ft2232_vid_pid 0x0403 0xbcda

39
tcl/target/lm3s9b9x.cfg Normal file
View File

@ -0,0 +1,39 @@
#
# Luminary Micro Stellaris LM3S9B9x Microcontroller
#
# http://www.luminarymicro.com/products/lm3s9b90.html
# http://www.luminarymicro.com/products/lm3s9b92.htm
#
if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME
} else {
set _CHIPNAME lm3s9b9x
}
if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN
} else {
# this defaults to a little endian
set _ENDIAN little
}
if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID
} else {
# forth generation Tempest device
set _CPUTAPID 0x4ba00477
}
#jtag scan chain
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 1 -irmask 0xf -expected-id $_CPUTAPID
#Cortex-M3 with Luminary lm3s variant
set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME -variant lm3s
# 16k working area at base of ram
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 0x4000 -work-area-backup 0
#flash configuration
flash bank stellaris 0 0 0 0 0