SWDEV-245532 - HIP - Vulkan interop semaphores

Change-Id: Ib79328ce4ec2f8ac3aade59fde4fd30e2d6e5cba
This commit is contained in:
pghafari
2021-04-22 19:24:30 -04:00
committato da Payam Ghafari
parent 4656d2d1e1
commit 582d12b32f
8 ha cambiato i file con 91 aggiunte e 0 eliminazioni
+17
Vedi File
@@ -42,6 +42,7 @@
#include <thread>
#include "palQueue.h"
#include "palFence.h"
#include "palQueueSemaphore.h"
#ifdef _WIN32
#include <d3d10_1.h>
@@ -2639,6 +2640,22 @@ void VirtualGPU::submitMarker(amd::Marker& vcmd) {
}
}
void VirtualGPU::submitExternalSemaphoreCmd(amd::ExternalSemaphoreCmd& cmd) {
const Pal::IQueueSemaphore* sem = reinterpret_cast<const Pal::IQueueSemaphore*>(cmd.sem_ptr());
if (cmd.semaphoreCmd() ==
amd::ExternalSemaphoreCmd::COMMAND_SIGNAL_EXTSEMAPHORE) {
queues_[MainEngine]->iQueue_->SignalQueueSemaphore(const_cast<Pal::IQueueSemaphore*>(sem),
cmd.fence());
} else {
queues_[MainEngine]->iQueue_->WaitQueueSemaphore(const_cast<Pal::IQueueSemaphore*>(sem),
cmd.fence());
}
}
void VirtualGPU::releaseMemory(GpuMemoryReference* mem) {
queues_[MainEngine]->removeCmdMemRef(mem);
if (!dev().settings().disableSdma_) {