break from long loops on shutdown request
[openocd.git] / tcl / target / dsp568037.cfg
blob5d868111b414da26188d679e20d79f7200a170c5
1 # SPDX-License-Identifier: GPL-2.0-or-later
3 # Script for freescale DSP568037
5 if { [info exists CHIPNAME] } {
6    set _CHIPNAME $CHIPNAME
7 } else {
8    set _CHIPNAME dsp568037
11 if { [info exists ENDIAN] } {
12    set _ENDIAN $ENDIAN
13 } else {
14   # this defaults to a big endian
15    set _ENDIAN little
18 if { [info exists CPUTAPID] } {
19    set _CPUTAPID $CPUTAPID
20 } else {
21    set _CPUTAPID 0x01f2801d
24 #jtag speed
25 adapter speed 800
27 reset_config srst_only
29 #MASTER tap
30 jtag newtap $_CHIPNAME chp -irlen 8 -ircapture 1 -irmask 0x03 -expected-id $_CPUTAPID
32 #CORE tap
33 jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 1 -irmask 0x03 -disable -expected-id 0x02211004
35 #target configuration - There is only 1 tap at a time, hence only 1 target is defined.
36 set _TARGETNAME $_CHIPNAME.cpu
37 target create $_TARGETNAME dsp5680xx -endian $_ENDIAN -chain-position $_TARGETNAME
39 # Setup the interesting tap
40 jtag configure $_CHIPNAME.chp -event setup "jtag tapenable $_TARGETNAME"
42 #select CORE tap by modifying the TLM register.
43 #to be used when MASTER tap is selected.
44 jtag configure $_TARGETNAME -event tap-enable "
45      irscan $_CHIPNAME.chp 0x05;
46      drscan $_CHIPNAME.chp 4 0x02;
47      jtag tapdisable $_CHIPNAME.chp;
50 #select MASTER tap by modifying the TLM register.
51 #to be used when CORE tap is selected.
52 jtag configure $_CHIPNAME.chp -event tap-enable "
53      irscan $_TARGETNAME 0x08;
54      drscan $_TARGETNAME 4 0x1;
55      jtag tapdisable $_TARGETNAME;
58 #disables the master tap
59 jtag configure $_TARGETNAME -event tap-disable "
61 #TODO FIND SMARTER WAY.
63 jtag configure $_CHIPNAME.chp -event tap-disable "
65 #TODO FIND SMARTER WAY.
68 #working area at base of ram
69 $_TARGETNAME configure -work-area-virt 0
71 #setup flash
72 set _FLASHNAME $_CHIPNAME.flash
73 flash bank $_FLASHNAME dsp5680xx_flash 0 0 2 1 $_TARGETNAME