openocd/tcl/target/at91sam3uXX.cfg

48 lines
985 B
INI

# 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 $_CHIPNAME.cpu
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
}