zynq_7000: Add zynqpl_program command 77/4177/2
authorMoritz Fischer <moritz.fischer@ettus.com>
Wed, 5 Jul 2017 18:48:34 +0000 (11:48 -0700)
committerMatthias Welwarsky <matthias@welwarsky.de>
Sat, 27 Oct 2018 14:02:04 +0000 (15:02 +0100)
This allows for programming the PL part of the Xilinx Zynq 7000

Change-Id: I89e86c0f381951091f6948c46802d17d7f1f3500
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
Reviewed-on: http://openocd.zylin.com/4177
Tested-by: jenkins
Reviewed-by: Matthias Welwarsky <matthias@welwarsky.de>
tcl/target/zynq_7000.cfg

index 07a6c83..1562768 100644 (file)
@@ -27,3 +27,22 @@ adapter_khz 1000
 
 ${_TARGETNAME}0 configure -event reset-assert-post "cortex_a dbginit"
 ${_TARGETNAME}1 configure -event reset-assert-post "cortex_a dbginit"
+
+pld device virtex2 zynq_pl.bs 1
+
+set XC7_JSHUTDOWN 0x0d
+set XC7_JPROGRAM 0x0b
+set XC7_JSTART 0x0c
+set XC7_BYPASS 0x3f
+
+proc zynqpl_program {tap} {
+       global XC7_JSHUTDOWN XC7_JPROGRAM XC7_JSTART XC7_BYPASS
+       irscan $tap $XC7_JSHUTDOWN
+       irscan $tap $XC7_JPROGRAM
+       runtest 60000
+       #JSTART prevents this from working...
+       #irscan $tap $XC7_JSTART
+       runtest 2000
+       irscan $tap $XC7_BYPASS
+       runtest 2000
+}