mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-12-29 00:45:28 +03:00
Add support for IOCTL3 CtrlGpu calls missed in refactor
This commit is contained in:
parent
02bcf98b8c
commit
4eff515c55
@ -7,12 +7,12 @@
|
|||||||
#include "driver.h"
|
#include "driver.h"
|
||||||
#include "devices/nvdevice.h"
|
#include "devices/nvdevice.h"
|
||||||
|
|
||||||
#define NVRESULT(x) [&response, this](NvResult err) { \
|
#define NVRESULT(x) [&response, this](NvResult err) { \
|
||||||
if (err != NvResult::Success) \
|
if (err != NvResult::Success) \
|
||||||
state.logger->Debug("IOCTL Failed: {}", err); \
|
state.logger->Debug("IOCTL Failed: 0x{:X}", err); \
|
||||||
\
|
\
|
||||||
response.Push<NvResult>(err); \
|
response.Push<NvResult>(err); \
|
||||||
return Result{}; \
|
return Result{}; \
|
||||||
} (x)
|
} (x)
|
||||||
|
|
||||||
namespace skyline::service::nvdrv {
|
namespace skyline::service::nvdrv {
|
||||||
|
@ -77,5 +77,12 @@ namespace skyline::service::nvdrv::device::nvhost {
|
|||||||
IOCTL_CASE_ARGS(OUT, SIZE(0x8), MAGIC(CtrlGpuMagic), FUNC(0x14),
|
IOCTL_CASE_ARGS(OUT, SIZE(0x8), MAGIC(CtrlGpuMagic), FUNC(0x14),
|
||||||
GetActiveSlotMask, ARGS(Out<u32>, Out<u32>))
|
GetActiveSlotMask, ARGS(Out<u32>, Out<u32>))
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
INLINE_IOCTL_HANDLER_FUNC(Ioctl3, CtrlGpu, ({
|
||||||
|
INLINE_IOCTL_CASE_ARGS(INOUT, SIZE(0xB0), MAGIC(CtrlGpuMagic), FUNC(0x5),
|
||||||
|
GetCharacteristics3, ARGS(InOut<u64>, In<u64>, Out<GpuCharacteristics>))
|
||||||
|
INLINE_IOCTL_CASE_ARGS(INOUT, SIZE(0x18), MAGIC(CtrlGpuMagic), FUNC(0x6),
|
||||||
|
GetTpcMasks3, ARGS(In<u32>, Pad<u32, 3>, Out<u32>))
|
||||||
|
}))
|
||||||
#include <services/nvdrv/devices/deserialisation/macro_undef.inc>
|
#include <services/nvdrv/devices/deserialisation/macro_undef.inc>
|
||||||
}
|
}
|
||||||
|
@ -118,5 +118,7 @@ namespace skyline::service::nvdrv::device::nvhost {
|
|||||||
std::shared_ptr<type::KEvent> QueryEvent(u32 eventId) override;
|
std::shared_ptr<type::KEvent> QueryEvent(u32 eventId) override;
|
||||||
|
|
||||||
PosixResult Ioctl(IoctlDescriptor cmd, span<u8> buffer) override;
|
PosixResult Ioctl(IoctlDescriptor cmd, span<u8> buffer) override;
|
||||||
|
|
||||||
|
PosixResult Ioctl3(IoctlDescriptor cmd, span<u8> buffer, span<u8> inlineBuffer) override;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user