summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nvflinger
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-04-12 17:44:48 +0200
committerGitHub <noreply@github.com>2020-04-12 17:44:48 +0200
commita9f866264dd80aa7115e54404093a7666c425c55 (patch)
tree594a37578141e3db010dc02ba90c5c4776003622 /src/core/hle/service/nvflinger
parentMerge pull request #3578 from ReinUsesLisp/vmnmx (diff)
parentservice/vi: Partially implement BufferQueue disconnect (diff)
downloadyuzu-a9f866264dd80aa7115e54404093a7666c425c55.tar
yuzu-a9f866264dd80aa7115e54404093a7666c425c55.tar.gz
yuzu-a9f866264dd80aa7115e54404093a7666c425c55.tar.bz2
yuzu-a9f866264dd80aa7115e54404093a7666c425c55.tar.lz
yuzu-a9f866264dd80aa7115e54404093a7666c425c55.tar.xz
yuzu-a9f866264dd80aa7115e54404093a7666c425c55.tar.zst
yuzu-a9f866264dd80aa7115e54404093a7666c425c55.zip
Diffstat (limited to 'src/core/hle/service/nvflinger')
-rw-r--r--src/core/hle/service/nvflinger/buffer_queue.cpp7
-rw-r--r--src/core/hle/service/nvflinger/buffer_queue.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/core/hle/service/nvflinger/buffer_queue.cpp b/src/core/hle/service/nvflinger/buffer_queue.cpp
index 9bcafa5fc..f1e3d832a 100644
--- a/src/core/hle/service/nvflinger/buffer_queue.cpp
+++ b/src/core/hle/service/nvflinger/buffer_queue.cpp
@@ -126,6 +126,13 @@ void BufferQueue::ReleaseBuffer(u32 slot) {
buffer_wait_event.writable->Signal();
}
+void BufferQueue::Disconnect() {
+ queue.clear();
+ queue_sequence.clear();
+ id = 1;
+ layer_id = 1;
+}
+
u32 BufferQueue::Query(QueryType type) {
LOG_WARNING(Service, "(STUBBED) called type={}", static_cast<u32>(type));
diff --git a/src/core/hle/service/nvflinger/buffer_queue.h b/src/core/hle/service/nvflinger/buffer_queue.h
index f674823b0..d5f31e567 100644
--- a/src/core/hle/service/nvflinger/buffer_queue.h
+++ b/src/core/hle/service/nvflinger/buffer_queue.h
@@ -87,6 +87,7 @@ public:
Service::Nvidia::MultiFence& multi_fence);
std::optional<std::reference_wrapper<const Buffer>> AcquireBuffer();
void ReleaseBuffer(u32 slot);
+ void Disconnect();
u32 Query(QueryType type);
u32 GetId() const {