From cae270a1749bd27264037619e7feeed67b62e187 Mon Sep 17 00:00:00 2001 From: Billy Laws Date: Sun, 9 Aug 2020 14:46:50 +0100 Subject: [PATCH] Use nvhost fences in IHOSBinderDriver --- .../cpp/skyline/services/hosbinder/IHOSBinderDriver.cpp | 5 +++-- .../cpp/skyline/services/hosbinder/IHOSBinderDriver.h | 8 -------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.cpp b/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.cpp index 81c0f5b4..f581f209 100644 --- a/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.cpp +++ b/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include #include "IHOSBinderDriver.h" #include "display.h" @@ -70,7 +71,7 @@ namespace skyline::service::hosbinder { u32 stickyTransform; u64 _unk0_; u32 swapInterval; - Fence fence[4]; + nvdrv::Fence fence[4]; } *data = reinterpret_cast(in.data.data()); auto buffer = queue.at(data->slot); @@ -104,7 +105,7 @@ namespace skyline::service::hosbinder { void IHOSBinderDriver::CancelBuffer(Parcel &parcel) { struct Data { u32 slot; - Fence fence[4]; + nvdrv::Fence fence[4]; } *data = reinterpret_cast(parcel.data.data()); FreeBuffer(data->slot); state.logger->Debug("CancelBuffer: Slot: {}", data->slot); diff --git a/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.h b/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.h index df4f1250..62de6b9d 100644 --- a/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.h +++ b/app/src/main/cpp/skyline/services/hosbinder/IHOSBinderDriver.h @@ -31,14 +31,6 @@ namespace skyline::service::hosbinder { SetPreallocatedBuffer = 14, //!< No source on this but it's used to set a existing buffer according to libtransistor and libNX }; - /** - * @brief This represents conditions for the completion of an asynchronous graphics operation - */ - struct Fence { - u32 syncptId; //!< The ID of the syncpoint - u32 syncptValue; //!< The value of the syncpoint - }; - /** * @brief nvnflinger:dispdrv or nns::hosbinder::IHOSBinderDriver is responsible for writing buffers to the display */