Initial support for the new 12.x IPC system (#2182)

* Rename CommandAttribute as CommandHIpcAttribute to prepare for 12.x changes

* Implement inital support for TIPC and adds SM command ids

* *Ipc to *ipc

* Missed a ref in last commit...

* CommandAttributeTIpc to CommandAttributeTipc

* Addresses comment and fixes some bugs around

TIPC doesn't have any padding requirements as buffer C isn't a thing
Fix for RegisterService inverting two argument only on TIPC
This commit is contained in:
Mary 2021-04-14 00:01:24 +02:00 committed by GitHub
parent faa654dbaf
commit 0746b83edf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
132 changed files with 1077 additions and 951 deletions

View file

@ -7,7 +7,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
{
public IPsmServer(ServiceCtx context) { }
[Command(0)]
[CommandHipc(0)]
// GetBatteryChargePercentage() -> u32
public static ResultCode GetBatteryChargePercentage(ServiceCtx context)
{
@ -20,7 +20,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
return ResultCode.Success;
}
[Command(1)]
[CommandHipc(1)]
// GetChargerType() -> u32
public static ResultCode GetChargerType(ServiceCtx context)
{
@ -33,7 +33,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
return ResultCode.Success;
}
[Command(7)]
[CommandHipc(7)]
// OpenSession() -> IPsmSession
public ResultCode OpenSession(ServiceCtx context)
{

View file

@ -16,7 +16,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
_stateChangeEventHandle = -1;
}
[Command(0)]
[CommandHipc(0)]
// BindStateChangeEvent() -> KObject
public ResultCode BindStateChangeEvent(ServiceCtx context)
{
@ -37,7 +37,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
return ResultCode.Success;
}
[Command(1)]
[CommandHipc(1)]
// UnbindStateChangeEvent()
public ResultCode UnbindStateChangeEvent(ServiceCtx context)
{
@ -52,7 +52,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
return ResultCode.Success;
}
[Command(2)]
[CommandHipc(2)]
// SetChargerTypeChangeEventEnabled(u8)
public ResultCode SetChargerTypeChangeEventEnabled(ServiceCtx context)
{
@ -63,7 +63,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
return ResultCode.Success;
}
[Command(3)]
[CommandHipc(3)]
// SetPowerSupplyChangeEventEnabled(u8)
public ResultCode SetPowerSupplyChangeEventEnabled(ServiceCtx context)
{
@ -74,7 +74,7 @@ namespace Ryujinx.HLE.HOS.Services.Ptm.Psm
return ResultCode.Success;
}
[Command(4)]
[CommandHipc(4)]
// SetBatteryVoltageStateChangeEventEnabled(u8)
public ResultCode SetBatteryVoltageStateChangeEventEnabled(ServiceCtx context)
{