PS2SDK
PS2 Homebrew Libraries
sifrpc-common.h File Reference
#include <sifcmd-common.h>
+ Include dependency graph for sifrpc-common.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  t_SifRpcPktHeader
 
struct  t_SifRpcRendPkt
 
struct  t_SifRpcOtherDataPkt
 
struct  t_SifRpcBindPkt
 
struct  t_SifRpcCallPkt
 
struct  t_SifRpcServerData
 
struct  t_SifRpcHeader
 
struct  t_SifRpcClientData
 
struct  t_SifRpcReceiveData
 
struct  t_SifRpcDataQueue
 

Macros

#define SIF_RPC_M_NOWAIT   0x01
 
#define SIF_RPC_M_NOWBDC   0x02
 
#define SifInitRpc(...)   sceSifInitRpc(__VA_ARGS__)
 
#define SifExitRpc(...)   sceSifExitRpc(__VA_ARGS__)
 
#define SifBindRpc(...)   sceSifBindRpc(__VA_ARGS__)
 
#define SifCallRpc(...)   sceSifCallRpc(__VA_ARGS__)
 
#define SifRegisterRpc(...)   sceSifRegisterRpc(__VA_ARGS__)
 
#define SifCheckStatRpc(...)   sceSifCheckStatRpc(__VA_ARGS__)
 
#define SifSetRpcQueue(...)   sceSifSetRpcQueue(__VA_ARGS__)
 
#define SifGetNextRequest(...)   sceSifGetNextRequest(__VA_ARGS__)
 
#define SifExecRequest(...)   sceSifExecRequest(__VA_ARGS__)
 
#define SifRpcLoop(...)   sceSifRpcLoop(__VA_ARGS__)
 
#define SifRpcGetOtherData(...)   sceSifGetOtherData(__VA_ARGS__)
 
#define SifRemoveRpc(...)   sceSifRemoveRpc(__VA_ARGS__)
 
#define SifRemoveRpcQueue(...)   sceSifRemoveRpcQueue(__VA_ARGS__)
 

Typedefs

typedef void *(* SifRpcFunc_t) (int fno, void *buffer, int length)
 
typedef void(* SifRpcEndFunc_t) (void *end_param)
 
typedef struct t_SifRpcPktHeader SifRpcPktHeader_t
 
typedef struct t_SifRpcRendPkt SifRpcRendPkt_t
 
typedef struct t_SifRpcOtherDataPkt SifRpcOtherDataPkt_t
 
typedef struct t_SifRpcBindPkt SifRpcBindPkt_t
 
typedef struct t_SifRpcCallPkt SifRpcCallPkt_t
 
typedef struct t_SifRpcServerData SifRpcServerData_t
 
typedef struct t_SifRpcHeader SifRpcHeader_t
 
typedef struct t_SifRpcClientData SifRpcClientData_t
 
typedef struct t_SifRpcReceiveData SifRpcReceiveData_t
 
typedef struct t_SifRpcDataQueue SifRpcDataQueue_t
 

Functions

void sceSifInitRpc (int mode)
 
int sceSifBindRpc (SifRpcClientData_t *cd, int sid, int mode)
 
int sceSifCallRpc (SifRpcClientData_t *cd, int rpc_number, int mode, void *sendbuf, int ssize, void *recvbuf, int rsize, SifRpcEndFunc_t end_function, void *end_param)
 
void sceSifRegisterRpc (SifRpcServerData_t *sd, int sid, SifRpcFunc_t func, void *buf, SifRpcFunc_t cfunc, void *cbuf, SifRpcDataQueue_t *qd)
 
int sceSifCheckStatRpc (SifRpcClientData_t *cd)
 
void sceSifSetRpcQueue (SifRpcDataQueue_t *qd, int thread_id)
 
SifRpcServerData_tsceSifGetNextRequest (SifRpcDataQueue_t *qd)
 
void sceSifExecRequest (SifRpcServerData_t *sd)
 
void sceSifRpcLoop (SifRpcDataQueue_t *qd)
 
int sceSifGetOtherData (SifRpcReceiveData_t *rd, void *src, void *dest, int size, int mode)
 
SifRpcServerData_tsceSifRemoveRpc (SifRpcServerData_t *sd, SifRpcDataQueue_t *qd)
 
SifRpcDataQueue_tsceSifRemoveRpcQueue (SifRpcDataQueue_t *qd)
 

Detailed Description

Common defintions for SIF RPC.

Definition in file sifrpc-common.h.


Data Structure Documentation

◆ t_SifRpcPktHeader

struct t_SifRpcPktHeader

Definition at line 38 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcPktHeader:
Data Fields
struct t_SifCmdHeader sifcmd
int rec_id
void * pkt_addr
int rpc_id

◆ t_SifRpcRendPkt

struct t_SifRpcRendPkt

Definition at line 46 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcRendPkt:
Data Fields
struct t_SifCmdHeader sifcmd
int rec_id
void * pkt_addr
int rpc_id
struct t_SifRpcClientData * cd
u32 cid
struct t_SifRpcServerData * sd
void * buf
void * cbuf

◆ t_SifRpcOtherDataPkt

struct t_SifRpcOtherDataPkt

Definition at line 60 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcOtherDataPkt:
Data Fields
struct t_SifCmdHeader sifcmd
int rec_id
void * pkt_addr
int rpc_id
struct t_SifRpcReceiveData * recvbuf
void * src
void * dest
int size

◆ t_SifRpcBindPkt

struct t_SifRpcBindPkt

Definition at line 73 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcBindPkt:
Data Fields
struct t_SifCmdHeader sifcmd
int rec_id
void * pkt_addr
int rpc_id
struct t_SifRpcClientData * cd
int sid

◆ t_SifRpcCallPkt

struct t_SifRpcCallPkt

Definition at line 83 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcCallPkt:
Data Fields
struct t_SifCmdHeader sifcmd
int rec_id
void * pkt_addr
int rpc_id
struct t_SifRpcClientData * cd
int rpc_number
int send_size
void * recvbuf
int recv_size
int rmode
struct t_SifRpcServerData * sd

◆ t_SifRpcServerData

struct t_SifRpcServerData

Definition at line 98 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcServerData:
Data Fields
int sid
SifRpcFunc_t func
void * buf
int size
SifRpcFunc_t cfunc
void * cbuf
int size2
struct t_SifRpcClientData * client
void * pkt_addr
int rpc_number
void * recvbuf
int rsize
int rmode
int rid
struct t_SifRpcServerData * link
struct t_SifRpcServerData * next
struct t_SifRpcDataQueue * base

◆ t_SifRpcHeader

struct t_SifRpcHeader

Definition at line 125 of file sifrpc-common.h.

Data Fields
void * pkt_addr
u32 rpc_id
int sema_id
u32 mode

◆ t_SifRpcClientData

struct t_SifRpcClientData

Definition at line 134 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcClientData:
Data Fields
struct t_SifRpcHeader hdr
u32 command
void * buf
void * cbuf
SifRpcEndFunc_t end_function
void * end_param
struct t_SifRpcServerData * server

◆ t_SifRpcReceiveData

struct t_SifRpcReceiveData

Definition at line 145 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcReceiveData:
Data Fields
struct t_SifRpcHeader hdr
void * src
void * dest
int size

◆ t_SifRpcDataQueue

struct t_SifRpcDataQueue

Definition at line 153 of file sifrpc-common.h.

+ Collaboration diagram for t_SifRpcDataQueue:
Data Fields
int thread_id
int active
struct t_SifRpcServerData * link
struct t_SifRpcServerData * start
struct t_SifRpcServerData * end
struct t_SifRpcDataQueue * next

Macro Definition Documentation

◆ SIF_RPC_M_NOWAIT

#define SIF_RPC_M_NOWAIT   0x01

Don't wait for end function

Definition at line 23 of file sifrpc-common.h.

◆ SIF_RPC_M_NOWBDC

#define SIF_RPC_M_NOWBDC   0x02

Don't write back the D cache

Definition at line 25 of file sifrpc-common.h.