}
# Work-area is a space in RAM used for flash programming
-# By default use 16kB
+# By default use 4kB (as found on some STM32F100s)
if { [info exists WORKAREASIZE] } {
set _WORKAREASIZE $WORKAREASIZE
} else {
- set _WORKAREASIZE 0x4000
+ set _WORKAREASIZE 0x1000
}
if { [info exists CPUTAPID] } {
set _CPUTAPID 0x1ba01477
}
-stlink newtap $_CHIPNAME cpu -expected-id $_CPUTAPID
+if { [info exists TRANSPORT] } {
+ set _TRANSPORT $TRANSPORT
+ if { $TRANSPORT == "hla_jtag" } {
+ if { [info exists CPUTAPID] == 0 } {
+ # jtag requires us to use the jtag tap id
+ set _CPUTAPID 0x3ba00477
+ }
+ }
+} else {
+ set _TRANSPORT hla_swd
+}
+
+# add deprecated transport name check
+if { $_TRANSPORT == "stlink_swd" } {
+ set _TRANSPORT "hla_swd"
+ echo "DEPRECATED! use 'hla_swd' transport not 'stlink_swd'"
+}
+
+if { $_TRANSPORT == "stlink_jtag" } {
+ set _TRANSPORT "hla_jtag"
+ echo "DEPRECATED! use 'hla_jtag' transport not 'stlink_jtag'"
+}
+# end deprecated checks
+
+#
+# possibles value are hla_swd or hla_jtag
+#
+transport select $_TRANSPORT
+
+hla newtap $_CHIPNAME cpu -expected-id $_CPUTAPID
set _TARGETNAME $_CHIPNAME.cpu
-target create $_TARGETNAME stm32_stlink -chain-position $_TARGETNAME
+target create $_TARGETNAME hla_target -chain-position $_TARGETNAME
$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0