I've an ICnova / Grasshopper board that I'd like to get supported
via OpenOCD. As I'm willing to contribute this back, I'm using
OpenOCD from subversion, currently 1370.
My JTAG device is an Olimex USB-JTAG-TINY. I've started with a
bogus "target/avr32ap7000.cfg" file which basically contains
this:
set _CHIPNAME avr32ap7000
set _ENDIAN little
set _CPUTAPID 0x21e8203f
set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
jtag_khz 20 # until I know how fast I can get I'll stay slow
reset_config trst_only
jtag newtap $_CHIPNAME cpu \
-irlen 4 \
-ircapture 0x1 \
-irmask 0xf \
-expected-id $_CPUTAPID
target create $_TARGETNAME arm7tdmi \
-endian $_ENDIAN \
-chain-position $_TARGETNAME
With that, I'm currently getting this output:
Info : JTAG tap: avr32ap7000.cpu tap/device found: 0x21e8203f
(Manufacturer: 0x01f, Part: 0x1e82, Version: 0x2)
Info : JTAG Tap/device matched
Warn : Unexpected idcode after end of chain! 384 0x8000007f
Warn : Unexpected idcode after end of chain! 416 0x000000ff
Warn : Unexpected idcode after end of chain! 448 0x000000ff
Warn : Unexpected idcode after end of chain! 480 0x000000ff
Warn : Unexpected idcode after end of chain! 512 0x000000ff
Warn : Unexpected idcode after end of chain! 544 0x000000ff
Warn : Unexpected idcode after end of chain! 576 0x000000ff
Warn : Unexpected idcode after end of chain! 608 0x000000ff
Error: Could not validate end of JTAG scan chain, IR mismatch,
scan returned 0x21. pos=4 expected 0x3 got 2
So, the IDCODE itself is correct, it matches the AVR32 AP7000 pdf
manual.
Still I have some questions:
1. is there any documentation where I can determine the correct
parameters for "jtag newtap", e.g. where to find info about
irlen, ircapture ... or does the correct result of the
IDCODE let me assume that this is all right?
2. In the mailing list archive there was one mention of the
"Unexpected idcode after end of chain", where it was
related to speed. I don't think that this applies to my
case, as it will get emitted even with "jtag_khz 1".
3. Certainly my chip is not an "arm7tdmi", as I specified
in the "target create" command. It's an avr32 chip with
"On-Chip Debug access in compliance with IEEE-ISTO 5001-2003
(Nexus 2.0)". So I'll need to create something in
src/target/*.{h,c} to support that. What file there could
I take as a template?
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development