mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-17 17:11:23 +00:00
MFC
Minor changes
This commit is contained in:
parent
2135fb9685
commit
34ac4688e6
@ -5,6 +5,18 @@ enum
|
|||||||
{
|
{
|
||||||
MFC_PUT_CMD = 0x20,
|
MFC_PUT_CMD = 0x20,
|
||||||
MFC_GET_CMD = 0x40,
|
MFC_GET_CMD = 0x40,
|
||||||
|
MFC_PUTL_CMD = 0x24,
|
||||||
|
MFC_GETL_CMD = 0x44,
|
||||||
|
MFC_GETLLAR_CMD = 0xD0,
|
||||||
|
MFC_PUTLLC_CMD = 0xB4,
|
||||||
|
MFC_PUTLLUC_CMD = 0xB0,
|
||||||
|
MFC_PUTQLLUC_CMD= 0xB8,
|
||||||
|
MFC_SNDSIG_CMD = 0xA0,
|
||||||
|
MFC_BARRIER_CMD = 0xC0,
|
||||||
|
MFC_EIEIO_CMD = 0xC8,
|
||||||
|
MFC_SYNC_CMD = 0xCC,
|
||||||
|
MFC_BARRIER_MASK= 0x01,
|
||||||
|
MFC_FENCE_MASK = 0x02,
|
||||||
MFC_MASK_CMD = 0xffff,
|
MFC_MASK_CMD = 0xffff,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -358,7 +358,7 @@ public:
|
|||||||
u32 cmd = MFC.CMDStatus.GetValue();
|
u32 cmd = MFC.CMDStatus.GetValue();
|
||||||
u16 op = cmd & MFC_MASK_CMD;
|
u16 op = cmd & MFC_MASK_CMD;
|
||||||
|
|
||||||
switch(op & (MFC_PUT_CMD | MFC_GET_CMD))
|
switch(op & ~(MFC_BARRIER_MASK | MFC_FENCE_MASK))
|
||||||
{
|
{
|
||||||
case MFC_PUT_CMD:
|
case MFC_PUT_CMD:
|
||||||
case MFC_GET_CMD:
|
case MFC_GET_CMD:
|
||||||
@ -391,34 +391,6 @@ public:
|
|||||||
{
|
{
|
||||||
switch(ch)
|
switch(ch)
|
||||||
{
|
{
|
||||||
case SPU_RdEventStat: //Read event status with mask applied
|
|
||||||
case SPU_WrEventMask: //Write event mask
|
|
||||||
case SPU_WrEventAck: //Write end of event processing
|
|
||||||
case SPU_RdSigNotify1: //Signal notification 1
|
|
||||||
case SPU_RdSigNotify2: //Signal notification 2
|
|
||||||
case SPU_WrDec: //Write decrementer count
|
|
||||||
case SPU_RdDec: //Read decrementer count
|
|
||||||
case SPU_RdEventMask: //Read event mask
|
|
||||||
case SPU_RdMachStat: //Read SPU run status
|
|
||||||
case SPU_WrSRR0: //Write SPU machine state save/restore register 0 (SRR0)
|
|
||||||
case SPU_RdSRR0: //Read SPU machine state save/restore register 0 (SRR0)
|
|
||||||
case MFC_WrMSSyncReq: //Write multisource synchronization request
|
|
||||||
case MFC_RdTagMask: //Read tag mask
|
|
||||||
case MFC_LSA: //Write local memory address command parameter
|
|
||||||
case MFC_EAH: //Write high order DMA effective address command parameter
|
|
||||||
case MFC_EAL: //Write low order DMA effective address command parameter
|
|
||||||
case MFC_Size: //Write DMA transfer size command parameter
|
|
||||||
case MFC_TagID: //Write tag identifier command parameter
|
|
||||||
case MFC_Cmd: //Write and enqueue DMA command with associated class ID
|
|
||||||
case MFC_WrTagMask: //Write tag mask
|
|
||||||
case MFC_WrTagUpdate: //Write request for conditional or unconditional tag status update
|
|
||||||
case MFC_RdTagStat: //Read tag status with mask applied
|
|
||||||
case MFC_RdListStallStat: //Read DMA list stall-and-notify status
|
|
||||||
case MFC_WrListStallAck: //Write DMA list stall-and-notify acknowledge
|
|
||||||
case MFC_RdAtomicStat: //Read completion status of last completed immediate MFC atomic update command
|
|
||||||
ConLog.Error("%s error: unimplemented channel (%s).", __FUNCTION__, spu_ch_name[ch]);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SPU_WrOutMbox:
|
case SPU_WrOutMbox:
|
||||||
return SPU.Out_MBox.GetFreeCount();
|
return SPU.Out_MBox.GetFreeCount();
|
||||||
|
|
||||||
@ -428,6 +400,22 @@ public:
|
|||||||
case SPU_WrOutIntrMbox:
|
case SPU_WrOutIntrMbox:
|
||||||
return 0;//return SPU.OutIntr_Mbox.GetFreeCount();
|
return 0;//return SPU.OutIntr_Mbox.GetFreeCount();
|
||||||
|
|
||||||
|
case MFC_LSA:
|
||||||
|
return MFC.LSA.max_count;
|
||||||
|
|
||||||
|
case MFC_EAH:
|
||||||
|
return MFC.EAH.max_count;
|
||||||
|
|
||||||
|
case MFC_EAL:
|
||||||
|
return MFC.EAL.max_count;
|
||||||
|
|
||||||
|
case MFC_Size:
|
||||||
|
case MFC_TagID:
|
||||||
|
return MFC.Size_Tag.max_count;
|
||||||
|
|
||||||
|
case MFC_Cmd:
|
||||||
|
return MFC.CMDStatus.max_count;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
ConLog.Error("%s error: unknown/illegal channel (%d [%s]).", __FUNCTION__, ch, spu_ch_name[ch]);
|
ConLog.Error("%s error: unknown/illegal channel (%d [%s]).", __FUNCTION__, ch, spu_ch_name[ch]);
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user