summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nvdrv/devices
diff options
context:
space:
mode:
authorLiam White <yteslice@airmail.cc>2022-04-13 21:02:55 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2022-10-06 21:00:53 +0200
commitafab6c143cb486c7d14f1509cd04049ad08d3a65 (patch)
treefb3a35b23be7dd5b2c502ec550c027760257c6f3 /src/core/hle/service/nvdrv/devices
parentVideoCore: Implement formats needed for N64 emulation. (diff)
downloadyuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.tar
yuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.tar.gz
yuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.tar.bz2
yuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.tar.lz
yuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.tar.xz
yuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.tar.zst
yuzu-afab6c143cb486c7d14f1509cd04049ad08d3a65.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp3
-rw-r--r--src/core/hle/service/nvdrv/devices/nvhost_ctrl.cpp8
-rw-r--r--src/core/hle/service/nvdrv/devices/nvhost_nvdec.cpp4
-rw-r--r--src/core/hle/service/nvdrv/devices/nvhost_vic.cpp4
-rw-r--r--src/core/hle/service/nvdrv/devices/nvmap.cpp2
5 files changed, 12 insertions, 9 deletions
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp b/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp
index d95a88393..d1beefba6 100644
--- a/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp
+++ b/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp
@@ -188,6 +188,7 @@ NvResult nvhost_as_gpu::AllocateSpace(const std::vector<u8>& input, std::vector<
allocation_map[params.offset] = {
.size = size,
+ .mappings{},
.page_size = params.page_size,
.sparse = (params.flags & MappingFlags::Sparse) != MappingFlags::None,
.big_pages = params.page_size != VM::YUZU_PAGESIZE,
@@ -474,11 +475,13 @@ void nvhost_as_gpu::GetVARegionsImpl(IoctlGetVaRegions& params) {
VaRegion{
.offset = vm.small_page_allocator->vaStart << VM::PAGE_SIZE_BITS,
.page_size = VM::YUZU_PAGESIZE,
+ ._pad0_{},
.pages = vm.small_page_allocator->vaLimit - vm.small_page_allocator->vaStart,
},
VaRegion{
.offset = vm.big_page_allocator->vaStart << vm.big_page_size_bits,
.page_size = vm.big_page_size,
+ ._pad0_{},
.pages = vm.big_page_allocator->vaLimit - vm.big_page_allocator->vaStart,
},
};
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_ctrl.cpp b/src/core/hle/service/nvdrv/devices/nvhost_ctrl.cpp
index a84e4d425..7fffb8e48 100644
--- a/src/core/hle/service/nvdrv/devices/nvhost_ctrl.cpp
+++ b/src/core/hle/service/nvdrv/devices/nvhost_ctrl.cpp
@@ -204,12 +204,12 @@ NvResult nvhost_ctrl::IocCtrlEventWait(const std::vector<u8>& input, std::vector
event.wait_handle =
host1x_syncpoint_manager.RegisterHostAction(fence_id, target_value, [this, slot]() {
- auto& event = events[slot];
- if (event.status.exchange(EventState::Signalling, std::memory_order_acq_rel) ==
+ auto& event_ = events[slot];
+ if (event_.status.exchange(EventState::Signalling, std::memory_order_acq_rel) ==
EventState::Waiting) {
- event.kevent->GetWritableEvent().Signal();
+ event_.kevent->GetWritableEvent().Signal();
}
- event.status.store(EventState::Signalled, std::memory_order_release);
+ event_.status.store(EventState::Signalled, std::memory_order_release);
});
return NvResult::Timeout;
}
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_nvdec.cpp b/src/core/hle/service/nvdrv/devices/nvhost_nvdec.cpp
index 5e3820085..fed537039 100644
--- a/src/core/hle/service/nvdrv/devices/nvhost_nvdec.cpp
+++ b/src/core/hle/service/nvdrv/devices/nvhost_nvdec.cpp
@@ -12,8 +12,8 @@ namespace Service::Nvidia::Devices {
u32 nvhost_nvdec::next_id{};
-nvhost_nvdec::nvhost_nvdec(Core::System& system_, NvCore::Container& core)
- : nvhost_nvdec_common{system_, core, NvCore::ChannelType::NvDec} {}
+nvhost_nvdec::nvhost_nvdec(Core::System& system_, NvCore::Container& core_)
+ : nvhost_nvdec_common{system_, core_, NvCore::ChannelType::NvDec} {}
nvhost_nvdec::~nvhost_nvdec() = default;
NvResult nvhost_nvdec::Ioctl1(DeviceFD fd, Ioctl command, const std::vector<u8>& input,
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_vic.cpp b/src/core/hle/service/nvdrv/devices/nvhost_vic.cpp
index 490e399f4..2e4ff988c 100644
--- a/src/core/hle/service/nvdrv/devices/nvhost_vic.cpp
+++ b/src/core/hle/service/nvdrv/devices/nvhost_vic.cpp
@@ -11,8 +11,8 @@ namespace Service::Nvidia::Devices {
u32 nvhost_vic::next_id{};
-nvhost_vic::nvhost_vic(Core::System& system_, NvCore::Container& core)
- : nvhost_nvdec_common{system_, core, NvCore::ChannelType::VIC} {}
+nvhost_vic::nvhost_vic(Core::System& system_, NvCore::Container& core_)
+ : nvhost_nvdec_common{system_, core_, NvCore::ChannelType::VIC} {}
nvhost_vic::~nvhost_vic() = default;
diff --git a/src/core/hle/service/nvdrv/devices/nvmap.cpp b/src/core/hle/service/nvdrv/devices/nvmap.cpp
index 992c117f1..f84fc8c37 100644
--- a/src/core/hle/service/nvdrv/devices/nvmap.cpp
+++ b/src/core/hle/service/nvdrv/devices/nvmap.cpp
@@ -269,7 +269,7 @@ NvResult nvmap::IocFree(const std::vector<u8>& input, std::vector<u8>& output) {
params.address = freeInfo->address;
params.size = static_cast<u32>(freeInfo->size);
params.flags.raw = 0;
- params.flags.map_uncached = freeInfo->was_uncached;
+ params.flags.map_uncached.Assign(freeInfo->was_uncached);
} else {
// This is possible when there's internel dups or other duplicates.
}