summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nvdrv/devices/nvhost_ctrl.h
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2023-10-24 19:03:46 +0200
committerLiam <byteslice@airmail.cc>2023-10-25 19:05:56 +0200
commit789d9c8af931490efd8647f286e136faaf062989 (patch)
tree360baf82ade3a563cbf41cd4b59bdf8525df15d9 /src/core/hle/service/nvdrv/devices/nvhost_ctrl.h
parentnvdrv: convert nvhost_ctrl_gpu (diff)
downloadyuzu-789d9c8af931490efd8647f286e136faaf062989.tar
yuzu-789d9c8af931490efd8647f286e136faaf062989.tar.gz
yuzu-789d9c8af931490efd8647f286e136faaf062989.tar.bz2
yuzu-789d9c8af931490efd8647f286e136faaf062989.tar.lz
yuzu-789d9c8af931490efd8647f286e136faaf062989.tar.xz
yuzu-789d9c8af931490efd8647f286e136faaf062989.tar.zst
yuzu-789d9c8af931490efd8647f286e136faaf062989.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/nvdrv/devices/nvhost_ctrl.h21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_ctrl.h b/src/core/hle/service/nvdrv/devices/nvhost_ctrl.h
index 2efed4862..6913c61ac 100644
--- a/src/core/hle/service/nvdrv/devices/nvhost_ctrl.h
+++ b/src/core/hle/service/nvdrv/devices/nvhost_ctrl.h
@@ -186,15 +186,24 @@ private:
static_assert(sizeof(IocCtrlEventUnregisterBatchParams) == 8,
"IocCtrlEventKill is incorrect size");
- NvResult NvOsGetConfigU32(std::span<const u8> input, std::span<u8> output);
- NvResult IocCtrlEventWait(std::span<const u8> input, std::span<u8> output, bool is_allocation);
- NvResult IocCtrlEventRegister(std::span<const u8> input, std::span<u8> output);
- NvResult IocCtrlEventUnregister(std::span<const u8> input, std::span<u8> output);
- NvResult IocCtrlEventUnregisterBatch(std::span<const u8> input, std::span<u8> output);
- NvResult IocCtrlClearEventWait(std::span<const u8> input, std::span<u8> output);
+ NvResult NvOsGetConfigU32(IocGetConfigParams& params);
+ NvResult IocCtrlEventRegister(IocCtrlEventRegisterParams& params);
+ NvResult IocCtrlEventUnregister(IocCtrlEventUnregisterParams& params);
+ NvResult IocCtrlEventUnregisterBatch(IocCtrlEventUnregisterBatchParams& params);
+ NvResult IocCtrlClearEventWait(IocCtrlEventClearParams& params);
NvResult FreeEvent(u32 slot);
+ // TODO: these are not the correct names
+ NvResult IocCtrlEventWaitNotAllocation(IocCtrlEventWaitParams& params) {
+ return this->IocCtrlEventWaitImpl(params, false);
+ }
+ NvResult IocCtrlEventWaitWithAllocation(IocCtrlEventWaitParams& params) {
+ return this->IocCtrlEventWaitImpl(params, true);
+ }
+
+ NvResult IocCtrlEventWaitImpl(IocCtrlEventWaitParams& params, bool is_allocation);
+
EventInterface& events_interface;
NvCore::Container& core;
NvCore::SyncpointManager& syncpoint_manager;