summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nvdrv/devices/nvmap.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2023-12-24 18:20:02 +0100
committerLiam <byteslice@airmail.cc>2024-01-19 03:12:30 +0100
commit7a9d1ad2f873003e6aad637e8749b77b91247da3 (patch)
treee167a5d5ad73dbd78dc4b5c165b12a1220a167f4 /src/core/hle/service/nvdrv/devices/nvmap.h
parentCore: Initial implementation of device memory mapping (diff)
downloadyuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.tar
yuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.tar.gz
yuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.tar.bz2
yuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.tar.lz
yuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.tar.xz
yuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.tar.zst
yuzu-7a9d1ad2f873003e6aad637e8749b77b91247da3.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/nvdrv/devices/nvmap.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/hle/service/nvdrv/devices/nvmap.h b/src/core/hle/service/nvdrv/devices/nvmap.h
index 049c11028..ea5df2a9c 100644
--- a/src/core/hle/service/nvdrv/devices/nvmap.h
+++ b/src/core/hle/service/nvdrv/devices/nvmap.h
@@ -33,7 +33,7 @@ public:
NvResult Ioctl3(DeviceFD fd, Ioctl command, std::span<const u8> input, std::span<u8> output,
std::span<u8> inline_output) override;
- void OnOpen(DeviceFD fd) override;
+ void OnOpen(size_t session_id, DeviceFD fd) override;
void OnClose(DeviceFD fd) override;
enum class HandleParameterType : u32_le {
@@ -100,11 +100,11 @@ public:
static_assert(sizeof(IocGetIdParams) == 8, "IocGetIdParams has wrong size");
NvResult IocCreate(IocCreateParams& params);
- NvResult IocAlloc(IocAllocParams& params);
+ NvResult IocAlloc(IocAllocParams& params, DeviceFD fd);
NvResult IocGetId(IocGetIdParams& params);
NvResult IocFromId(IocFromIdParams& params);
NvResult IocParam(IocParamParams& params);
- NvResult IocFree(IocFreeParams& params);
+ NvResult IocFree(IocFreeParams& params, DeviceFD fd);
private:
/// Id to use for the next handle that is created.
@@ -115,6 +115,7 @@ private:
NvCore::Container& container;
NvCore::NvMap& file;
+ std::unordered_map<DeviceFD, size_t> sessions;
};
} // namespace Service::Nvidia::Devices