|
|
@@ -0,0 +1,48 @@ |
|
|
|
# |
|
|
|
# Freescale Kinetis KL46 devices |
|
|
|
# |
|
|
|
|
|
|
|
# |
|
|
|
# KL46 devices supports SWD transport only. |
|
|
|
# |
|
|
|
source [find target/swj-dp.tcl] |
|
|
|
|
|
|
|
if { [info exists CHIPNAME] } { |
|
|
|
set _CHIPNAME $CHIPNAME |
|
|
|
} else { |
|
|
|
set _CHIPNAME kl46 |
|
|
|
} |
|
|
|
|
|
|
|
if { [info exists ENDIAN] } { |
|
|
|
set _ENDIAN $ENDIAN |
|
|
|
} else { |
|
|
|
set _ENDIAN little |
|
|
|
} |
|
|
|
|
|
|
|
# Work-area is a space in RAM used for flash programming |
|
|
|
# By default use 4kB |
|
|
|
if { [info exists WORKAREASIZE] } { |
|
|
|
set _WORKAREASIZE $WORKAREASIZE |
|
|
|
} else { |
|
|
|
set _WORKAREASIZE 0x1000 |
|
|
|
} |
|
|
|
|
|
|
|
if { [info exists CPUTAPID] } { |
|
|
|
set _CPUTAPID $CPUTAPID |
|
|
|
} else { |
|
|
|
set _CPUTAPID 0x0bc11477 |
|
|
|
} |
|
|
|
|
|
|
|
swj_newdap $_CHIPNAME cpu -irlen 4 -expected-id $_CPUTAPID |
|
|
|
|
|
|
|
set _TARGETNAME $_CHIPNAME.cpu |
|
|
|
target create $_TARGETNAME cortex_m -endian $_ENDIAN -chain-position $_CHIPNAME.cpu |
|
|
|
|
|
|
|
$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0 |
|
|
|
|
|
|
|
set _FLASHNAME $_CHIPNAME.flash |
|
|
|
flash bank $_FLASHNAME kinetis 0 0 0 0 $_TARGETNAME |
|
|
|
|
|
|
|
# if srst is not fitted use SYSRESETREQ to |
|
|
|
# perform a soft reset |
|
|
|
cortex_m reset_config sysresetreq |