flash: EFM32 flash implementation
[openocd.git] / tcl / target / efm32_stlink.cfg
1 #
2 # efm32 stlink pseudo target
3 #
4
5 if { [info exists CHIPNAME] } {
6    set _CHIPNAME $CHIPNAME
7 } else {
8    set _CHIPNAME efm32
9 }
10
11 # Work-area is a space in RAM used for flash programming
12 # By default use 16kB
13 if { [info exists WORKAREASIZE] } {
14    set _WORKAREASIZE $WORKAREASIZE
15 } else {
16    set _WORKAREASIZE 0x4000
17 }
18
19 if { [info exists CPUTAPID] } {
20    set _CPUTAPID $CPUTAPID
21 } else {
22    set _CPUTAPID 0x2ba01477
23 }
24
25 # EFM32 MCUs only support SW interface
26 set _TRANSPORT hla_swd
27
28 transport select $_TRANSPORT
29
30 hla newtap $_CHIPNAME cpu -expected-id $_CPUTAPID
31
32 set _TARGETNAME $_CHIPNAME.cpu
33 target create $_TARGETNAME hla_target -chain-position $_TARGETNAME
34
35 $_TARGETNAME configure -work-area-phys 0x10000000 -work-area-size $_WORKAREASIZE -work-area-backup 0
36
37 set _FLASHNAME $_CHIPNAME.flash
38 flash bank $_FLASHNAME efm32 0 0 0 0 $_TARGETNAME