Fixed SetErrorNotifier log, Added SetChannelPriority

This commit is contained in:
David Marcec
2018-02-04 21:18:40 -08:00
parent e1d02f4361
commit ff8cd4ecd9
2 changed files with 13 additions and 1 deletions

View File

@@ -26,6 +26,8 @@ u32 nvhost_gpu::ioctl(u32 command, const std::vector<u8>& input, std::vector<u8>
return ZCullBind(input, output);
case IocSetErrorNotifierCommand:
return SetErrorNotifier(input, output);
case IocChannelSetPriorityCommand:
return SetChannelPriority(input, output);
}
};
@@ -66,12 +68,19 @@ u32 nvhost_gpu::ZCullBind(const std::vector<u8>& input, std::vector<u8>& output)
u32 nvhost_gpu::SetErrorNotifier(const std::vector<u8>& input, std::vector<u8>& output) {
set_error_notifier params;
std::memcpy(&params, input.data(), input.size());
LOG_WARNING(Service, "(STUBBED) called, offset=%lx, size=%lx, mem=%x", params.offset,
LOG_WARNING(Service_NVDRV, "(STUBBED) called, offset=%lx, size=%lx, mem=%x", params.offset,
params.size, params.mem);
std::memcpy(output.data(), &params, output.size());
return 0;
}
u32 nvhost_gpu::SetChannelPriority(const std::vector<u8>& input, std::vector<u8>& output) {
std::memcpy(&channel_priority, input.data(), input.size());
LOG_DEBUG(Service_NVDRV, "(STUBBED) called, priority=%x", channel_priority);
std::memcpy(output.data(), &channel_priority, output.size());
return 0;
}
} // namespace Devices
} // namespace Nvidia
} // namespace Service

View File

@@ -27,6 +27,7 @@ private:
IocGetClientDataCommand = 0x80084715,
IocZCullBind = 0xc010480b,
IocSetErrorNotifierCommand = 0xC018480C,
IocChannelSetPriorityCommand = 0x4004480D,
};
struct set_nvmap_fd {
@@ -53,12 +54,14 @@ private:
u32_le nvmap_fd{};
u64_le user_data{};
zcull_bind zcull_params{};
u32_le channel_priority{};
u32 SetNVMAPfd(const std::vector<u8>& input, std::vector<u8>& output);
u32 SetClientData(const std::vector<u8>& input, std::vector<u8>& output);
u32 GetClientData(const std::vector<u8>& input, std::vector<u8>& output);
u32 ZCullBind(const std::vector<u8>& input, std::vector<u8>& output);
u32 SetErrorNotifier(const std::vector<u8>& input, std::vector<u8>& output);
u32 SetChannelPriority(const std::vector<u8>& input, std::vector<u8>& output);
};
} // namespace Devices