diff --git a/tcl/target/xmc4xxx.cfg b/tcl/target/xmc4xxx.cfg new file mode 100644 index 000000000..34f0327fd --- /dev/null +++ b/tcl/target/xmc4xxx.cfg @@ -0,0 +1,46 @@ +# +# 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 + +if { ![using_hla] } { + cortex_m reset_config sysresetreq +} + +adapter_khz 1000