From f9259c03832eff2d71279802af56d14c14b69844 Mon Sep 17 00:00:00 2001 From: David Marcec Date: Thu, 19 Sep 2019 15:37:25 +1000 Subject: Initial implementation of Ioctl2 & Ioctl3 Purpose of Ioctl2 and Ioctl3 is to prevent the passing of raw pointers through ioctls --- src/core/hle/service/nvdrv/devices/nvhost_gpu.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/core/hle/service/nvdrv/devices/nvhost_gpu.h') diff --git a/src/core/hle/service/nvdrv/devices/nvhost_gpu.h b/src/core/hle/service/nvdrv/devices/nvhost_gpu.h index d2e8fbae9..d056dd046 100644 --- a/src/core/hle/service/nvdrv/devices/nvhost_gpu.h +++ b/src/core/hle/service/nvdrv/devices/nvhost_gpu.h @@ -24,8 +24,9 @@ public: explicit nvhost_gpu(Core::System& system, std::shared_ptr nvmap_dev); ~nvhost_gpu() override; - u32 ioctl(Ioctl command, const std::vector& input, std::vector& output, - IoctlCtrl& ctrl) override; + u32 ioctl(Ioctl command, const std::vector& input, const std::vector& input2, + std::vector& output, std::vector& output2, IoctlCtrl& ctrl, + IoctlVersion version) override; private: enum class IoctlCommand : u32_le { @@ -183,7 +184,8 @@ private: u32 AllocGPFIFOEx2(const std::vector& input, std::vector& output); u32 AllocateObjectContext(const std::vector& input, std::vector& output); u32 SubmitGPFIFO(const std::vector& input, std::vector& output); - u32 KickoffPB(const std::vector& input, std::vector& output); + u32 KickoffPB(const std::vector& input, std::vector& output, + const std::vector& input2, IoctlVersion version); u32 GetWaitbase(const std::vector& input, std::vector& output); u32 ChannelSetTimeout(const std::vector& input, std::vector& output); -- cgit v1.2.3