From b2eb75b8d22c10edc3d228ff24a9cd785717855d Mon Sep 17 00:00:00 2001
From: Yaman Umuroglu <maltanar@gmail.com>
Date: Sun, 30 Aug 2020 17:16:54 +0200
Subject: [PATCH] [Driver] common flush/invalidate for all platforms

---
 src/finn/transformation/fpgadataflow/templates.py | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/finn/transformation/fpgadataflow/templates.py b/src/finn/transformation/fpgadataflow/templates.py
index 2eb738023..5a4ee2c7d 100644
--- a/src/finn/transformation/fpgadataflow/templates.py
+++ b/src/finn/transformation/fpgadataflow/templates.py
@@ -150,8 +150,8 @@ class FINNAccelDriver():
             raise ValueError("Supported platforms are zynq zynq-iodma alveo")
 
         # allocate a PYNQ buffer for the packed input and buffer
-        self.ibuf_packed_device = allocate(shape=self.ishape_packed, dtype=np.uint8)
-        self.obuf_packed_device = allocate(shape=self.oshape_packed, dtype=np.uint8)
+        self.ibuf_packed_device = allocate(shape=self.ishape_packed, dtype=np.uint8, cacheable=True)
+        self.obuf_packed_device = allocate(shape=self.oshape_packed, dtype=np.uint8, cacheable=True)
 
     def fold_input(self, ibuf_normal):
         \"\"\"Reshapes input in desired shape.
@@ -188,13 +188,11 @@ class FINNAccelDriver():
     def copy_input_data_to_device(self, data):
         \"\"\"Copies given input data to PYNQ buffer.\"\"\"
         np.copyto(self.ibuf_packed_device, data)
-        if self.platform == "alveo":
-            self.ibuf_packed_device.sync_to_device()
+        self.ibuf_packed_device.flush()
 
     def copy_output_data_from_device(self, data):
         \"\"\"Copies PYNQ output buffer from device.\"\"\"
-        if self.platform == "alveo":
-            self.obuf_packed_device.sync_from_device()
+        self.obuf_packed_device.invalidate()
         np.copyto(data, self.obuf_packed_device)
 
     def execute(self):
-- 
GitLab