2015-01-18 00:14:13 -06:00
|
|
|
#
|
|
|
|
# Infineon XMC4100/XMC4200/XMC4400/XMC4500 family (ARM Cortex-M4 @ 80-120 MHz)
|
|
|
|
#
|
|
|
|
|
|
|
|
if { [info exists CHIPNAME] } {
|
|
|
|
set _CHIPNAME $CHIPNAME
|
|
|
|
} else {
|
|
|
|
set _CHIPNAME xmc4000
|
|
|
|
}
|
|
|
|
|
|
|
|
source [find target/swj-dp.tcl]
|
|
|
|
|
|
|
|
#
|
|
|
|
# SWJ-DP
|
|
|
|
#
|
|
|
|
if { [info exists CPU_JTAG_TAPID] } {
|
|
|
|
set _CPU_JTAG_TAPID $CPU_JTAG_TAPID
|
|
|
|
} else {
|
|
|
|
set _CPU_JTAG_TAPID 0x4BA00477
|
|
|
|
}
|
|
|
|
|
|
|
|
#
|
|
|
|
# SW_DP
|
|
|
|
#
|
|
|
|
if { [info exists CPU_SWD_TAPID] } {
|
|
|
|
set _CPU_SWD_TAPID $CPU_SWD_TAPID
|
|
|
|
} else {
|
|
|
|
set _CPU_SWD_TAPID 0x2BA01477
|
|
|
|
}
|
|
|
|
|
|
|
|
if { [using_jtag] } {
|
|
|
|
set _CPU_TAPID $_CPU_JTAG_TAPID
|
|
|
|
} else {
|
|
|
|
set _CPU_TAPID $_CPU_SWD_TAPID
|
|
|
|
}
|
|
|
|
|
|
|
|
swj_newdap $_CHIPNAME cpu -irlen 4 -expected-id $_CPU_TAPID
|
|
|
|
|
|
|
|
set _TARGETNAME $_CHIPNAME.cpu
|
|
|
|
target create $_TARGETNAME cortex_m -chain-position $_TARGETNAME
|
|
|
|
|
2015-01-21 20:57:59 -06:00
|
|
|
# Work-area is a space in RAM used for flash programming
|
|
|
|
# By default use 16 kB
|
|
|
|
if { [info exists WORKAREASIZE] } {
|
|
|
|
set _WORKAREASIZE $WORKAREASIZE
|
|
|
|
} else {
|
|
|
|
set _WORKAREASIZE 0x1000
|
|
|
|
}
|
|
|
|
|
|
|
|
$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0
|
|
|
|
|
|
|
|
set _FLASHNAME $_CHIPNAME.flash
|
|
|
|
flash bank $_FLASHNAME xmc4xxx 0x0C000000 0 0 0 $_TARGETNAME
|
|
|
|
|
2015-01-18 00:14:13 -06:00
|
|
|
if { ![using_hla] } {
|
|
|
|
cortex_m reset_config sysresetreq
|
|
|
|
}
|
|
|
|
|
|
|
|
adapter_khz 1000
|