Hallo,
ich versuche jetzt schon ein paar Stunden endlich meine
Entwicklungsumgebung für oben genannte Kombination aufzusetzen.
Ich programmiere eigentlich nur unter Ubuntu und habe es deshalb auch
dort mit OpenOCD probiert.
Ich habe über git die neuste Version von OpenOCD geladen. Zu erst hatte
ich einige Probleme mit dem FTDI Treiber. Mit dem Paket libftdi-dev hat
es dann aber geklappt OpenOCD zu compilieren.
Leider hängt es nun wieder.
Ich rufe OpenOCD wie folgt auf
1 | sudo openocd -f openocd.cfg
|
In der openocd.cfg stehen nur die Verweise auf die Mitgelieferten Files
1 | source [find interface/arm-usb-ocd.cfg]
|
2 | source [find target/sam7x256.cfg]
|
Der Aufruf scheitert aber leider.
Folgende Message kommt.
1 | Open On-Chip Debugger 0.4.0-rc1-dev-00116-gdaa1ff3 (2010-01-19-20:05)
|
2 | For bug reports, read
|
3 | http://openocd.berlios.de/doc/doxygen/bugs.html
|
4 | srst_only srst_pulls_trst srst_gates_jtag srst_open_drain
|
5 | Error: unable to open ftdi device: unable to fetch product description
|
6 | Command handler execution failed
|
Ich hab bis jetzt über google nichts dazu gefunden.
Der Programmer ist sowohl in dmesg als auch unter lsusb aufgelistet.
Habt ihr ne Idee.
Danke für eure Hilfe.
Inhalt der config-Files
arm-usb-ocd.cfg
1 | #
|
2 | # Olimex ARM-USB-OCD
|
3 | #
|
4 | # http://www.olimex.com/dev/arm-usb-ocd.html
|
5 | #
|
6 |
|
7 | interface ft2232
|
8 | ft2232_device_desc "Olimex OpenOCD JTAG"
|
9 | ft2232_layout "olimex-jtag"
|
10 | ft2232_vid_pid 0x15BA 0x0003
|
sam7x256.cfg
1 | #use combined on interfaces or targets that can't set TRST/SRST separately
|
2 | reset_config srst_only srst_pulls_trst
|
3 |
|
4 | if { [info exists CHIPNAME] } {
|
5 | set _CHIPNAME $CHIPNAME
|
6 | } else {
|
7 | set _CHIPNAME sam7x256
|
8 | }
|
9 |
|
10 | if { [info exists ENDIAN] } {
|
11 | set _ENDIAN $ENDIAN
|
12 | } else {
|
13 | set _ENDIAN little
|
14 | }
|
15 |
|
16 | if { [info exists CPUTAPID ] } {
|
17 | set _CPUTAPID $CPUTAPID
|
18 | } else {
|
19 | set _CPUTAPID 0x3f0f0f0f
|
20 | }
|
21 |
|
22 | jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
|
23 |
|
24 | set _TARGETNAME $_CHIPNAME.cpu
|
25 | target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm7tdmi
|
26 |
|
27 | $_TARGETNAME configure -event reset-init {
|
28 | # disable watchdog
|
29 | mww 0xfffffd44 0x00008000
|
30 | # enable user reset
|
31 | mww 0xfffffd08 0xa5000001
|
32 | # CKGR_MOR : enable the main oscillator
|
33 | mww 0xfffffc20 0x00000601
|
34 | sleep 10
|
35 | # CKGR_PLLR: 96.1097 MHz
|
36 | mww 0xfffffc2c 0x00481c0e
|
37 | sleep 10
|
38 | # PMC_MCKR : MCK = PLL / 2 ~= 48 MHz
|
39 | mww 0xfffffc30 0x00000007
|
40 | sleep 10
|
41 | # MC_FMR: flash mode (FWS=1,FMCN=60)
|
42 | mww 0xffffff60 0x003c0100
|
43 | sleep 100
|
44 | }
|
45 |
|
46 | $_TARGETNAME configure -work-area-phys 0x00200000 -work-area-size 0x4000 -work-area-backup 0
|
47 |
|
48 | #flash bank <driver> <base_addr> <size> <chip_width> <bus_width> <target_number> [<target_name> <banks> <sectors_per_bank> <pages_per_sector> <page_size> <num_nvmbits> <ext_freq_khz>]
|
49 | set _FLASHNAME $_CHIPNAME.flash
|
50 | flash bank $_FLASHNAME at91sam7 0 0 0 0 $_TARGETNAME 0 0 0 0 0 0 0 18432
|
51 |
|
52 | # For more information about the configuration files, take a look at:
|
53 | # openocd.texi
|