Forum: Mikrocontroller und Digitale Elektronik Load geht nicht mit neuem OpenOCD


von visper (Gast)


Lesenswert?

Hi,
ich wollte mal auf das neueste OpenOCD updaten. Leider musste ich 
feststellen, dass die Konfigurationsbefehle größten Teils geändert 
wurden. Nach ein wenig bastelei glaube ich nun eine Konfiguration 
erstellt zu haben, die das selbe bezweckt wie meine alte. Dennoch kann 
ich kein Programm in meinen ARM7 (STR710) laden. Folgende Ausgabe 
bekomme ich:
1
Open On-Chip Debugger 1.0 (2009-04-10-13:28) svn:1454M
2
BUGS? Read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS 
3
4
5 kHz
5
Info : JTAG tap: str710.cpu tap/device found: 0x3f0f0f0f (Manufacturer:
6
0x787, Part: 0xf0f0, Version: 0x3)
7
Info : JTAG Tap/device matched
8
Warn : DBGACK set while target was in unknown state. Reset or initialize
9
target.
10
11
target state: halted
12
target halted in ARM state due to breakpoint, current mode: Undefined
13
cpsr: 0xb00000db pc: 0x000ab5a8
14
Info : accepting 'gdb' connection from 0
15
Warn : acknowledgment received, but no packet pending
16
Info : JTAG tap: str710.cpu tap/device found: 0x3f0f0f0f (Manufacturer:
17
0x787, Part: 0xf0f0, Version: 0x3)
18
Info : JTAG Tap/device matched
19
Warn : srst pulls trst - can not reset into halted mode. Issuing halt after
20
reset.
21
target state: halted
22
target halted in ARM state due to debug-request, current mode: Undefined
23
cpsr: 0xb00000db pc: 0x000b2814
24
target state: halted
25
target halted in ARM state due to debug-request, current mode: Undefined
26
cpsr: 0xb00000db pc: 0x000b2814
27
requesting target halt and executing a soft reset
28
target state: halted
29
target halted in ARM state due to debug-request, current mode: Supervisor
30
cpsr: 0xb00000d3 pc: 0x00000000
31
Warn : negative reply, retrying
32
Warn : negative reply, retrying
33
Warn : acknowledgment received, but no packet pending
34
Warn : negative acknowledgment, but no packet pending
35
Warn : negative acknowledgment, but no packet pending
36
Warn : acknowledgment received, but no packet pending
37
Warn : negative reply, retrying
38
Warn : negative reply, retrying
39
Warn : acknowledgment received, but no packet pending
40
Warn : negative acknowledgment, but no packet pending
41
Warn : negative acknowledgment, but no packet pending
42
Warn : acknowledgment received, but no packet pending
43
Warn : negative reply, retrying
44
Warn : negative reply, retrying
45
Warn : acknowledgment received, but no packet pending
46
Warn : negative acknowledgment, but no packet pending
47
Warn : negative acknowledgment, but no packet pending
48
Warn : acknowledgment received, but no packet pending
49
Warn : negative reply, retrying

Die Fehler beginnen sobald ich das "load" Kommando in gdb starte. Da die 
Hardware 100%-tig funktioniert, kann es eigentlich nur an der 
Konfiguration liegen oder an einem Fehler im OpenOCD.

Hier mal mein Konfigurationsskript:
1
#daemon configuration
2
telnet_port 4444
3
gdb_port 3333
4
tcl_port 6666
5
6
# tell gdb the flash mem-map
7
gdb_memory_map enable
8
gdb_flash_program enable
9
10
#interface
11
interface ft2232
12
ft2232_device_desc "OOCDLink A"
13
ft2232_layout oocdlink
14
ft2232_vid_pid 0x0403 0xbaf8
15
jtag_khz 5
16
17
jtag_nsrst_delay 500
18
jtag_ntrst_delay 500
19
20
#target configuration
21
#start slow, speed up after reset
22
#jtag_khz 10
23
24
if { [info exists CHIPNAME] } {  
25
   set  _CHIPNAME $CHIPNAME    
26
} else {   
27
   set  _CHIPNAME str710
28
}
29
30
if { [info exists ENDIAN] } {  
31
   set  _ENDIAN $ENDIAN    
32
} else {   
33
   set  _ENDIAN little
34
}
35
36
if { [info exists CPUTAPID] } {  
37
   set  _CPUTAPID $CPUTAPID    
38
} else {   
39
   set  _CPUTAPID 0x3f0f0f0f
40
}
41
42
#use combined on interfaces or targets that can't set TRST/SRST separately
43
reset_config trst_and_srst srst_pulls_trst
44
45
#jtag scan chain
46
47
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0x0f -expected-id
48
$_CPUTAPID
49
50
set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
51
target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position
52
$_TARGETNAME -variant arm7tdmi
53
#$_TARGETNAME configure -event reset-start { jtag_khz 10 }
54
#$_TARGETNAME configure -event reset-init { jtag_khz 6000 }
55
$_TARGETNAME configure -event gdb-flash-erase-start {
56
  flash protect 0 0 7 off
57
  flash protect 1 0 1 off
58
}
59
60
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x2000C000
61
-work-area-size 0x4000 -work-area-backup 0
62
63
#flash bank str7x <base> <size> 0 0 <target#> <variant>
64
flash bank str7x 0x40000000 0x00040000 0 0 0 STR71x
65
flash bank str7x 0x400C0000 0x00004000 0 0 0 STR71x
66
67
# OpenOCD kann loslegen
68
init

Kann da jemand den Fehler entdecken, oder sonstige Tips abgeben?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.