I am trying to use a Amontec JTAGkey to connect to a TMS470 ARM processor.
I am using openocd-2007re141.
when trying to connect I receive the following(first line types, others from log file):
Info: openocd.c:86 main(): Open On-Chip Debugger (2007-04-16 19:30 CEST)
Warning: arm7_9_common.c:685 arm7_9_assert_reset(): srst resets test logic, too
Error: armv4_5.c:186 armv4_5_mode_to_number(): invalid mode value encountered
Error: arm7_9_common.c:1019 arm7_9_debug_entry(): cpsr contains invalid mode value - communication failure
Error: target.c:1137 handle_target(): couldn't poll target, exiting
The debug log file contains:
Debug: jtag.c:1335 jtag_init(): -
Debug: ft2232.c:1242 ft2232_init_ftd2xx(): 'ft2232' interface using FTD2XX with 'jtagkey' layout (0403:cff8)
Debug: ft2232.c:1331 ft2232_init_ftd2xx(): current latency timer: 2
Debug: ft2232.c:1597 jtagkey_init(): 80 08 1b
Debug: ft2232.c:1655 jtagkey_init(): 82 09 0f
Debug: ft2232.c:249 ft2232_speed(): 86 03 00
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: jtag.c:1220 jtag_examine_chain(): JTAG device found: 0x3100e02f (Manufacturer: 0x017, Part: 0x100e, Version: 0x3
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: openocd.c:104 main(): jtag init complete
Debug: embeddedice.c:218 embeddedice_read_reg_w_check(): 4
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST released
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: arm7_9_common.c:658 arm7_9_assert_reset(): target->state: unknown
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: SRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Warning: arm7_9_common.c:685 arm7_9_assert_reset(): srst resets test logic, too
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: SRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: ft2232.c:947 jtagkey_reset(): trst: 1, srst: 1, high_output: 0x00, high_direction: 0x0f
Debug: ft2232.c:947 jtagkey_reset(): trst: 1, srst: 1, high_output: 0x00, high_direction: 0x0f
Debug: arm7_9_common.c:724 arm7_9_deassert_reset(): target->state: reset
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: SRST released
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: ft2232.c:947 jtagkey_reset(): trst: 0, srst: 0, high_output: 0x09, high_direction: 0x0f
Debug: openocd.c:108 main(): target init complete
Debug: openocd.c:112 main(): flash init complete
Debug: openocd.c:116 main(): NAND init complete
Debug: openocd.c:120 main(): pld init complete
Debug: gdb_server.c:1347 gdb_init(): gdb service for target arm7tdmi at port 3333
Debug: embeddedice.c:218 embeddedice_read_reg_w_check(): 1
Debug: jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST released
Debug: jtag.c:1126 jtag_reset_callback(): -
Debug: arm7_9_common.c:622 arm7_9_poll(): DBGACK set, dbg_state->value: 0x9
Debug: embeddedice.c:314 embeddedice_write_reg(): 0: 0x00000005
Debug: embeddedice.c:314 embeddedice_write_reg(): 12: 0x00000000
Debug: arm7_9_common.c:991 arm7_9_debug_entry(): target entered debug from ARM state
Error: armv4_5.c:186 armv4_5_mode_to_number(): invalid mode value encountered
Error: arm7_9_common.c:1019 arm7_9_debug_entry(): cpsr contains invalid mode value - communication failure
Error: target.c:1137 handle_target(): couldn't poll target, exiting
The config file I’m using looks like:
#daemon configuration
telnet_port 4444
gdb_port 3333
#interface
interface ft2232
ft2232_device_desc "Amontec JTAGkey A"
ft2232_layout jtagkey
#ft2232_layout usbjtag
ft2232_vid_pid 0x0403 0xcff8
jtag_speed 3
jtag_nsrst_delay 500
jtag_ntrst_delay 500
#use combined on interfaces or targets that can't set TRST/SRST separately
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
#target configuration
daemon_startup reset
#target
#target arm7tdmi
target arm7tdmi big run_and_halt 0 arm7tdmi-s_r4
run_and_halt_time 0 30
#working_area 0 0x40000000 0x40000 nobackup
#flash configuration
#flash bank lpc2000 0x0 0x40000 0 0 lpc2000_v1 0 12000 calc_checksum
#flash bank cfi 0x80000000 0x400000 2 2 0
I have connected to the board using a J-Link ARM using the IAR tools.
I suspect I’ve made a mistake in the config file.
Could someone help me correct my error(s).
Thanks.