|
|
|
@ -16,19 +16,18 @@ |
|
|
|
#include "core/hle/service/nvdrv/interface.h"
|
|
|
|
#include "core/hle/service/nvdrv/nvdrv.h"
|
|
|
|
#include "core/hle/service/nvdrv/nvmemp.h"
|
|
|
|
#include "core/hle/service/nvflinger/nvflinger.h"
|
|
|
|
|
|
|
|
namespace Service::Nvidia { |
|
|
|
|
|
|
|
std::weak_ptr<Module> nvdrv; |
|
|
|
|
|
|
|
void InstallInterfaces(SM::ServiceManager& service_manager) { |
|
|
|
void InstallInterfaces(SM::ServiceManager& service_manager, NVFlinger::NVFlinger& nvflinger) { |
|
|
|
auto module_ = std::make_shared<Module>(); |
|
|
|
std::make_shared<NVDRV>(module_, "nvdrv")->InstallAsService(service_manager); |
|
|
|
std::make_shared<NVDRV>(module_, "nvdrv:a")->InstallAsService(service_manager); |
|
|
|
std::make_shared<NVDRV>(module_, "nvdrv:s")->InstallAsService(service_manager); |
|
|
|
std::make_shared<NVDRV>(module_, "nvdrv:t")->InstallAsService(service_manager); |
|
|
|
std::make_shared<NVMEMP>()->InstallAsService(service_manager); |
|
|
|
nvdrv = module_; |
|
|
|
nvflinger.SetNVDrvInstance(module_); |
|
|
|
} |
|
|
|
|
|
|
|
Module::Module() { |
|
|
|
|