ARM926EJ-S Testing

I have been trying to test support for the ARM926EJ-S added in recent versions.

I tried the Windows native r128 from yagarto, but this seemed to lock-up.

So I have now tried compiling r130 in cygwin, this seems to run but I cannot telnet in or access with GDB.

My config is :-

#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 5

#use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst

#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 4 0x1 0xf 0xe

jtag_nsrst_delay 100
jtag_ntrst_delay 100


#target configuration
daemon_startup reset

#target <type> <endianness> <startup mode> <chainpos> <variant>
target arm926ejs little run_and_halt 0 arm926ejs
run_and_halt_time 0 500

My target is a Hilscher netX 500, using a JtagKey to debug.

I get the following log output

Debug:   arm926ejs.c:663 arm926ejs_target_command(): chain_pos: 0, variant: arm926ejs
Debug:   jtag.c:1329 jtag_init(): 
Debug:   ft2232.c:1244 ft2232_init(): 'ft2232' interface using FTD2XX with 'jtagkey' layout
Debug:   ft2232.c:1330 ft2232_init(): current latency timer: 2
Debug:   ft2232.c:1502 jtagkey_init(): 80 08 1b
Debug:   ft2232.c:1560 jtagkey_init(): 82 09 0f
Debug:   ft2232.c:242 ft2232_speed(): 86 05 00
Debug:   jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug:   jtag.c:1126 jtag_reset_callback(): 
Debug:   ft2232.c:1127 ft2232_execute_queue(): statemove: 0
Debug:   jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug:   jtag.c:1126 jtag_reset_callback(): 
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00da0000000000ff
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 640 bit, end in 0
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x000000ff07926021
Debug:   jtag.c:1214 jtag_examine_chain(): JTAG device found: 0x07926021 (Manufacturer: 0x010, Part: 0x7926, Version: 0x0
Debug:   jtag.c:278 jtag_call_event_callbacks(): jtag event: TRST asserted
Debug:   jtag.c:1126 jtag_reset_callback(): 
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x3f
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 6 bit, end in 0
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x31
Debug:   openocd.c:102 main(): jtag init complete
Debug:   embeddedice.c:203 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:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x02
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x02
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 5 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0c
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x04
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x04
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x60000000
Debug:   arm7_9_common.c:656 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(): 
Debug:   jtag.c:278 jtag_call_event_callbacks(): jtag event: SRST asserted
Debug:   jtag.c:1126 jtag_reset_callback(): 
Debug:   ft2232.c:940 jtagkey_reset(): trst: 1, srst: 1, high_output: 0x00, high_direction: 0x0f
Debug:   ft2232.c:1045 ft2232_execute_queue(): trst: 1, srst: 1
Debug:   ft2232.c:1190 ft2232_execute_queue(): sleep 5000 usec
Debug:   ft2232.c:940 jtagkey_reset(): trst: 0, srst: 1, high_output: 0x01, high_direction: 0x0f
Debug:   ft2232.c:1045 ft2232_execute_queue(): trst: 0, srst: 1
Debug:   ft2232.c:1190 ft2232_execute_queue(): sleep 100000 usec
Debug:   ft2232.c:1190 ft2232_execute_queue(): sleep 50000 usec
Debug:   arm7_9_common.c:722 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:940 jtagkey_reset(): trst: 0, srst: 0, high_output: 0x09, high_direction: 0x0f
Debug:   ft2232.c:1045 ft2232_execute_queue(): trst: 0, srst: 0
Debug:   ft2232.c:1190 ft2232_execute_queue(): sleep 100000 usec
Debug:   ft2232.c:1190 ft2232_execute_queue(): sleep 100000 usec
Debug:   openocd.c:106 main(): target init complete
Debug:   openocd.c:110 main(): flash init complete
Debug:   openocd.c:114 main(): pld init complete
Debug:   gdb_server.c:1347 gdb_init(): gdb service for target arm926ejs at port 3333
Debug:   embeddedice.c:203 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:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x02
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x02
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 5 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0c
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x04
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000010
Debug:   embeddedice.c:203 embeddedice_read_reg_w_check(): 1
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000010
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000010
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x04
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000010
Debug:   arm7_9_common.c:838 arm7_9_halt(): target->state: running
Debug:   embeddedice.c:299 embeddedice_write_reg(): 0: 0x00000002
Debug:   embeddedice.c:203 embeddedice_read_reg_w_check(): 1
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000002
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x01
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000010
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000010
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x04
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x0000025d
Debug:   arm7_9_common.c:620 arm7_9_poll(): DBGACK set, dbg_state->value: 0x25d
Debug:   embeddedice.c:299 embeddedice_write_reg(): 0: 0x00000005
Debug:   embeddedice.c:299 embeddedice_write_reg(): 0: 0x00000005
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000005
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x01
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000005
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x01
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   embeddedice.c:203 embeddedice_read_reg_w_check(): 1
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0000025d
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0000025d
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x04
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 38 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x0000025d
Debug:   arm926ejs.c:295 arm926ejs_examine_debug_reason(): internal debug request
Debug:   arm7_9_common.c:936 arm7_9_debug_entry(): target entered debug from Thumb state
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x02
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x01
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 5 bit, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0c
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00060006
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x1e621e62
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00060006
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00120012
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x00e200e2
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x03620362
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x033ee009
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00200644
Debug:   arm7_9_common.c:940 arm7_9_debug_entry(): r0_thumb: 0x033ee009, pc_thumb: 0x00200638
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0xffff0117
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0000f087
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0000f1a7
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x030e0009
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00100000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00201343
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000003
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x001034c0
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000008
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000200
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000008
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x002012dd
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x100002c8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00201359
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x0000000c
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x200000d3
Debug:   arm7_9_common.c:976 arm7_9_debug_entry(): target entered debug state in Supervisor mode
Debug:   arm7_9_common.c:980 arm7_9_debug_entry(): thumb state, applying fixups
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r0: 0x033ee009
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r1: 0x030e0009
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r2: 0x00100000
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r3: 0x00201343
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r4: 0x00000003
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r5: 0x001034c0
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r6: 0x00000008
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r7: 0x00000200
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r8: 0x00000000
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r9: 0x00000000
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r10: 0x00000000
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r11: 0x00000008
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r12: 0x002012dd
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r13: 0x100002c8
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r14: 0x00201359
Debug:   arm7_9_common.c:1005 arm7_9_debug_entry(): r15: 0x00200632
Debug:   arm7_9_common.c:1011 arm7_9_debug_entry(): entered debug state at PC 0x200632
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0000f287
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0000f1a7
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x10010587
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 67 bit, end in 5
Debug:   ft2232.c:1103 ft2232_execute_queue(): runtest: 0, end in 5
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000010
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x02
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0f
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 5 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x0c
Debug:   ft2232.c:1182 ft2232_execute_queue(): IR scan, 4 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0010
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0010
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x01
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x00
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00050078
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x01
Debug:   arm926ejs.c:401 arm926ejs_post_debug_entry(): cp15_control_reg: 00050078
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0100
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0100
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x00
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x1d112152
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0050
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0050
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x00
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000040
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0150
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0150
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x00
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0060
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x0060
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x00
Debug:   jtag.c:1027 jtag_read_buffer(): fields[0].in_value: 0x00000000
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x01
Debug:   arm926ejs.c:422 arm926ejs_post_debug_entry(): D FSR: 0x00000040, D FAR: 0x00000000, I FSR: 0x00000000
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x38f0
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00
Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x00
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x38f0
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x00

This then repeats with :-

Debug:   ft2232.c:1182 ft2232_execute_queue(): DR scan, 48 bit, end in 8
Debug:   jtag.c:1027 jtag_read_buffer(): fields[1].in_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[0].out_value: 0x00000007
Debug:   jtag.c:996 jtag_build_buffer(): fields[1].out_value: 0x01
Debug:   jtag.c:996 jtag_build_buffer(): fields[2].out_value: 0x38f0
Debug:   jtag.c:996 jtag_build_buffer(): fields[3].out_value: 0x01

continuously increasing the logfile to multi-megabyte size until I kill the process.

Hi,

I’m also using a netX500 (on an NXSB100) in the University here and I’m trying to get it working with OpenOCD.

I experience exactly the same behaviour as you are, but I’m using a wiggler-style Parport Adapter (self-built). The Interface itself is somewhat working, ie. with OCD Commander, so the hardware is okay.

Any news on the problem?

Would be really cool to use OpenOCD in combination with Eclipse on the netX…

Cheers,

Manuel

Hi Manuel,

I haven’t had time to mess-on and figure out the problem.

The board works with an Amontec Chameleon programmed as a raven using ocdremote, and also with a Hitex Tantino, so I know the hardware is okay.

It’s still on my todo list to figure out why openocd has a problem with it!

Regards,

Ian.

Hi,

my results with version 137 and a omap5912 board:

target halted in ARM state due to debug request, current mode: Undefined
cpsr: 0x400000db pc: 0x00000004
MMU: disabled, D-Cache: disabled, I-Cache: disabled
> arm926ejs cp15 0 0 0 0
0 0 0 0: 41069263
> halt
requesting target halt...
target already halted
> arm926ejs cache_info
cache type: 0xe, separate caches
D-Cache: linelen 32, associativity 4, nsets 64, cachesize 0x2000
I-Cache: linelen 32, associativity 4, nsets 128, cachesize 0x4000
> halt
requesting target halt...
target already halted
> arm926ejs cache_info
cache type: 0xe, separate caches
D-Cache: linelen 32, associativity 4, nsets 64, cachesize 0x2000
I-Cache: linelen 32, associativity 4, nsets 128, cachesize 0x4000
> mdw 0
0x00000000: 00000000
> mdw 0
0x00000000: e0000000
> mdw 0
0x00000000: e0000000
> poll
target state: running
> halt
requesting target halt...
> Target 0 halted
target halted in ARM state due to debug request, current mode: Supervisor
cpsr: 0x000000d3 pc: 0x00000000
MMU: disabled, D-Cache: disabled, I-Cache: disabled
> mdw 0
0x00000000: ea000044
> mdw 0
0x00000000: ea000044
> halt
requesting target halt...
target already halted
> mdw 0
0x00000000: ea000044
> mdw 4
0x00000004: e59ff014
> mdw 4
0x00000004: e59ff014
> mdw 4
0x00000004: e59ff014
> mdw 0
0x00000000: ea000044

Today I found a bug in the ARM926EJ-S CP15 handling, that caused the OpenOCD to lock up. This has been fixed in the latest SVN revision.

This only fixes the problem of endlessly repeated accesses, like those that the original poster in this thread experienced.

If the OpenOCD fails to examine or validate the JTAG scan chain, or if it fails to enter debug state (or pretends to enter debug, but a subsequent poll shows it running), you’re seeing a different problem.

In that case, try reducing the JTAG clock (-S cores must not use a TCK frequency of more than 1/6th of the core frequency).

Regards,

Dominic

Hello,

the omap5912 works now for me (i can burn the flash (intel cfi), read/write memory).

I had some different problems:

First the watchdog was enabled :-/ .

The second thing is the default 16bit databus for external ram and flash (after a reset). OCD cant handle 16bit “working areas” and as result flash burning is very slow (1500 seconds for 90k). As next i will try the right sdram initialization.

Thanks,

Mathias

Hello Mathias,

You should still upgrade to the latest code from SVN - this problem is going to hit you sooner or later, as the bug caused uninitialized data to be used in a control statement (if clause).

Not sure what you mean by “OCD cant handle 16bit “working areas”” - doesn’t your memory controller support all access types (8, 16 and 32 bit)? Usually the memory controller should issue two 16-bit access when a 32-bit access is requested. At least instruction fetches are always going to be 32-bit, unless you switch to Thumb code of course.

Regards,

Dominic

Hello,

yes, i run the latest ocd version (with parallel port wiggler).

Your right, the sdram memory controller was not initialized and i cant use it for the “working area”. I have try internal memory now (lcd frame buffer) with 32bit execute/read/write access. I test it and flash burning is done in 10 seconds.

If you want i can send you the config files for the omap5912.

Regards,

Mathias

Hello Mathias,

it would be great if you could add your configuration script to the Wiki at

http://openfacts.berlios.de/index-en.ph … CD_scripts

Best regards,

Dominic

Just wanted to add - I’ve used OpenOCD on an arm926EJ-s [at91sam9260] and it works pretty much fine for me [just basic debugging, no flash burning / etc].

Cheers,

–David Carne

mathen:
Hello,

yes, i run the latest ocd version (with parallel port wiggler).

Your right, the sdram memory controller was not initialized and i cant use it for the “working area”. I have try internal memory now (lcd frame buffer) with 32bit execute/read/write access. I test it and flash burning is done in 10 seconds.

If you want i can send you the config files for the omap5912.

Regards,

Mathias

Hi it is usual to configure the SDRAM controller in the .gdbinit script, or I guess in the OpenOCD config file could be used too.

It is a bit laborious to do but should work.

This is done by directly manipulating the configuration registers in the chip. You can often find the right settings to send in the crt.s startup assembler file or by reading the processor data sheet.

All the best.

Dominic,

I’ve re-tested with openocd v139 and it now works fine.

Now that I know my configuration works I’ve added my config script to the Wiki at

http://openfacts.berlios.de/index-en.ph … CD_scripts

Thanks for finding and fixing this bug.

Regards,

Ian.

Hello,

I’m really new to all of this (JTAG, ARMs, …). I’m wondering how to get flash burning enabled for the at91sam9260ek board. I have openocd running and can connect through telnet. I can send commands to the board and they seem to get through. I’ve tried looking though the data sheets to try to figure out which driver I should be using for the flash, but it’s all alphabet soup to me right now.

I’m using the version from svn from 2007-04-27.

config:

# daemon config
telnet_port 4444
gdb_port 3333
daemon_startup reset

# interface 
interface parport
parport_port /dev/parport0
parport_cable wiggler
jtag_speed 0
# 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

jtag_nsrst_delay 0
jtag_ntrst_delay 0

# target configuration
# target <type> <endianess> <reset_mode>
# if chain_pos is not zero it seg faults
target arm926ejs little run_and_halt 0
#target_script 0 reset h2294_init.script
run_and_halt_time 0 30
working_area 0 0xD0000000 0x40000 nobackup

# flash configuration
# flash bank <driver> <base> <size> <chip_width> <bus_width> [driver_options ...]
flash bank lpc2000 0x0 0x40000 0 0 lpc2000_v1 0 14765 calc_checksum
flash bank cfi 0x80000000 0x400000 2 2 0

flash configuration

flash bank <chip_width> <bus_width> [driver_options …]

flash bank lpc2000 0x0 0x40000 0 0 lpc2000_v1 0 14765 calc_checksum

flash bank cfi 0x80000000 0x400000 2 2 0

These lines configure the flashes - it looks like you’ve taken an example used for a NXP (ex-Philips) LPC22xx:

the first line describes the internal flash (driver: lpc2000), the second line describes the external flash (driver: cfi).

What type of flash is on the -EK board, I suppose it is external? How is it connected (8/16/32 bit bus), where is is located in the memory map, and is there some initialization of the external memory controller necessary?

Regards,

Dominic

Thanks for replying.

I’m still murky on the details, but I believe there are 3 flashes: internal, Data, and NAND. Data is connected via an SPI bus and NAND is connected via the 8 bit “EBI”. I want to copy a linux kernel and UBoot to the Data and a file system to the NAND. I think I also have to copy a bootloader to the internal flash.

I’m really confused on the memory map, because I have UBoot on there already and it’s apparently remapping the addresses for Data flash to 0xD0000000. The memory map is in the at91sam9260 summary, and it says 0xD0000000 is reserved (so things can get remapped there?).

eval board doc:

http://www.atmel.com/dyn/resources/prod … oc6281.pdf

chip docs:

http://www.atmel.com/dyn/resources/prod … mi_TRM.pdf

http://www.atmel.com/dyn/resources/prod … /6221s.pdf (at91sam9260 summary)

http://www.atmel.com/dyn/resources/prod … oc6221.pdf (at91sam9260 complete)

http://www.atmel.com/dyn/resources/prod … JS_TRM.pdf

There’s only rudimentary support for NAND flashes in the OpenOCD, and the only NAND controller implemented is the LPC3180.

There is no support for Atmel’s dataflash. Dataflash also can’t be mapped to any address - it isn’t really a “memory” device but rather a storage device.

AFAIK the AT91SAM9260 doesn’t have any internal flash.

I don’t think you’ll be able to use the OpenOCD to program the flashes on your board. There’s basically just support for NOR flashes, both internal (LPC2000, STR7x, STR9x and AT91SAM7) and external (CFI compatible flashes using Intel or AMD/Spansion command sets).

You could add support for the AT91SAM9260’s NAND controller to be able to write the NAND flash.

Regards,

Dominic