|
|
Line 143: |
Line 143: |
| executes [[SceExcpmgr|smc 135]] call | | executes [[SceExcpmgr|smc 135]] call |
|
| |
|
| <source lang="C">int smc_135(int a1, int a2, int a3);</source> | | <source lang="C">int smc_135(int id, int smcArg1, int smcArg2);</source> |
|
| |
|
| === smc_136 === | | === smc_136 === |
Revision as of 22:23, 5 July 2018
Module
Known NIDs
Version |
Name |
World |
Privilege |
NID
|
1.69 |
SceSblSmschedProxy |
Non-secure |
Kernel |
0xF3BC3013
|
3.60 |
SceSblSmschedProxy |
Non-secure |
Kernel |
0x254B02B3
|
Libraries
Known NIDs
SceSblSmSchedProxyForKernel
sceSblSmSchedProxyInvoke
Version |
NID
|
1.05 |
0x1916509B
|
3.60 |
0x1916509B
|
executes smc 12D call
- priority - first smc arg
- paddr - second smc arg
- num_pairs - third smc arg
// paddr = Physical address of the buffer containing the result of ksceKernelGetPaddrList (req.output_buffer)
// num_pairs = number of (paddr, size) pairs in the buffer returned by ksceKernelGetPaddrList (ret_count)
int sceSblSmSchedProxyInvoke(int priority, uintptr_t paddr, unsigned int num_pairs, int num1, SceSblSmCommContext130 *ctx, int *id);
sceSblSmSchedProxyGetStatus
Version |
NID
|
1.05 |
0x27EB92F1
|
3.60 |
0x27EB92F1
|
executes smc 12F call
int sceSblSmSchedProxyGetStatus(int id, int status[2]);
sceSblSmSchedCallFunc
Version |
NID
|
3.60 |
0x723B382F
|
Executes smc 133 call.
Called by sceSblSmCommCallFunc.
- f00d_cmd_fifo_idx - second smc arg
- cmd - third smc arg
typedef struct SceSblSmschedCallFuncCommand {
unsigned int size;
unsigned int service_id;
unsigned int response;
unsigned int unk2;
unsigned int padding[(0x40 - 0x10) / 4];
unsigned int data[0];
} SceSblSmschedCallFuncCommand; /* size = 0X40 + ... */
// f00d_cmd_fifo_idx can be 1, 2 or 3
int sceSblSmSchedCallFunc(int id, int f00d_cmd_fifo_idx, SceSblSmschedCallFuncCommand *cmd);
sceSblSmSchedProxyWait
Version |
NID
|
1.05 |
0xF35EFC1A
|
3.60 |
0xF35EFC1A
|
executes smc 12E call
int sceSblSmSchedProxyWait(int id, int result[2]);
smc_130
Version |
NID
|
3.60 |
0xDE4EAC3C
|
executes smc 130 call
int smc_130(int id);
smc_134
Version |
NID
|
3.60 |
0xF70C04EC
|
executes smc 134 call
int smc_134(int id, int smcArg1, int *result);
smc_135
Version |
NID
|
3.60 |
0x3CE17233
|
executes smc 135 call
int smc_135(int id, int smcArg1, int smcArg2);
smc_136
Version |
NID
|
3.60 |
0x15B0E4DF
|
executes smc 136 call
Called by SceSblAuthMgr.
int smc_136(int a1, int a2, int a3);
smc_137
Version |
NID
|
3.60 |
0x973A4A7D
|
executes smc 137 call
Called by SceSblAuthMgr.
int smc_137(int unk0, int unk1, int unk2);
smc_138
Version |
NID
|
3.60 |
0x8B84AC2A
|
executes smc 138 call
Called by SceSblAuthMgr.
- smcArg1_funcArg1 - second smc arg
int smc_138(void *basePtr, int smcArg1_funcArg1, void *func, int funcArg2);
smc_139
Version |
NID
|
3.60 |
0x85EDA5FC
|
executes smc 139 call
Called by SceSblAuthMgr.
int smc_139(int a1, int a2);
smc_13B
Version |
NID
|
3.60 |
0x33A3A1E2
|
executes smc 13B call
only excutes if cpuid is 0
int smc_13B();
smc_13C
Version |
NID
|
3.60 |
0x7894B6F0
|
executes smc 13C call
int smc_13C(int a1, int a2, int a3, int a4);
This function is called by two modules:
SceSblSsMgr just before PSVita entering suspend mode:
smc_13C(4, 0, 0, 0);
SceSdif at init (at PSVita boot and maybe called after PSVita resume):
smc_13C(3, 0, 0, 0);
check_cpuid_initialize
Version |
NID
|
3.60 |
0xA488D604
|
calls module_start if cpuid is 0
not_implemented
Version |
NID
|
3.60 |
0x1DFC8624
|
returns 0x800F0425
not_implemented
Version |
NID
|
3.60 |
0x984EC9D1
|
returns 0x800F0425