]> git.sur5r.net Git - openocd/blob - src/tcl/target/stm32.cfg
Move TCL script files -- Step 1 of 2:
[openocd] / src / tcl / target / stm32.cfg
1 # script for stm32
2
3 if { [info exists CHIPNAME] } { 
4    set  _CHIPNAME $CHIPNAME    
5 } else {         
6    set  _CHIPNAME stm32
7 }
8
9 if { [info exists ENDIAN] } {   
10    set  _ENDIAN $ENDIAN    
11 } else {         
12    set  _ENDIAN little
13 }
14
15 # jtag speed
16 jtag_khz 500
17
18 jtag_nsrst_delay 100
19 jtag_ntrst_delay 100
20
21 #use combined on interfaces or targets that can't set TRST/SRST separately
22 reset_config trst_and_srst
23
24 #jtag scan chain
25 if { [info exists CPUTAPID ] } {
26    set _CPUTAPID $CPUTAPID
27 } else {
28   # See STM Document RM0008
29   # Section 26.6.3
30    set _CPUTAPID 0x3ba00477
31 }
32 jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
33
34 if { [info exists BSTAPID ] } {
35    set _BSTAPID $BSTAPID
36 } else {
37   # See STM Document RM0008
38   # Section 26.6.2
39   # Low density devices, Rev A
40   set _BSTAPID1 0x06412041
41   # Medium density devices, Rev A
42   set _BSTAPID2 0x06410041
43   # Medium density devices, Rev B and Rev Z
44   set _BSTAPID3 0x16410041
45   # High density devices, Rev A
46   set _BSTAPID4 0x06414041
47 }   
48 jtag newtap $_CHIPNAME bs  -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID1 -expected-id $_BSTAPID2 -expected-id $_BSTAPID3 -expected-id $_BSTAPID4
49
50 set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
51 target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME
52
53 $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 16384 -work-area-backup 0
54
55 flash bank stm32x 0 0 0 0 0
56
57 # For more information about the configuration files, take a look at:
58 # openocd.texi