Merge pull request #824 from lioncash/nvdrv

service/nvdrv: Minor changes
This commit is contained in:
bunnei 2018-07-25 19:02:08 -07:00 committed by GitHub
commit b0adb9a3d9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 5 deletions

View File

@ -2,6 +2,8 @@
// Licensed under GPLv2 or any later version // Licensed under GPLv2 or any later version
// Refer to the license.txt file included. // Refer to the license.txt file included.
#include <utility>
#include "core/hle/ipc_helpers.h" #include "core/hle/ipc_helpers.h"
#include "core/hle/service/nvdrv/devices/nvdevice.h" #include "core/hle/service/nvdrv/devices/nvdevice.h"
#include "core/hle/service/nvdrv/devices/nvdisp_disp0.h" #include "core/hle/service/nvdrv/devices/nvdisp_disp0.h"
@ -40,14 +42,14 @@ Module::Module() {
devices["/dev/nvhost-nvdec"] = std::make_shared<Devices::nvhost_nvdec>(); devices["/dev/nvhost-nvdec"] = std::make_shared<Devices::nvhost_nvdec>();
} }
u32 Module::Open(std::string device_name) { u32 Module::Open(const std::string& device_name) {
ASSERT_MSG(devices.find(device_name) != devices.end(), "Trying to open unknown device {}", ASSERT_MSG(devices.find(device_name) != devices.end(), "Trying to open unknown device {}",
device_name); device_name);
auto device = devices[device_name]; auto device = devices[device_name];
u32 fd = next_fd++; const u32 fd = next_fd++;
open_files[fd] = device; open_files[fd] = std::move(device);
return fd; return fd;
} }
@ -56,7 +58,7 @@ u32 Module::Ioctl(u32 fd, u32_le command, const std::vector<u8>& input, std::vec
auto itr = open_files.find(fd); auto itr = open_files.find(fd);
ASSERT_MSG(itr != open_files.end(), "Tried to talk to an invalid device"); ASSERT_MSG(itr != open_files.end(), "Tried to talk to an invalid device");
auto device = itr->second; auto& device = itr->second;
return device->ioctl({command}, input, output); return device->ioctl({command}, input, output);
} }

View File

@ -38,7 +38,7 @@ public:
} }
/// Opens a device node and returns a file descriptor to it. /// Opens a device node and returns a file descriptor to it.
u32 Open(std::string device_name); u32 Open(const std::string& device_name);
/// Sends an ioctl command to the specified file descriptor. /// Sends an ioctl command to the specified file descriptor.
u32 Ioctl(u32 fd, u32 command, const std::vector<u8>& input, std::vector<u8>& output); u32 Ioctl(u32 fd, u32 command, const std::vector<u8>& input, std::vector<u8>& output);
/// Closes a device file descriptor and returns operation success. /// Closes a device file descriptor and returns operation success.