diff options
author | duane <duane@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-06-24 02:01:14 +0000 |
---|---|---|
committer | duane <duane@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-06-24 02:01:14 +0000 |
commit | 0ace4d24dbdaca219741338c8c9ecb61df8dc965 (patch) | |
tree | 9853f8a3b3e6ce73575b84db7f2550e302a1f87e /tcl | |
parent | 30814c29048f59b4f6e9f605ea5dfd9ee246dad9 (diff) | |
download | openocd_libswd-0ace4d24dbdaca219741338c8c9ecb61df8dc965.tar.gz openocd_libswd-0ace4d24dbdaca219741338c8c9ecb61df8dc965.tar.bz2 openocd_libswd-0ace4d24dbdaca219741338c8c9ecb61df8dc965.tar.xz openocd_libswd-0ace4d24dbdaca219741338c8c9ecb61df8dc965.zip |
Add support for ATMEL AT91SAM3U - CortexM3 Family
git-svn-id: svn://svn.berlios.de/openocd/trunk@2383 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'tcl')
-rwxr-xr-x | tcl/board/atmel_sam3u_ek.cfg | 1 | ||||
-rwxr-xr-x | tcl/target/at91sam3u1c.cfg | 7 | ||||
-rwxr-xr-x | tcl/target/at91sam3u1e.cfg | 7 | ||||
-rwxr-xr-x | tcl/target/at91sam3u2c.cfg | 7 | ||||
-rwxr-xr-x | tcl/target/at91sam3u2e.cfg | 7 | ||||
-rwxr-xr-x | tcl/target/at91sam3u4c.cfg | 9 | ||||
-rwxr-xr-x | tcl/target/at91sam3u4e.cfg | 9 | ||||
-rwxr-xr-x | tcl/target/at91sam3uXX.cfg | 47 |
8 files changed, 94 insertions, 0 deletions
diff --git a/tcl/board/atmel_sam3u_ek.cfg b/tcl/board/atmel_sam3u_ek.cfg new file mode 100755 index 00000000..53c8d348 --- /dev/null +++ b/tcl/board/atmel_sam3u_ek.cfg @@ -0,0 +1 @@ +source [find target/at91sam3u4e.cfg]
diff --git a/tcl/target/at91sam3u1c.cfg b/tcl/target/at91sam3u1c.cfg new file mode 100755 index 00000000..d338f305 --- /dev/null +++ b/tcl/target/at91sam3u1c.cfg @@ -0,0 +1,7 @@ +# common stuff +source [find target/at91sam3uxx.cfg] + +# size is automatically "calculated" by probing +flash bank at91sam3 0x000080000 0 1 1 $_TARGETNAME + + diff --git a/tcl/target/at91sam3u1e.cfg b/tcl/target/at91sam3u1e.cfg new file mode 100755 index 00000000..d338f305 --- /dev/null +++ b/tcl/target/at91sam3u1e.cfg @@ -0,0 +1,7 @@ +# common stuff +source [find target/at91sam3uxx.cfg] + +# size is automatically "calculated" by probing +flash bank at91sam3 0x000080000 0 1 1 $_TARGETNAME + + diff --git a/tcl/target/at91sam3u2c.cfg b/tcl/target/at91sam3u2c.cfg new file mode 100755 index 00000000..d338f305 --- /dev/null +++ b/tcl/target/at91sam3u2c.cfg @@ -0,0 +1,7 @@ +# common stuff +source [find target/at91sam3uxx.cfg] + +# size is automatically "calculated" by probing +flash bank at91sam3 0x000080000 0 1 1 $_TARGETNAME + + diff --git a/tcl/target/at91sam3u2e.cfg b/tcl/target/at91sam3u2e.cfg new file mode 100755 index 00000000..d338f305 --- /dev/null +++ b/tcl/target/at91sam3u2e.cfg @@ -0,0 +1,7 @@ +# common stuff +source [find target/at91sam3uxx.cfg] + +# size is automatically "calculated" by probing +flash bank at91sam3 0x000080000 0 1 1 $_TARGETNAME + + diff --git a/tcl/target/at91sam3u4c.cfg b/tcl/target/at91sam3u4c.cfg new file mode 100755 index 00000000..e8fdabab --- /dev/null +++ b/tcl/target/at91sam3u4c.cfg @@ -0,0 +1,9 @@ +# common stuff +source [find target/at91sam3uxx.cfg] + +# size is automatically "calculated" by probing +flash bank at91sam3 0x000080000 0 1 1 $_TARGETNAME +# This is a 256K chip, it has the 2nd bank +flash bank at91sam3 0x000100000 0 1 1 $_TARGETNAME + + diff --git a/tcl/target/at91sam3u4e.cfg b/tcl/target/at91sam3u4e.cfg new file mode 100755 index 00000000..9477ad00 --- /dev/null +++ b/tcl/target/at91sam3u4e.cfg @@ -0,0 +1,9 @@ +# common stuff +source [find target/at91sam3uxx.cfg] + +# size is automatically "calculated" by probing +flash bank at91sam3 0x000080000 0 1 1 $_TARGETNAME +# This is a 256K chip - it has the 2nd bank +flash bank at91sam3 0x000100000 0 1 1 $_TARGETNAME + + diff --git a/tcl/target/at91sam3uXX.cfg b/tcl/target/at91sam3uXX.cfg new file mode 100755 index 00000000..37f6b8ef --- /dev/null +++ b/tcl/target/at91sam3uXX.cfg @@ -0,0 +1,47 @@ +# script for ATMEL sam3, a CORTEX-M3 chip +# +# at91sam3u4e +# at91sam3u2e +# at91sam3u1e +# at91sam3u4c +# at91sam3u2c +# at91sam3u1c + +if { [info exists CHIPNAME] } { + set _CHIPNAME $CHIPNAME +} else { + set _CHIPNAME sam3 +} + +if { [info exists ENDIAN] } { + set _ENDIAN $ENDIAN +} else { + set _ENDIAN little +} + + +#jtag scan chain +if { [info exists CPUTAPID ] } { + set _CPUTAPID $CPUTAPID +} else { + set _CPUTAPID 0x4ba00477 +} + +jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID + +set _TARGETNAME [format "%s.cpu" $_CHIPNAME] +target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME + +# 16K is plenty, the smallest chip has this much +$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 16384 -work-area-backup 0 + +reset_config srst_only + +# GDB can use this +gdb_memory_map enable +# And GDB can flash the chip +gdb_flash_program enable + +$_TARGETNAME configure -event gdb-flash-erase-start { + halt +} |