tcl/target: Add config for TI MSP432P4xx
authorAndreas Färber <afaerber@suse.de>
Mon, 16 May 2016 01:05:44 +0000 (03:05 +0200)
committerFreddie Chopin <freddie.chopin@gmail.com>
Fri, 20 May 2016 20:40:44 +0000 (21:40 +0100)
Tested with TI MSP-EXP432P401R LaunchPad, via both on-board XDS110-ET (swd)
and external J-Link (jtag).

Change-Id: Ic0caa8516a155754b1c88a04acc8d3c511d9a5f7
Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-on: http://openocd.zylin.com/3485
Tested-by: jenkins
Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
tcl/target/ti_msp432p4xx.cfg [new file with mode: 0644]

diff --git a/tcl/target/ti_msp432p4xx.cfg b/tcl/target/ti_msp432p4xx.cfg
new file mode 100644 (file)
index 0000000..8600867
--- /dev/null
@@ -0,0 +1,52 @@
+#
+# Texas Instruments MSP432P4xx - ARM Cortex-M4F @ up to 48 MHz
+#
+# http://www.ti.com/MSP432
+#
+
+if { [info exists CHIPNAME] } {
+       set _CHIPNAME $CHIPNAME
+} else {
+       set _CHIPNAME msp432p4xx
+}
+
+if { [info exists CPUTAPID] } {
+       set _DAP_TAPID $CPUTAPID
+} else {
+       set _DAP_TAPID 0x4ba00477
+}
+
+if { [info exists DAP_SWD_ID] } {
+       set _DAP_SWD_ID $DAP_SWD_ID
+} else {
+       set _DAP_SWD_ID 0x2ba01477
+}
+
+source [find target/swj-dp.tcl]
+
+if { [using_jtag] } {
+       set _DAP_ID $_DAP_TAPID
+} else {
+       set _DAP_ID $_DAP_SWD_ID
+}
+
+swj_newdap $_CHIPNAME cpu -irlen 4 -expected-id $_DAP_ID
+
+set _TARGETNAME $_CHIPNAME.cpu
+target create $_TARGETNAME cortex_m -chain-position $_TARGETNAME
+
+if { [info exists WORKAREASIZE] } {
+       set _WORKAREASIZE $WORKAREASIZE
+} else {
+       # On MSP432P401x Bank0 (8k) is always powered
+       set _WORKAREASIZE 0x2000
+}
+
+$_TARGETNAME configure -work-area-phys 0x20000000 \
+                       -work-area-size $_WORKAREASIZE -work-area-backup 0
+
+if { ![using_hla] } {
+       cortex_m reset_config sysresetreq
+}
+
+adapter_khz 500