forked from M-Labs/zynq-rs
50 lines
1005 B
INI
50 lines
1005 B
INI
source [find interface/ftdi/digilent-hs1.cfg]
|
|
source [find target/zynq_7000.cfg]
|
|
|
|
set _TARGETNAME_0 "zynq.cpu0"
|
|
set _TARGETNAME_1 "zynq.cpu1"
|
|
set _SMP 1
|
|
|
|
proc zynq_restart { wait } {
|
|
global _SMP
|
|
global _TARGETNAME_0
|
|
global _TARGETNAME_1
|
|
set target0 $_TARGETNAME_0
|
|
set target1 $_TARGETNAME_1
|
|
echo "Zynq reset, resetting the board ... "
|
|
poll off
|
|
#
|
|
# Issue the reset via the SLCR
|
|
#
|
|
catch {
|
|
mww phys 0xF8000008 0xDF0D
|
|
mww phys 0xF8000200 1
|
|
}
|
|
echo "Zynq reset waiting for $wait msecs ... "
|
|
sleep $wait
|
|
#
|
|
# Reconnect the DAP etc due to the reset.
|
|
#
|
|
$target0 cortex_a dbginit
|
|
$target0 arm core_state arm
|
|
if { $_SMP } {
|
|
$target1 arm core_state arm
|
|
$target1 cortex_a dbginit
|
|
cortex_a smp_off
|
|
}
|
|
poll on
|
|
#
|
|
# We can now halt the core.
|
|
#
|
|
if { $_SMP } {
|
|
targets $target1
|
|
halt
|
|
}
|
|
targets $target0
|
|
halt
|
|
#zynq_rtems_setup
|
|
}
|
|
|
|
init
|
|
zynq_restart 100
|