olimex ARM-USB-OCD with ARM7TDMI-S cores

In looking at the ARM tech ref manual for the ARM7TDMI-S (synthesized) core, it states that the RTCK signal has to be present on the JTAG to synchronize between the JTAG device and the internal clock on the CPU. Does this mean that JTAG adapters which do not use RTCK (like the Olimex) will have problems with controllers such as the STR750?

I have been able to flash memory on an STR750 with the Olimex adapter but gdb does not run reliably. I get “fail to interrupt” messages and the gdb_server disconnects when I try to interrupt a program on the STR750 from gdb.

If the jtag clock is slow enough the RTCK is not required.

Openocd works ok with the str75x family.

Cheers

Spen

If you have a working config file for the STR750 and ARM-USB-OCD adapter, can you post it? I’ve tried slowing the clock down to jtag_speed 59 without success. Do you have a working configuration with gdb?

Its been a while, but here goes:

If i get time i will dig the str75 target out.

# logging
debug 0

# daemon port setup
telnet_port 4000
gdb_port 2000
gdb_detach nothing

# hardware setup
interface ft2232
ft2232_device_desc "Olimex OpenOCD JTAG A"
ft2232_layout olimex-jtag
jtag_speed 10
jtag_nsrst_delay 100
jtag_ntrst_delay 100
reset_config trst_and_srst

# jtag scan chain
jtag_device 4 0x1 0xf 0xe

# target configuration
target arm7tdmi little run_and_halt 0 arm7tdmi
run_and_halt_time 0 0
daemon_startup reset

This is a config from the openocd docs

#daemon configuration
telnet_port 4444
gdb_port 3333
#interface
interface ft2232
ft2232_device_desc "Amontec JTAGkey A"
ft2232_layout jtagkey
ft2232_vid_pid 0x0403 0xcff8
jtag_speed 19
#use combined on interfaces or targets that can’t set TRST/SRST separately
#reset_config trst_and_srst srst_pulls_trst
reset_config trst_and_srst srst_pulls_trst
#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 4 0x1 0xf 0xe
#jtag nTRST and nSRST delay
jtag_nsrst_delay 500
jtag_ntrst_delay 500
#target configuration
daemon_startup reset
#target <type> <startup mode>
#target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
target arm7tdmi little run_and_halt 0 arm7tdmi
run_and_halt_time 0 30
working_area 0 0x40000000 0x4000 nobackup
#flash bank <driver> <base> <size> <chip_width> <bus_width>
flash bank str7x 0x20000000 0x000040000 0 0 0 STR75x

Cheers

Spen

The openocd example for STR750 is for an Amontec adapter, which uses RTCK. I haven’t found any examples with the Olimex adapter where gdb worked on an STR750. I do have flash programming working from openocd, but gdb fails (disconnects from server) when it tries to stop the processor.

The amontec example is fo the jtagkey which is based on the ftdi chip also - and so does not use RTCK

If you provide the openocd log then i will try to help.

Cheers

Spen