I’m new to arm programming and have an Olimex ARM-USB-OCD jtag dongle to program an LM3S5956. I’ve downloaded and installed OpenOCD and intend to use it as just a programmer - the intended app is so simple that debugging should never be required.
The drivers for the ARM-USB-OCD installed fine under Windows 7.
I tried out some of the scripts for OpenOCD with little luck. What I have just now is as follows:
#
Olimex ARM-USB-OCD / LM3S script
NB: ft2232_device_desc (taken from control panel)
set IMGFILE firmware.bin
interface ft2232
ft2232_device_desc “Olimex OpenOCD JTAG Interface”
ft2232_layout olimex-jtag
ft2232_vid_pid 0x15ba 0x0003
2 RST lines not wired
reset_config none
TI/Luminary Stellaris LM3S chip family
set _CHIPNAME lm3s5956
set _CPUTAPID 0x4ba00477
set _TARGETNAME $_CHIPNAME.cpu
jtag newtap $_CHIPNAME cpu -irlen 4 -irmask 0xf -expected-id $_CPUTAPID -ignore-version
The “lm3s” variant uses a software reset rather than SRST.
This stops the debug registers from being cleared; it works
around an erratum which should be fixed in later silicon.
target create $_TARGETNAME cortex_m3 -chain-position $_CHIPNAME.cpu -variant lm3s
8K working area at base of ram, not backed up
NOTE: you may need or want to reconfigure the work area;
some parts have just 6K, and you may want to use other
addresses (at end of mem not beginning) or back it up.
$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size 0x2000
JTAG speed … slow enough to work with a 12 MHz RC oscillator;
LM3S parts don’t support RTCK
NOTE: this may be increased by a reset-init handler, after it
configures and enables the PLL. Or you might need to decrease
this, if you’re using a slower clock.
jtag_khz 500
$_TARGETNAME configure -event reset-start {jtag_khz 500}
flash configuration … autodetects sizes, autoprobed
flash bank $_CHIPNAME.flash stellaris 0 0 0 0 $_TARGETNAME
erase first bank only
ocd_flash write_image erase $IMGFILE bin
############# EOF
Running the script I get the following output:
Open On-Chip Debugger 0.4.0 (2010-02-22-19:05)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
debug_level: 2
none separate
500 kHz
Error: unable to open ftdi device: device not found
Command handler execution failed
Any thoughts? It all seems to be installed as set-up correctly.
All help welcome.
Thanks
- Oliver