stm32w: add STM32w108xx generic configuration
[fw/openocd] / tcl / target / stm32w108xx.cfg
1 #
2 # Target configuration for the ST STM32W108xx chips
3 #
4 # Processor: ARM Cortex M3
5 # Date:      2013-06-09
6 # Author:    Giuseppe Barba <giuseppe.barba@gmail.com>
7
8 if { [info exists CHIPNAME] == 0 } {
9    set _CHIPNAME stm32w108
10 } else {
11    set _CHIPNAME $CHIPNAME
12 }
13
14 # Work-area is a space in RAM used for flash programming
15 # By default use 8kB
16 if { [info exists WORKAREASIZE] } {
17    set _WORKAREASIZE $WORKAREASIZE
18 } else {
19    set _WORKAREASIZE 0x2000
20 }
21
22 if { [info exists CPUTAPID] } {
23    set _CPUTAPID $CPUTAPID
24 } else {
25    set _CPUTAPID 0x3ba00477
26 }
27
28 if { [info exists ENDIAN] } {
29    set _ENDIAN $ENDIAN
30 } else {
31    set _ENDIAN little
32 }
33
34 jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
35
36 if { [info exists BSTAPID] } {
37    set _BSTAPID $BSTAPID
38    jtag newtap $_CHIPNAME bs -irlen 4 -ircapture 0xe -irmask 0xf -expected-id 0x269a862b
39 } else {
40    set _BSTAPID_1 0x169a862b
41    set _BSTAPID_2 0x269a862b
42    jtag newtap $_CHIPNAME bs -irlen 4 -ircapture 0xe -irmask 0xf \
43                 -expected-id $_BSTAPID_1 -expected-id $_BSTAPID_2
44 }
45
46 #
47 # Set Target
48 #
49 set _TARGETNAME $_CHIPNAME.cpu
50 target create $_TARGETNAME cortex_m -endian $_ENDIAN -chain-position $_TARGETNAME
51 $_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0
52
53
54 # Use the flash driver from the EM357
55 set _FLASHNAME $_CHIPNAME.flash
56
57 # 64k (0x10000) of flash
58 flash bank $_FLASHNAME em357 0x08000000 0x10000 0 0 $_TARGETNAME
59
60 cortex_m reset_config sysresetreq
61