From 960e7d1d4e3492f03b2dcd8532f05a802a1f3412 Mon Sep 17 00:00:00 2001 From: Filip Leonarski Date: Tue, 25 Apr 2023 21:14:40 +0200 Subject: [PATCH] FPGAAcquisitionDevice: Handle signaling work request done --- receiver/host/AcquisitionDevice.cpp | 2 -- receiver/host/FPGAAcquisitionDevice.cpp | 4 ++++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/receiver/host/AcquisitionDevice.cpp b/receiver/host/AcquisitionDevice.cpp index 1d3ee51b..8df7bf49 100644 --- a/receiver/host/AcquisitionDevice.cpp +++ b/receiver/host/AcquisitionDevice.cpp @@ -327,8 +327,6 @@ void AcquisitionDevice::SendWorkRequestThread() { } handle = work_request_queue.GetBlocking(); } - while (!HW_SendWorkRequest(UINT32_MAX)) - std::this_thread::sleep_for(std::chrono::microseconds(10)); } void AcquisitionDevice::FrameBufferRelease(size_t frame_number, uint16_t module_number) { diff --git a/receiver/host/FPGAAcquisitionDevice.cpp b/receiver/host/FPGAAcquisitionDevice.cpp index e838eb6a..d69747f1 100644 --- a/receiver/host/FPGAAcquisitionDevice.cpp +++ b/receiver/host/FPGAAcquisitionDevice.cpp @@ -10,6 +10,10 @@ void FPGAAcquisitionDevice::HW_StartAction() { void FPGAAcquisitionDevice::HW_EndAction() { read_work_completion_future.get(); + + while (!HW_SendWorkRequest(UINT32_MAX)) + std::this_thread::sleep_for(std::chrono::microseconds(10)); + FPGA_EndAction(); }