diff options
author | Subv <subv2112@gmail.com> | 2018-01-16 00:30:49 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2018-01-17 01:04:09 +0100 |
commit | cb75b56e454a36190f07ee34b0e4e6ee6a7a66be (patch) | |
tree | f5af26691caa3aef505c2a66b07831f24c83b8e4 | |
parent | NV: Move the nvdrv classes into the Nvidia namespace, and move the functionality to a s single module that services call. (diff) | |
download | yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.tar yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.tar.gz yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.tar.bz2 yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.tar.lz yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.tar.xz yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.tar.zst yuzu-cb75b56e454a36190f07ee34b0e4e6ee6a7a66be.zip |
-rw-r--r-- | src/core/CMakeLists.txt | 4 | ||||
-rw-r--r-- | src/core/hle/service/nvdrv/interface.cpp (renamed from src/core/hle/service/nvdrv/nvdrv_a.cpp) | 18 | ||||
-rw-r--r-- | src/core/hle/service/nvdrv/interface.h (renamed from src/core/hle/service/nvdrv/nvdrv_a.h) | 6 | ||||
-rw-r--r-- | src/core/hle/service/nvdrv/nvdrv.cpp | 6 |
4 files changed, 18 insertions, 16 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index f5c92a5aa..2eab81ad6 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -48,8 +48,8 @@ set(SRCS hle/service/nvdrv/devices/nvdisp_disp0.cpp hle/service/nvdrv/devices/nvhost_as_gpu.cpp hle/service/nvdrv/devices/nvmap.cpp + hle/service/nvdrv/interface.cpp hle/service/nvdrv/nvdrv.cpp - hle/service/nvdrv/nvdrv_a.cpp hle/service/pctl/pctl.cpp hle/service/pctl/pctl_a.cpp hle/service/service.cpp @@ -136,8 +136,8 @@ set(HEADERS hle/service/nvdrv/devices/nvdisp_disp0.h hle/service/nvdrv/devices/nvhost_as_gpu.h hle/service/nvdrv/devices/nvmap.h + hle/service/nvdrv/interface.h hle/service/nvdrv/nvdrv.h - hle/service/nvdrv/nvdrv_a.h hle/service/pctl/pctl.h hle/service/pctl/pctl_a.h hle/service/service.h diff --git a/src/core/hle/service/nvdrv/nvdrv_a.cpp b/src/core/hle/service/nvdrv/interface.cpp index 5d3e68792..0670ca155 100644 --- a/src/core/hle/service/nvdrv/nvdrv_a.cpp +++ b/src/core/hle/service/nvdrv/interface.cpp @@ -4,13 +4,13 @@ #include "common/logging/log.h" #include "core/hle/ipc_helpers.h" +#include "core/hle/service/nvdrv/interface.h" #include "core/hle/service/nvdrv/nvdrv.h" -#include "core/hle/service/nvdrv/nvdrv_a.h" namespace Service { namespace Nvidia { -void NVDRV_A::Open(Kernel::HLERequestContext& ctx) { +void NVDRV::Open(Kernel::HLERequestContext& ctx) { LOG_WARNING(Service, "(STUBBED) called"); auto buffer = ctx.BufferDescriptorA()[0]; @@ -24,7 +24,7 @@ void NVDRV_A::Open(Kernel::HLERequestContext& ctx) { rb.Push<u32>(0); } -void NVDRV_A::Ioctl(Kernel::HLERequestContext& ctx) { +void NVDRV::Ioctl(Kernel::HLERequestContext& ctx) { LOG_WARNING(Service, "(STUBBED) called"); IPC::RequestParser rp{ctx}; @@ -48,19 +48,19 @@ void NVDRV_A::Ioctl(Kernel::HLERequestContext& ctx) { rb.Push(nv_result); } -void NVDRV_A::Initialize(Kernel::HLERequestContext& ctx) { +void NVDRV::Initialize(Kernel::HLERequestContext& ctx) { LOG_WARNING(Service, "(STUBBED) called"); IPC::RequestBuilder rb{ctx, 3}; rb.Push(RESULT_SUCCESS); rb.Push<u32>(0); } -NVDRV_A::NVDRV_A(std::shared_ptr<Module> nvdrv) - : ServiceFramework("nvdrv:a"), nvdrv(std::move(nvdrv)) { +NVDRV::NVDRV(std::shared_ptr<Module> nvdrv, const char* name) + : ServiceFramework(name), nvdrv(std::move(nvdrv)) { static const FunctionInfo functions[] = { - {0, &NVDRV_A::Open, "Open"}, - {1, &NVDRV_A::Ioctl, "Ioctl"}, - {3, &NVDRV_A::Initialize, "Initialize"}, + {0, &NVDRV::Open, "Open"}, + {1, &NVDRV::Ioctl, "Ioctl"}, + {3, &NVDRV::Initialize, "Initialize"}, }; RegisterHandlers(functions); } diff --git a/src/core/hle/service/nvdrv/nvdrv_a.h b/src/core/hle/service/nvdrv/interface.h index 743870555..8c95b7217 100644 --- a/src/core/hle/service/nvdrv/nvdrv_a.h +++ b/src/core/hle/service/nvdrv/interface.h @@ -12,10 +12,10 @@ namespace Service { namespace Nvidia { -class NVDRV_A final : public ServiceFramework<NVDRV_A> { +class NVDRV final : public ServiceFramework<NVDRV> { public: - NVDRV_A(std::shared_ptr<Module> nvdrv); - ~NVDRV_A() = default; + NVDRV(std::shared_ptr<Module> nvdrv, const char* name); + ~NVDRV() = default; private: void Open(Kernel::HLERequestContext& ctx); diff --git a/src/core/hle/service/nvdrv/nvdrv.cpp b/src/core/hle/service/nvdrv/nvdrv.cpp index be9946505..cf525a875 100644 --- a/src/core/hle/service/nvdrv/nvdrv.cpp +++ b/src/core/hle/service/nvdrv/nvdrv.cpp @@ -2,12 +2,13 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. +#include "core/hle/ipc_helpers.h" #include "core/hle/service/nvdrv/devices/nvdevice.h" #include "core/hle/service/nvdrv/devices/nvdisp_disp0.h" #include "core/hle/service/nvdrv/devices/nvhost_as_gpu.h" #include "core/hle/service/nvdrv/devices/nvmap.h" #include "core/hle/service/nvdrv/nvdrv.h" -#include "core/hle/service/nvdrv/nvdrv_a.h" +#include "core/hle/service/nvdrv/interface.h" namespace Service { namespace Nvidia { @@ -16,7 +17,8 @@ std::weak_ptr<Module> nvdrv; void InstallInterfaces(SM::ServiceManager& service_manager) { auto module_ = std::make_shared<Module>(); - std::make_shared<NVDRV_A>(module_)->InstallAsService(service_manager); + std::make_shared<NVDRV>(module_, "nvdrv")->InstallAsService(service_manager); + std::make_shared<NVDRV>(module_, "nvdrv:a")->InstallAsService(service_manager); nvdrv = module_; } |