Hello,
i try to connect the j100i with the latest openocd (git) but there is always something wrong with the embedded ice module. My configuration script is based on openocd_calypso.cfg and the calypso_magic.svf. The main difference i can see is the idcode and the irlen. My changes in the script looks like this:
set _CPUTAPID 0xf9001807
jtag newtap $_CHIPNAME dsp -expected-id 0x00000000 -irlen 5 jtag newtap $_CHIPNAME arm -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
This changes are based on some appended svf scripts that simple scan the jtag chain to get more informations. The jtag_idcodes.svf returns the shifted idcodes like this:
SDR 32 TDI(ffffffff); length = 32 TDI = 0xFFFFFFFF TDO read = 0xF200300E SDR 32 TDI(ffffffff); length = 32 TDI = 0xFFFFFFFF TDO read = 0xFFFFFFFF
The jtag_devices.svf told me the device count and the possible ir register count/length:
SIR 32 TDI(ffffffff); length = 32 TDI = 0xFFFFFFFF TDO read = 0xFFFFFE25
TDO: 11...11000100101 Looks like 3 ir registers with 4,3 and 2 bit length
SDR 32 TDI(ffffffff); length = 32 TDI = 0xFFFFFFFF TDO read = 0xFFFFFFFC
TDO: 11...1100 Looks like 2 devices
But every access to the embedded ice registers (they are located in the internal scan chain 2) result in random (most time zero) values for the comms ctrl register and a cpu halt state. Is there anything wrong? Is there a different "magic" 0x0b jtag command or argument for this kind of cpu?
Thanks & Regards,
Mathias
Hi,
On 07.05.2012 20:37, Mathias K. wrote:
set _CPUTAPID 0xf9001807 jtag newtap $_CHIPNAME dsp -expected-id 0x00000000 -irlen 5
That doesn't look right, the idcode is 0x3100e02f and the DSP irlen is 8.
Have you actually tried openocd_calyso.cfg as-is? It works fine here, even with a J100i.
Regards, Steve
Hello,
On 07.05.2012 21:12, Steve Markgraf wrote:
Have you actually tried openocd_calyso.cfg as-is? It works fine here, even with a J100i.
yes, i have tried it before but i got the same results:
Info : 208 46 core.c:1069 jtag_examine_chain(): TAP calypso.dsp does not have IDCODE Info : 209 46 core.c:951 jtag_examine_chain_display(): JTAG tap: calypso.arm tap/device found: 0xf9001807 (mfg: 0x403, part: 0x9001, ver: 0xf) Warn : 210 46 core.c:951 jtag_examine_chain_display(): JTAG tap: calypso.arm UNEXPECTED: 0xf9001807 (mfg: 0x403, part: 0x9001, ver: 0xf) Error: 211 47 core.c:951 jtag_examine_chain_display(): JTAG tap: calypso.arm expected 1 of 1: 0x3100e02f (mfg: 0x017, part: 0x100e, ver: 0x3)
...
Info : 219 55 embeddedice.c:232 embeddedice_build_reg_cache(): Embedded ICE version 0 Error: 220 55 embeddedice.c:297 embeddedice_build_reg_cache(): unknown EmbeddedICE version (comms ctrl: 0x00000000)
Did you solder anything else than the jtag signals + gnd/vcc? Is there anything else to take care (running firmware/custom firmware, batterie, external charger cable)? I use the arm usb tiny jtag adapter and the signals looking good so far. I also reduced the jtag speed but there is no difference.
Regards,
Mathias
Which Testpoint did you use for TDO? TP4 or TP16? TP16 would be correct.
Regards, Steve
Hello,
i use TP16 as TDO. I have tried it with pullups on all jtag lines but no success. There is a problem with the arm usb tiny adapter and this kind of cpu.
I tried it with a self made adapter and i can see the correct idcode.
Thanks,
Mathias
On 07.05.2012 22:47, Steve Markgraf wrote:
Which Testpoint did you use for TDO? TP4 or TP16? TP16 would be correct.
Regards, Steve
baseband-devel@lists.osmocom.org