Parcourir la source

hle: nvdrv: Rename Fence to NvFence to avoid naming conflicts.

bunnei il y a 4 ans
Parent
commit
402273d91b

+ 4 - 3
src/core/hle/service/nvdrv/devices/nvhost_gpu.cpp

@@ -187,7 +187,7 @@ NvResult nvhost_gpu::AllocateObjectContext(const std::vector<u8>& input, std::ve
     return NvResult::Success;
     return NvResult::Success;
 }
 }
 
 
-static std::vector<Tegra::CommandHeader> BuildWaitCommandList(Fence fence) {
+static std::vector<Tegra::CommandHeader> BuildWaitCommandList(NvFence fence) {
     return {
     return {
         Tegra::BuildCommandHeader(Tegra::BufferMethods::FenceValue, 1,
         Tegra::BuildCommandHeader(Tegra::BufferMethods::FenceValue, 1,
                                   Tegra::SubmissionMode::Increasing),
                                   Tegra::SubmissionMode::Increasing),
@@ -198,7 +198,8 @@ static std::vector<Tegra::CommandHeader> BuildWaitCommandList(Fence fence) {
     };
     };
 }
 }
 
 
-static std::vector<Tegra::CommandHeader> BuildIncrementCommandList(Fence fence, u32 add_increment) {
+static std::vector<Tegra::CommandHeader> BuildIncrementCommandList(NvFence fence,
+                                                                   u32 add_increment) {
     std::vector<Tegra::CommandHeader> result{
     std::vector<Tegra::CommandHeader> result{
         Tegra::BuildCommandHeader(Tegra::BufferMethods::FenceValue, 1,
         Tegra::BuildCommandHeader(Tegra::BufferMethods::FenceValue, 1,
                                   Tegra::SubmissionMode::Increasing),
                                   Tegra::SubmissionMode::Increasing),
@@ -213,7 +214,7 @@ static std::vector<Tegra::CommandHeader> BuildIncrementCommandList(Fence fence,
     return result;
     return result;
 }
 }
 
 
-static std::vector<Tegra::CommandHeader> BuildIncrementWithWfiCommandList(Fence fence,
+static std::vector<Tegra::CommandHeader> BuildIncrementWithWfiCommandList(NvFence fence,
                                                                           u32 add_increment) {
                                                                           u32 add_increment) {
     std::vector<Tegra::CommandHeader> result{
     std::vector<Tegra::CommandHeader> result{
         Tegra::BuildCommandHeader(Tegra::BufferMethods::WaitForInterrupt, 1,
         Tegra::BuildCommandHeader(Tegra::BufferMethods::WaitForInterrupt, 1,

+ 5 - 5
src/core/hle/service/nvdrv/devices/nvhost_gpu.h

@@ -109,7 +109,7 @@ private:
     static_assert(sizeof(IoctlGetErrorNotification) == 16,
     static_assert(sizeof(IoctlGetErrorNotification) == 16,
                   "IoctlGetErrorNotification is incorrect size");
                   "IoctlGetErrorNotification is incorrect size");
 
 
-    static_assert(sizeof(Fence) == 8, "Fence is incorrect size");
+    static_assert(sizeof(NvFence) == 8, "Fence is incorrect size");
 
 
     struct IoctlAllocGpfifoEx {
     struct IoctlAllocGpfifoEx {
         u32_le num_entries{};
         u32_le num_entries{};
@@ -127,7 +127,7 @@ private:
         u32_le num_entries{}; // in
         u32_le num_entries{}; // in
         u32_le flags{};       // in
         u32_le flags{};       // in
         u32_le unk0{};        // in (1 works)
         u32_le unk0{};        // in (1 works)
-        Fence fence_out{};    // out
+        NvFence fence_out{};  // out
         u32_le unk1{};        // in
         u32_le unk1{};        // in
         u32_le unk2{};        // in
         u32_le unk2{};        // in
         u32_le unk3{};        // in
         u32_le unk3{};        // in
@@ -153,13 +153,13 @@ private:
             BitField<4, 1, u32_le> suppress_wfi;  // suppress wait for interrupt
             BitField<4, 1, u32_le> suppress_wfi;  // suppress wait for interrupt
             BitField<8, 1, u32_le> increment;     // increment the returned fence
             BitField<8, 1, u32_le> increment;     // increment the returned fence
         } flags;
         } flags;
-        Fence fence_out{}; // returned new fence object for others to wait on
+        NvFence fence_out{}; // returned new fence object for others to wait on
 
 
         u32 AddIncrementValue() const {
         u32 AddIncrementValue() const {
             return flags.add_increment.Value() << 1;
             return flags.add_increment.Value() << 1;
         }
         }
     };
     };
-    static_assert(sizeof(IoctlSubmitGpfifo) == 16 + sizeof(Fence),
+    static_assert(sizeof(IoctlSubmitGpfifo) == 16 + sizeof(NvFence),
                   "IoctlSubmitGpfifo is incorrect size");
                   "IoctlSubmitGpfifo is incorrect size");
 
 
     struct IoctlGetWaitbase {
     struct IoctlGetWaitbase {
@@ -194,7 +194,7 @@ private:
 
 
     std::shared_ptr<nvmap> nvmap_dev;
     std::shared_ptr<nvmap> nvmap_dev;
     SyncpointManager& syncpoint_manager;
     SyncpointManager& syncpoint_manager;
-    Fence channel_fence;
+    NvFence channel_fence;
 };
 };
 
 
 } // namespace Service::Nvidia::Devices
 } // namespace Service::Nvidia::Devices

+ 2 - 8
src/core/hle/service/nvdrv/nvdata.h

@@ -16,17 +16,11 @@ using DeviceFD = s32;
 
 
 constexpr DeviceFD INVALID_NVDRV_FD = -1;
 constexpr DeviceFD INVALID_NVDRV_FD = -1;
 
 
-struct Fence {
+struct NvFence {
     s32 id;
     s32 id;
     u32 value;
     u32 value;
 };
 };
-
-static_assert(sizeof(Fence) == 8, "Fence has wrong size");
-
-struct MultiFence {
-    u32 num_fences;
-    std::array<Fence, 4> fences;
-};
+static_assert(sizeof(NvFence) == 8, "Fence has wrong size");
 
 
 enum class NvResult : u32 {
 enum class NvResult : u32 {
     Success = 0x0,
     Success = 0x0,

+ 2 - 1
src/core/hle/service/nvdrv/nvdrv.h

@@ -12,6 +12,7 @@
 #include "core/hle/service/kernel_helpers.h"
 #include "core/hle/service/kernel_helpers.h"
 #include "core/hle/service/nvdrv/nvdata.h"
 #include "core/hle/service/nvdrv/nvdata.h"
 #include "core/hle/service/nvdrv/syncpoint_manager.h"
 #include "core/hle/service/nvdrv/syncpoint_manager.h"
+#include "core/hle/service/nvflinger/ui/fence.h"
 #include "core/hle/service/service.h"
 #include "core/hle/service/service.h"
 
 
 namespace Core {
 namespace Core {
@@ -37,7 +38,7 @@ class nvdevice;
 /// Represents an Nvidia event
 /// Represents an Nvidia event
 struct NvEvent {
 struct NvEvent {
     Kernel::KEvent* event{};
     Kernel::KEvent* event{};
-    Fence fence{};
+    NvFence fence{};
 };
 };
 
 
 struct EventInterface {
 struct EventInterface {