summaryrefslogtreecommitdiff
path: root/tcl/target
diff options
context:
space:
mode:
authorSpencer Oliver <ntfreak@users.sourceforge.net>2010-03-08 22:54:18 +0000
committerSpencer Oliver <ntfreak@users.sourceforge.net>2010-03-10 21:03:22 +0000
commit257a764582f52235414b5c35717b0ee2b49d4b0d (patch)
treea27fc813a19942d0bee8c58fe170a9f838ea2294 /tcl/target
parentf10ed95a5ce6be416bcb2ec20826c6e508e4b622 (diff)
downloadopenocd+libswd-257a764582f52235414b5c35717b0ee2b49d4b0d.tar.gz
openocd+libswd-257a764582f52235414b5c35717b0ee2b49d4b0d.tar.bz2
openocd+libswd-257a764582f52235414b5c35717b0ee2b49d4b0d.tar.xz
openocd+libswd-257a764582f52235414b5c35717b0ee2b49d4b0d.zip
PIC32: add flash algorithm support
Add flash algorithm support for the PIC32MX. Still a few things todo but this dramatically decreases the programing time, eg. approx programming for 2.5k test file. - without fastload: 60secs - with fastload: 45secs - with fastload and algorithm: 2secs. Add new devices to supported list. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
Diffstat (limited to 'tcl/target')
-rw-r--r--tcl/target/pic32mx.cfg16
1 files changed, 12 insertions, 4 deletions
diff --git a/tcl/target/pic32mx.cfg b/tcl/target/pic32mx.cfg
index 1561d730..0f1fa66c 100644
--- a/tcl/target/pic32mx.cfg
+++ b/tcl/target/pic32mx.cfg
@@ -18,6 +18,14 @@ if { [info exists CPUTAPID ] } {
set _CPUTAPID 0x30938053
}
+# working area is 16384 - 2048
+# loose first 2048 bytes due to BMXDKPBA reg
+if { [info exists WORKAREASIZE] } {
+ set _WORKAREASIZE $WORKAREASIZE
+} else {
+ set _WORKAREASIZE [expr (16384 - 2048)]
+}
+
jtag_nsrst_delay 100
jtag_ntrst_delay 100
@@ -26,12 +34,12 @@ reset_config srst_only
#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
-jtag newtap $_CHIPNAME cpu -irlen 5 -ircapture 0x1 -irmask 0x1f -expected-id $_CPUTAPID
+jtag newtap $_CHIPNAME cpu -irlen 5 -ircapture 0x1 -irmask 0x1f -expected-id $_CPUTAPID
set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME mips_m4k -endian $_ENDIAN -chain-position $_TARGETNAME
-$_TARGETNAME configure -work-area-phys 0xa0000800 -work-area-size 16384 -work-area-backup 0
+$_TARGETNAME configure -work-area-phys 0xa0000800 -work-area-size $_WORKAREASIZE -work-area-backup 0
$_TARGETNAME configure -event reset-init {
#
@@ -50,9 +58,9 @@ $_TARGETNAME configure -event reset-init {
}
set _FLASHNAME $_CHIPNAME.flash
-flash bank $_FLASHNAME pic32mx 0xbd000000 0 0 0 $_TARGETNAME
+flash bank $_FLASHNAME pic32mx 0x1fc00000 0 0 0 $_TARGETNAME
set _FLASHNAME $_CHIPNAME.flash
-flash bank $_FLASHNAME pic32mx 0xbfc00000 0 0 0 $_TARGETNAME
+flash bank $_FLASHNAME pic32mx 0x1d000000 0 0 0 $_TARGETNAME
# For more information about the configuration files, take a look at:
# openocd.texi