Hi All,
I want to define new target for XC9536xl. its a Xilinx CPLD.

for that i have added following line to configuration file.
--------------------------------------------------------------------------
set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position
$_TARGETNAME

(01)cortex_m3 is define above is called "Target type".In OpenOCD
following          predefined types for target definition are
available
---------------------------------------------------------------------------------------------------
arm7tdmi arm9tdmi arm920t arm720t arm966e arm946e arm926ejs fa526
feroceon dragonite xscale cortex_m3 cortex_a8 arm11 mips_m4k avr
dsp563xx testee avr32_ap7k

(02)So what is the target type i have used for XC9536XL cpld?

because of the above problem i just selected target type as cortex_m3 as follows
---------------------------------------------------------------------------------------------------------
set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position
$_TARGETNAME

 when i execute "targets" command in openocd telnet console. targets
output will be as follows
---------------------------------------------------------------------------------------------------------
> targets
    TargetName         Type       Endian TapName            State
--  ------------------ ---------- ------ ------------------ ------------
 0* xc9536xl.cpu       cortex_m3  little xc9536xl.cpu       unknown


(03)cortex_m3 is arm type processor it may have states such as
stop,running like wise. but XC9536xl is a complex programmable logic
device(CPLD may or may not have states. i dont know much about this in
openocd point of view). Some times its possible to embed arm core to
CPLD's. in that case there may be states available for CPLD.otherwise
its  define state for target?am i correct or wrong. please give ure
suggestions.


configuration file i wrote for XC9536XL is as follows:
--------------------------------------------------------------------------------------------------------

set  _CHIPNAME xc9536xl


if { [info exists ENDIAN] } {
   set  _ENDIAN $ENDIAN
} else {
   set  _ENDIAN little
}

# JTAG speed should be <= F_CPU/6. F_CPU after reset is 8MHz, so use
F_JTAG = 1MHz
adapter_khz 1000

adapter_nsrst_delay 100
jtag_ntrst_delay 100

#jtag scan chain
if { [info exists CPUTAPID ] } {
   set _CPUTAPID $CPUTAPID
} else {
  # See STM Document RM0008
  # Section 26.6.3
   set _CPUTAPID 0x59604093
}
jtag newtap $_CHIPNAME cpu -irlen 8 -ircapture 0x01 -irmask 0xff
-expected-id $_CPUTAPID

set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position
$_TARGETNAME




(04)when i running OpenOCD server with above configuration file
without any modifications,output message below line is displayed again
and again in the OpenOCD server console
Polling target failed, GDB will be halted. Polling again in 6300ms

following output is observed for the above case:(04)
-----------------------------------------------------------------------------------------------------
nuwan@nuwan-laptop:~/Desktop/configfiletesting$ openocd -f
buspirate.cfg -f xcc.cfg
Open On-Chip Debugger 0.5.0 (2012-06-29-10:26)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.berlios.de/doc/doxygen/bugs.html
Warn : Adapter driver 'buspirate' did not declare which transports it
allows; assuming legacy JTAG-only
Info : only one transport option; autoselect 'jtag'
RCLK - adaptive
srst_only separate srst_gates_jtag srst_open_drain
1000 kHz
adapter_nsrst_delay: 100
jtag_ntrst_delay: 100
xc9536xl.cpu
Info : Buspirate Interface ready!
Info : Want to set speed to 1000kHz, but not implemented yet
Error: Translation from jtag_speed to khz not implemented
Info : adapter-specific clock speed value 1000
Info : JTAG tap: xc9536xl.cpu tap/device found: 0x59604093 (mfg:
0x049, part: 0x9604, ver: 0x5)
Warn : Invalid ACK 0x6 in JTAG-DP transaction
Polling target failed, GDB will be halted. Polling again in 100ms
Polling target failed, GDB will be halted. Polling again in 300ms
Polling target failed, GDB will be halted. Polling again in 700ms
Polling target failed, GDB will be halted. Polling again in 1500ms
Polling target failed, GDB will be halted. Polling again in 3100ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms
Polling target failed, GDB will be halted. Polling again in 6300ms





with out last two lines of the configuration file(
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position
$_TARGETNAME)

server output will be follows;
-----------------------------------------------------------------------------------------------------
nuwan@nuwan-laptop:~/Desktop/configfiletesting$ openocd -f
buspirate.cfg -f xcc.cfg
Open On-Chip Debugger 0.5.0 (2012-06-29-10:26)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.berlios.de/doc/doxygen/bugs.html
Warn : Adapter driver 'buspirate' did not declare which transports it
allows; assuming legacy JTAG-only
Info : only one transport option; autoselect 'jtag'
RCLK - adaptive
srst_only separate srst_gates_jtag srst_open_drain
1000 kHz
adapter_nsrst_delay: 100
jtag_ntrst_delay: 100
Info : Buspirate Interface ready!
Info : Want to set speed to 1000kHz, but not implemented yet
Error: Translation from jtag_speed to khz not implemented
Info : adapter-specific clock speed value 1000
Info : JTAG tap: xc9536xl.cpu tap/device found: 0x59604093 (mfg:
0x049, part: 0x9604, ver: 0x5)
Warn : gdb services need one or more targets defined


so i think i made a mistake in target configuraiton.This Question is
bit longer sorry about this.Please help meeeeeeeeeeee!!!!!!!!!!!! Open
OCD Experts Help me.................



Thank you so much

Nuwan

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to