From d9dcc0c06eddeeaaa716c063b6be2b06cd2c3b08 Mon Sep 17 00:00:00 2001 From: Kai-Bjoern Gemlau Date: Fri, 29 May 2020 12:00:58 +0200 Subject: [PATCH] Updated bitfile and tcl script for offchip tracing, updated startup script to use random port number --- Debug/ps7/base_zynq_wrapper.bit | Bin 1389003 -> 1587774 bytes Debug/ps7/ps7_init.tcl | 51 +++++++++++++++++++++++----------------- Debug/ps7/start_amp_session.sh | 4 +--- 3 files changed, 31 insertions(+), 24 deletions(-) diff --git a/Debug/ps7/base_zynq_wrapper.bit b/Debug/ps7/base_zynq_wrapper.bit index 291360955a5d0ac09328f3e1cf695d38401bf1d0..cc128b28e861fa9a9cc5e9f25b47887b747cc249 100644 GIT binary patch delta 32886 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 G{Qm(-@}!3V delta 10007 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