Difference between revisions of "SceDeci4pCpup"

From Vita Development Wiki
Jump to navigation Jump to search
(11 intermediate revisions by the same user not shown)
Line 44: Line 44:
 
! Version !! NID
 
! Version !! NID
 
|-
 
|-
| 1.69 || 0x2bad7b39
+
| 0.990-1.69 || 0x2bad7b39
 
|}
 
|}
  
<source lang="C">
+
Start update.
int SceDeci4pCpupForDriver_2bad7b39(int a1);
+
 
</source>
+
<source lang="C">int SceDeci4pCpupForDriver_2bad7b39(int ctx);</source>
  
 
=== SceDeci4pCpupForDriver_765F7234 ===
 
=== SceDeci4pCpupForDriver_765F7234 ===
Line 63: Line 63:
 
</source>
 
</source>
  
=== SceDeci4pCpupForDriver_DAC4F630 ===
+
=== sceDeci4pCpupSetRtcForDriver ===
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
 
! Version !! NID
 
! Version !! NID
 
|-
 
|-
| 1.69 || 0xDAC4F630
+
| 0.931-1.69 || 0xDAC4F630
 
|}
 
|}
  
<source lang="C">
+
<source lang="C">int sceDeci4pCpupSetRtcForDriver(int a1, int a2);</source>
int SceDeci4pCpupForDriver_DAC4F630(int a1, int a2);
 
</source>
 
  
 
=== sceDeci4pCpupInquireVersionForDriver ===
 
=== sceDeci4pCpupInquireVersionForDriver ===
Line 83: Line 81:
 
|}
 
|}
  
<source lang="C">int sceDeci4pCpupInquireVersionForDriver(int *proto_ver, int *pkg_ver, int *board_ver);</source>
+
<source lang="C">
 +
// proto_ver is the CPUP protocol version (ex: 0x1000300)
 +
int sceDeci4pCpupInquireVersionForDriver(int *proto_ver, int *pkg_ver, int *board_ver);
 +
</source>
  
 
=== sceDeci4pCpupGetCpSerialIdForDriver ===
 
=== sceDeci4pCpupGetCpSerialIdForDriver ===
Line 154: Line 155:
 
|}
 
|}
  
<source lang="C">
+
<source lang="C">int sceDeci4pCpupStartUpdateForDriver(int a1, int a2, int *ctx);</source>
int sceDeci4pCpupStartUpdateForDriver(int a1, int a2, int a3);
 
</source>
 
  
 
=== sceDeci4pCpupTriggerUpdateForDriver ===
 
=== sceDeci4pCpupTriggerUpdateForDriver ===
Line 166: Line 165:
 
|}
 
|}
  
<source lang="C">
+
<source lang="C">int sceDeci4pCpupTriggerUpdateForDriver(int ctx);</source>
int sceDeci4pCpupTriggerUpdateForDriver(int a1);
 
</source>
 
  
 
=== sceDeci4pCpupGetProgressForDriver ===
 
=== sceDeci4pCpupGetProgressForDriver ===
Line 179: Line 176:
  
 
<source lang="C">
 
<source lang="C">
int sceDeci4pCpupGetProgressForDriver(int a1, int a2, int a3, int a4);
+
// res becomes 0 on CP update success, <0 on CP update failure
 +
 
 +
int sceDeci4pCpupGetProgressForDriver(int ctx, int *res, int a3, int a4);
 
</source>
 
</source>
  
Line 190: Line 189:
 
|}
 
|}
  
<source lang="C">
+
<source lang="C">int sceDeci4pCpupTransferUpdatePackageForDriver(int ctx, int a2, int a3, int a4);</source>
int sceDeci4pCpupTransferUpdatePackageForDriver(int a1, int a2, int a3, int a4);
 
</source>
 

Revision as of 02:34, 9 June 2020

CP : Communication Processor

Module

Known NIDs

Version Name World NID
1.69 SceDeci4pCpup Non-secure 0x02FAACFD
3.60 SceDeci4pCpup Non-secure ?

Libraries

Known NIDs

Version Name World NID
1.69 - 3.60 SceDeci4pCpupForDriver Non-secure 0x5E323A42

SceDeci4pCpupForDriver

SceDeci4pCpupForDriver_02CDA82C

Version NID
1.69 0x02CDA82C
int SceDeci4pCpupForDriver_02CDA82C(int a1);

SceDeci4pCpupForDriver_2bad7b39

Version NID
0.990-1.69 0x2bad7b39

Start update.

int SceDeci4pCpupForDriver_2bad7b39(int ctx);

SceDeci4pCpupForDriver_765F7234

Version NID
1.69 0x765F7234
int SceDeci4pCpupForDriver_765F7234(int a1, int a2, int a3, int a4);

sceDeci4pCpupSetRtcForDriver

Version NID
0.931-1.69 0xDAC4F630
int sceDeci4pCpupSetRtcForDriver(int a1, int a2);

sceDeci4pCpupInquireVersionForDriver

Version NID
0.931-3.60 0xC0AB956B
// proto_ver is the CPUP protocol version (ex: 0x1000300)
int sceDeci4pCpupInquireVersionForDriver(int *proto_ver, int *pkg_ver, int *board_ver);

sceDeci4pCpupGetCpSerialIdForDriver

Version NID
3.60 0x8139AD4E

Reads 0x80 bytes (or 4 bytes at offset 0x80).

// buf_size must be 0x80
int sceDeci4pCpupGetCpSerialIdForDriver(char *buf, int buf_size);

SceDeci4pCpup_0x4939DA45

Version NID
0.940 0x4939DA45
// values seen:
// a1 = CP RTC
// a2 = 0, = 1
// a3 = activation_key, = 0
int SceDeci4pCpup_0x4939DA45(int a1, int a2, int a3);

sceDeci4pCpupGetRtcForDriver

Version NID
0.940 - 1.69 0x2015C7CB
int sceDeci4pCpupGetRtcForDriver(int a1, int a2);

sceDeci4pCpupExecCommand

Version NID
0.990-3.60 0xBBB991CD
// cmd ids:
// 0: unk
// 1: unk
// 2: prepare safe shutdown
// 4: reboot target and CP without CP update
// 5: shutdown target and CP with CP update
int sceDeci4pCpupExecCommand(uint32_t cmd_id);

sceDeci4pCpupStartUpdateForDriver

Version NID
0.990-3.60 0xDE07478F
int sceDeci4pCpupStartUpdateForDriver(int a1, int a2, int *ctx);

sceDeci4pCpupTriggerUpdateForDriver

Version NID
0.990-3.60 0xD78403C8
int sceDeci4pCpupTriggerUpdateForDriver(int ctx);

sceDeci4pCpupGetProgressForDriver

Version NID
0.990-3.60 0x7998FFD8
// res becomes 0 on CP update success, <0 on CP update failure

int sceDeci4pCpupGetProgressForDriver(int ctx, int *res, int a3, int a4);

sceDeci4pCpupTransferUpdatePackageForDriver

Version NID
0.990-3.60 0x90339379
int sceDeci4pCpupTransferUpdatePackageForDriver(int ctx, int a2, int a3, int a4);