It's embarrassing to see how long it took to explain my problem in a
message and how short you took to answer, but it's so. A "jtag_khz
4000" in my target script solved the problem and the TAP id now is
effectively the same reported in netx500.cfg.

Thank you a lot
Massimo

2010/12/3 Laurent Gauch <[email protected]>:
>
>
>> Hello,
>>
>> I have built and installed openocd-0.4 in a cygwin environment,
>> enabling the FTD2XX driver support.
>>
>> I'd like to connect my jtagkey2 dongle to a NETX500 board.
>>
>> Notice that it's not the NXSB100 board reported by Martin Kaul one year
>> ago but
>> it's an application board containing, besides netx, a dsp and a fpga
>> that allows JTAG access thru the same connector by setting some dip
>> switches . The board works correctly with a Lauterbach emulator, CPU
>> debug too,  so I tend to exclude problems on board or dipswitch
>> configuration.
>>
>> I started creating an openocd.cfg script very simple:
>> -----
>> source [find interface/jtagkey2.cfg]
>> source [find target/netx500.cfg]
>> ----
>> the output I get is:
>> -----
>> $ openocd
>> Open On-Chip Debugger 0.4.0 (2010-12-02-11:35)
>> Licensed under GNU GPL v2
>> For bug reports, read
>>        http://openocd.berlios.de/doc/doxygen/bugs.html
>> trst_and_srst separate srst_gates_jtag trst_push_pull srst_open_drain
>> jtag_nsrst_delay: 100
>> jtag_ntrst_delay: 100
>> Info : device: 6 "2232H"
>> Info : deviceID: 67358712
>> Info : SerialNumber: 53SDIXUSA
>> Info : Description: Amontec JTAGkey-2 A
>> Info : max TCK change to: 30000 kHz
>> Info : clock speed 30000 kHz
>> Info : JTAG tap: netx500.cpu tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Warn : JTAG tap: netx500.cpu       UNEXPECTED: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: JTAG tap: netx500.cpu  expected 1 of 1: 0x07926021 (mfg: 0x010,
>> part: 0x7926, ver: 0x0)
>> Error: Trying to use configured scan chain anyway...
>> Error: netx500.cpu: IR capture error; saw 0x03 not 0x01
>> Info : JTAG tap: netx500.cpu tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Warn : JTAG tap: netx500.cpu       UNEXPECTED: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: JTAG tap: netx500.cpu  expected 1 of 1: 0x07926021 (mfg: 0x010,
>> part: 0x7926, ver: 0x0)
>> Error: Trying to use configured scan chain anyway...
>> Error: netx500.cpu: IR capture error; saw 0x03 not 0x01
>> Command handler execution failed
>> Warn : jtag initialization failed; try 'jtag init' again.
>> -----------------
>>
>> So openocd autoprobe detects a TAP 0x0f24c043 that is different from
>> the expected 0x07926021. I guess that the IR capture error that
>> follows is due to this wrong tap configuration.
>> I still wonder why the same check is repeated 2 times giving the same
>> output, but I don't care too much.
>>
>> As second step, I back-up the netx500.cfg script and create a new one,
>> where I change ONLY  _CPUTAPID to 0x0f24c043 and retry:
>> ------------------
>> $ openocd
>> Open On-Chip Debugger 0.4.0 (2010-12-02-11:35)
>> Licensed under GNU GPL v2
>> For bug reports, read
>>        http://openocd.berlios.de/doc/doxygen/bugs.html
>> trst_and_srst separate srst_gates_jtag trst_push_pull srst_open_drain
>> jtag_nsrst_delay: 100
>> jtag_ntrst_delay: 100
>> Info : device: 6 "2232H"
>> Info : deviceID: 67358712
>> Info : SerialNumber: 53SDIXUSA
>> Info : Description: Amontec JTAGkey-2 A
>> Info : max TCK change to: 30000 kHz
>> Info : clock speed 30000 kHz
>> Info : JTAG tap: netx500.cpu tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: netx500.cpu: IR capture error; saw 0x03 not 0x01
>> Info : JTAG tap: netx500.cpu tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: netx500.cpu: IR capture error; saw 0x03 not 0x01
>> Command handler execution failed
>> Warn : jtag initialization failed; try 'jtag init' again.
>> ----------------
>> This time the TAP is recognized (still 2 times) but IR capture error
>> remains the same. Note that issuing "jtag init" thru telnet port seems
>> do nothing:
>> -------------
>> Open On-Chip Debugger
>> >/ jtag init
>> /'jtag init' has already been called
>>
>> -----------
>> So i tried to not load the target config file, but interface only just
>> to see how autoprobe works:
>>
>> -----
>> $ openocd
>> Open On-Chip Debugger 0.4.0 (2010-12-02-11:35)
>> Licensed under GNU GPL v2
>> For bug reports, read
>>        http://openocd.berlios.de/doc/doxygen/bugs.html
>> Info : device: 6 "2232H"
>> Info : deviceID: 67358712
>> Info : SerialNumber: 53SDIXUSA
>> Info : Description: Amontec JTAGkey-2 A
>> Info : max TCK change to: 30000 kHz
>> Info : clock speed 30000 kHz
>> Warn : There are no enabled taps.  AUTO PROBING MIGHT NOT WORK!!
>> Warn : AUTO auto0.tap - use "jtag newtap auto0 tap -expected-id 0x0f24c043
>> ..."
>> Warn : AUTO auto0.tap - use "... -irlen 2"
>> Error: auto0.tap: IR capture error; saw 0x0003 not 0x0001
>> Info : JTAG tap: auto0.tap tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: auto0.tap: IR capture error; saw 0x0003 not 0x0001
>> Command handler execution failed
>> Warn : jtag initialization failed; try 'jtag init' again.
>> Warn : gdb services need one or more targets defined
>> ------
>>
>> So,it helps a little, suggesting to try -irlen 2  - I changed -irmask
>> from 0xf to 0x3 consequentially.
>>
>> jtag newtap $_CHIPNAME cpu -irlen 2 -ircapture 0x1 -irmask 0x3
>> -expected-id $_CPUTAPID
>>
>> now the output is
>> --------
>>
>> $ openocd
>> Open On-Chip Debugger 0.4.0 (2010-12-02-11:35)
>> Licensed under GNU GPL v2
>> For bug reports, read
>>        http://openocd.berlios.de/doc/doxygen/bugs.html
>> trst_and_srst separate srst_gates_jtag trst_push_pull srst_open_drain
>> jtag_nsrst_delay: 100
>> jtag_ntrst_delay: 100
>> Info : device: 6 "2232H"
>> Info : deviceID: 67358712
>> Info : SerialNumber: 53SDIXUSA
>> Info : Description: Amontec JTAGkey-2 A
>> Info : max TCK change to: 30000 kHz
>> Info : clock speed 30000 kHz
>> Info : JTAG tap: netx500.cpu tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: netx500.cpu: IR capture error; saw 0x0003 not 0x0001
>> Info : JTAG tap: netx500.cpu tap/device found: 0x0f24c043 (mfg: 0x021,
>> part: 0xf24c, ver: 0x0)
>> Error: netx500.cpu: IR capture error; saw 0x0003 not 0x0001
>> Command handler execution failed
>> Warn : jtag initialization failed; try 'jtag init' again.
>> ------
>>
>> I see no differences from -irlen 4 and -irlen 2 -
>>
>> Error: netx500.cpu: IR capture error; saw 0x0003 not 0x0001
>>
>> is still here :( and I have no further ideas about how to solve it.
>> Helppppppp!!!
>>
>> Massimo
>>
>
> First reduce your jtag frequency.
> The 30MHz TCK frequency is certainly too high for your target board.
> Try with 6MHZ or 1MHz.
>
> Regards,
> Laurent Gauch
> http://www.amotnec.com
> _______________________________________________
> Openocd-development mailing list
> [email protected]
> https://lists.berlios.de/mailman/listinfo/openocd-development
>
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to