Editing Syscon Firmware
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
= Description = | = Description = | ||
The | The system controller firmware (also known as the syscon firmware) is the software stored inside [[Syscon Hardware|syscon]]. Is composed by the base firmware (not updateable in retail syscon models) and a optional patch that is applyed virtually on runtime on top of the base firmware<br> | ||
The syscon | The syscon update packages (also known as syscon patches) for retail PS3 models are distributed in [[PKG_files|PKG]] format inside the [[Update_files.tar]] of the [[Playstation Update Package (PUP)|PS3UPDAT.PUP]]s. Syscon patches appear to always be 5KB (5376 bytes) in size. | ||
= Update procedure = | = Update procedure = | ||
Line 63: | Line 63: | ||
! <abbr title="Syscon firmware build id">SoftID</abbr> !! Firmware version !! Build target !! Build date !! <abbr title="Not final">Adds support for [[Platform ID]]s</abbr> !! Notes | ! <abbr title="Syscon firmware build id">SoftID</abbr> !! Firmware version !! Build target !! Build date !! <abbr title="Not final">Adds support for [[Platform ID]]s</abbr> !! Notes | ||
|-{{cellcolors|lightgrey}} | |-{{cellcolors|lightgrey}} | ||
| 0658 || ?.??.? || - || 2008 || CokF10 || <span style="background:#ff4444; cursor:wait;">not dumped yet</span> | | 0658 || ?.??.? || - || 2008 || CokF10 || [[VERTIGO-02]] <span style="background:#ff4444; cursor:wait;">not dumped yet</span> | ||
|- | |- | ||
| 065D || 0.17.0 || SW-301 || 2008 || - || | | 065D || 0.17.0 || SW-301 || 2008 || - || | ||
|- | |- | ||
| ???? || ?.??.? || SW-302 || 2008 || - || <span style="background:#ff4444; cursor:wait;">not dumped yet</span> | | ???? || ?.??.? || SW-302 || 2008 || - || <span style="background:#ff4444; cursor:wait;">not dumped yet</span> | ||
|- | |- | ||
| 0832 || 1.11.0 || SW2-301 || 2009 || CokG10, CokG11 || | | 0832 || 1.11.0 || SW2-301 || 2009 || CokG10, CokG11 || | ||
|- | |- | ||
| | | 08A0 || 1.16.0 || SW2-302 || 2009 || CokH10, CokH11 || <span style="background:#ff9000; cursor:progress;">partially dumped</span> | ||
|- | |- | ||
| | | 08C2 || 1.21.0 || SW2-303 || 2010 || CokJ13, CokJ20 || <span style="background:#ff9000; cursor:progress;">partially dumped</span> | ||
|- | |- | ||
| | | 0918 || 2.3.0 || SW3-301 || 2011 || CokK10 || <span style="background:#ff9000; cursor:progress;">partially dumped</span> | ||
|- | |- | ||
| | | 098F || 2.12.0 || SW3-302 || 2012 || CokM20, CokM40, CokN10, CokN30 || <span style="background:#ff9000; cursor:progress;">partially dumped</span> | ||
|- | |- | ||
| | | ???? || ?.??.? || SW3-303 || 2013 || - || <span style="background:#ff4444; cursor:wait;">not dumped yet</span> | ||
|- | |- | ||
| | | 09A4 || 2.21.0 || SW3-304 || 2013 || - || <span style="background:#ff9000; cursor:progress;">partially dumped</span> | ||
|} | |} | ||
Line 104: | Line 102: | ||
| SYS_CON_FIRMWARE_01000005.pkg || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2) || {{No}} || {{No}} || Superseded by SYS_CON_FIRMWARE_01000006.pkg | | SYS_CON_FIRMWARE_01000005.pkg || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2) || {{No}} || {{No}} || Superseded by SYS_CON_FIRMWARE_01000006.pkg | ||
|- | |- | ||
| SYS_CON_FIRMWARE_01000006.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2+4) || | | SYS_CON_FIRMWARE_01000006.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2+4) || | ||
|-{{cellcolors|lightgrey}} | |-{{cellcolors|lightgrey}} | ||
! rowspan=2 | 0C16 | ! rowspan=2 | 0C16 | ||
| SYS_CON_FIRMWARE_01010302.pkg || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2) || {{No}} || {{No}} || Superseded by SYS_CON_FIRMWARE_01010303.pkg | | SYS_CON_FIRMWARE_01010302.pkg || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2) || {{No}} || {{No}} || Superseded by SYS_CON_FIRMWARE_01010303.pkg | ||
|- | |- | ||
| SYS_CON_FIRMWARE_01010303.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2+4) || | | SYS_CON_FIRMWARE_01010303.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" {{Yes}} (fix 1+2+4) || | ||
|- | |||
! 0832 | |||
| SYS_CON_FIRMWARE_S1_00010002083E0832.pkg || {{No}} || {{No}} || {{No}} || colspan="3" {{Yes}} (fix 3) || | |||
|- | |- | ||
! 0D52 | ! 0D52 | ||
| SYS_CON_FIRMWARE_01020302.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | | SYS_CON_FIRMWARE_01020302.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | ||
|- | |- | ||
! 0DBF | ! 0DBF | ||
| SYS_CON_FIRMWARE_01030302.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | | SYS_CON_FIRMWARE_01030302.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | ||
|- | |- | ||
! 0E69 | ! 0E69 | ||
| SYS_CON_FIRMWARE_01040402.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | | SYS_CON_FIRMWARE_01040402.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | ||
|- | |- | ||
! 0F29 | ! 0F29 | ||
| SYS_CON_FIRMWARE_01050002.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | | SYS_CON_FIRMWARE_01050002.pkg || {{No}} || {{No}} || {{No}} || {{No}} || colspan="2" style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | ||
|- | |- | ||
! 0F38 | ! 0F38 | ||
| SYS_CON_FIRMWARE_01050101.pkg || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | | SYS_CON_FIRMWARE_01050101.pkg || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || style="background:#55CC55; color:#FFFFFF; text-align:right;" | Yes (fix 1+4) || | ||
|} | |} | ||
Line 462: | Line 460: | ||
=== External commands === | === External commands === | ||
{| class="wikitable | {| class="wikitable" | ||
! Address !! Command !! Subcommand !! Permission | ! Address !! Command !! Subcommand !! Permission | ||
|- | |- | ||
Line 615: | Line 600: | ||
|- | |- | ||
|duty || 0x9B23 || 0xDD0C0000 || get/getmin/getmax/getinimin/getinimax<br>set/setmin/setmax/setinimin/setinimax || Fan speed | |duty || 0x9B23 || 0xDD0C0000 || get/getmin/getmax/getinimin/getinimax<br>set/setmin/setmax/setinimin/setinimax || Fan speed | ||
|- | |- | ||
|dve || 0x2995D || 0xDC0C0000 || help/set/save/show || DVE chip parameters | |dve || 0x2995D || 0xDC0C0000 || help/set/save/show || DVE chip parameters | ||
Line 636: | Line 617: | ||
|fanconautotype || 0xC075 || 0xDD0C0000|| - || Does nothing | |fanconautotype || 0xC075 || 0xDD0C0000|| - || Does nothing | ||
|- | |- | ||
|fanconmode || 0xBF35 || 0xDD0C0000 || get || Fan control mode | |fanconmode || 0xBF35 || 0xDD0C0000 || get || Fan control mode | ||
|- | |- | ||
|fanconpolicy || 0xBBC9 || 0xDD0C0000 || get/set/getini/setini || Fan control policy | |fanconpolicy || 0xBBC9 || 0xDD0C0000 || get/set/getini/setini || Fan control policy | ||
|- | |- | ||
|fandiag || 0x1E91B || 0xF0000000|| - || Fan Diagnostic (test) | |fandiag || 0x1E91B || 0xF0000000|| - || Fan Diagnostic (test) | ||
Line 658: | Line 631: | ||
|fantbl || 0xC087 || 0xDD0C0000 || get/set/getini/setini/gettable/settable/getselect/setselect || Fan table: get/set - currently in RAM/in use ; getini/setini - stored in EEPROM (!! in COK the chksum does not updated automatically !!) | |fantbl || 0xC087 || 0xDD0C0000 || get/set/getini/setini/gettable/settable/getselect/setselect || Fan table: get/set - currently in RAM/in use ; getini/setini - stored in EEPROM (!! in COK the chksum does not updated automatically !!) | ||
<pre> | <pre> | ||
fantbl - Fan Table set/get command | |||
Usage: fantbl set fanconNo pNo tempD tempU duty | Usage: fantbl set fanconNo pNo tempD tempU duty | ||
ex. fantbl set 0 p1 0x1400 0x1E40 0xC0 | ex. fantbl set 0 p1 0x1400 0x1E40 0xC0 | ||
Line 705: | Line 679: | ||
|hversion || 0x2422F || 0xDD0C0000|| - || Displays [[Platform ID]] | |hversion || 0x2422F || 0xDD0C0000|| - || Displays [[Platform ID]] | ||
|- | |- | ||
|hyst || 0xAEF5 || 0xDD0C0000 || get/set/getini/setini || This value is stored inside the Thermal Config area, every thermal sensor has their own | |hyst || 0xAEF5 || 0xDD0C0000 || get/set/getini/setini || This value is stored inside the Thermal Config area, every thermal sensor has their own<!--https://en.wikipedia.org/wiki/Hysteresis#Control_systems ?--> | ||
|- | |- | ||
|lasterrlog || 0xB7FF || 0xDD0C0000|| - || Last error from log | |lasterrlog || 0xB7FF || 0xDD0C0000|| - || Last error from log | ||
Line 792: | Line 759: | ||
|task || 0x15005 || 0xDD0C0000|| - || Print tasks | |task || 0x15005 || 0xDD0C0000|| - || Print tasks | ||
|- | |- | ||
|thalttest || 0xD813 || 0x000F0000|| - || | |thalttest || 0xD813 || 0x000F0000|| - || Does nothing | ||
|- | |- | ||
|thermfatalmode || 0xCA3B || 0xDD0C0000 || canboot/cannotboot || Set boot mode | |thermfatalmode || 0xCA3B || 0xDD0C0000 || canboot/cannotboot || Set thermal boot mode | ||
|- | |- | ||
|therrclr || 0xD3E5 || 0xDD0C0000|| - || | |therrclr || 0xD3E5 || 0xDD0C0000|| - || Thermal register clear | ||
|- | |- | ||
|thrm || 0xBF1D || 0xDD0C0000|| - || Does nothing | |thrm || 0xBF1D || 0xDD0C0000|| - || Does nothing | ||
|- | |- | ||
|tmp ||0xAA69 || 0xDD0C0000 || [ | |tmp ||0xAA69 || 0xDD0C0000 || [zone] || Get temperature | ||
|- | |- | ||
|trace || 0xB951 || 0xDD0C0000 || ... || Trace tasks (use help) | |trace || 0xB951 || 0xDD0C0000 || ... || Trace tasks (use help) | ||
Line 817: | Line 780: | ||
|- | |- | ||
|trp ||0xAB2F || 0xDD0C0000 || get/set/getini/setini || This value is stored inside the Thermal Config area, every thermal sensor has their own<!-- Transient Receptor Potential ? https://en.wikipedia.org/wiki/Thermosensation --> | |trp ||0xAB2F || 0xDD0C0000 || get/set/getini/setini || This value is stored inside the Thermal Config area, every thermal sensor has their own<!-- Transient Receptor Potential ? https://en.wikipedia.org/wiki/Thermosensation --> | ||
|- | |- | ||
|tsensor || 0xA279 || 0xDD0C0000 || [ | |tsensor || 0xA279 || 0xDD0C0000 || [sensor] || Get raw temperature | ||
|- | |- | ||
|tshutdown || 0xB2A1 || 0xDD0C0000 || get/set/getini/setini || Thermal shutdown. This value is stored inside the Thermal Config area, every thermal sensor has their own | |tshutdown || 0xB2A1 || 0xDD0C0000 || get/set/getini/setini || Thermal shutdown. This value is stored inside the Thermal Config area, every thermal sensor has their own | ||
|- | |- | ||
|tshutdowntime || 0xC95D || 0xDD0C0000 || | |tshutdowntime || 0xC95D || 0xDD0C0000 || [time] || Thermal shutdown time. This value is stored inside the Thermal Config area, is a single value shared by all thermal sensors | ||
|- | |- | ||
|tzone || 0xB5E1 || 0xDD0C0000|| - || | |tzone || 0xB5E1 || 0xDD0C0000|| - || Show thermal zones | ||
|- | |- | ||
|version || 0xD65F || 0xFFFF0000|| - || Syscon firmware version | |version || 0xD65F || 0xFFFF0000|| - || Syscon firmware version | ||
Line 899: | Line 814: | ||
== Sherwood == | == Sherwood == | ||
Very similar to PS4 southbridge firmware. Only difference here is the string Playstation 3 | |||
* | * A_AUTH = 0x0700 | ||
* | * B_AUTH = 0x0B00 | ||
* | * INT = 0x0300 (Command not available from UART interface. Can be unlocked by patching syscon firmware) | ||
* | * ANY = 0x0F00 | ||
{| class="wikitable sortable | {| class="wikitable sortable" | ||
|+Sherwood Commands | |+Sherwood Commands | ||
! rowspan="2" | Command<br>lowercase/UPPERCASE !! rowspan="2" | <abbr title="Permission">Perms</abbr> !! colspan="3" | Address !! rowspan="2" | Notes | ! rowspan="2" | Command<br>lowercase/UPPERCASE !! rowspan="2" | <abbr title="Permission">Perms</abbr> !! colspan="3" | Address !! rowspan="2" | Notes | ||
Line 973: | Line 888: | ||
| shutdown / HALT || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC1C || 0x39171 || 0x39892 || | | shutdown / HALT || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC1C || 0x39171 || 0x39892 || | ||
|- | |- | ||
| r / R8 | | r / R8 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC9B || 0x391F0 || 0x39911 || | ||
|- | |- | ||
| | | r16 / R16 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC9B || 0x391F0 || 0x39911 || | ||
|- | |- | ||
| | | r32 / R32 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC9B || 0x391F0 || 0x39911 || | ||
|- | |- | ||
| w64< | | r64 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E7BC || 0x39D11 || 0x3A432 || | ||
|- | |||
| r64d || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E7BC || 0x39D11 || 0x3A432 || | |||
|- | |||
| w / W8 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E03B || 0x39590 || 0x39CB1 || | |||
|- | |||
| w16 / W16 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E03B || 0x39590 || 0x39CB1 || | |||
|- | |||
| w32 / W32 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E03B || 0x39590 || 0x39CB1 || | |||
|- | |||
| w64 || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E6C1 || 0x39C16 || 0x3A337 || | |||
|- | |||
| wbe || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E6C1 || 0x39C16 || 0x3A337 || | |||
|- | |- | ||
| BOOTENABLE || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC7B || 0x391D0 || 0x398F1 || | | BOOTENABLE || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2DC7B || 0x391D0 || 0x398F1 || | ||
Line 985: | Line 912: | ||
| EEP || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E8C2 || 0x39E17 || 0x3A538 || | | EEP || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E8C2 || 0x39E17 || 0x3A538 || | ||
|- | |- | ||
| PDAREA< | | PDAREA || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E9B8 || 0x39F0D || 0x3A62E || | ||
|- | |||
| CSAREA || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2E9B8 || 0x39F0D || 0x3A62E || | |||
|- | |- | ||
| portset || {{cellcolors|#ffaaaa}} <abbr title="0x0300">INT</abbr> || 0x2EC36 || 0x3A18B || 0x3A8AC || | | portset || {{cellcolors|#ffaaaa}} <abbr title="0x0300">INT</abbr> || 0x2EC36 || 0x3A18B || 0x3A8AC || | ||
Line 991: | Line 920: | ||
| extend || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2ECF9 || 0x3A24E || 0x3A96F || | | extend || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x2ECF9 || 0x3A24E || 0x3A96F || | ||
|- | |- | ||
| version || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || | | version || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x80D0 || 0xA0F1 || 0xA0FF || | ||
|- | |||
| revision || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x812B || 0xA14C || 0xA15A || | |||
|- | |- | ||
| | | setcmdlong / SETCMDLONG || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x8251 || 0xA272 || 0xA280 || | ||
|- | |- | ||
| | | VER || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x81C3 || 0xA1E4 || 0xA1F2 || | ||
|- | |- | ||
| | | csum || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x8356 || 0xA37B || 0xA389 || | ||
|- | |- | ||
| | | AUTH1 || {{cellcolors|#ffffcc}} <abbr title="0x0B00">B_AUTH</abbr> || 0x8555 || 0xA5AF || 0xA5BD || | ||
|- | |- | ||
| | | AUTH2 || {{cellcolors|#ffffcc}} <abbr title="0x0B00">B_AUTH</abbr> || 0x8555 || 0xA5AF || 0xA5BD || | ||
|- | |- | ||
| AUTHVER || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || | | AUTHVER || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x86FB || 0xA755 || 0xA763 || | ||
|- | |- | ||
| errlog / ERRLOG || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x311DA || 0x3C484 || 0x3CC7D || | | errlog / ERRLOG || {{cellcolors|#ddddff}} <abbr title="0x0F00">ANY</abbr> || 0x311DA || 0x3C484 || 0x3CC7D || | ||
Line 1,019: | Line 950: | ||
| VID || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x33F98 || 0x3FC43 || 0x404D8 || | | VID || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x33F98 || 0x3FC43 || 0x404D8 || | ||
|- | |- | ||
| CID< | | CID || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x340BF || 0x3FD6A || 0x405FF || | ||
|- | |||
| ECID || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x340BF || 0x3FD6A || 0x405FF || | |||
|- | |- | ||
| SPU || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x34211 || 0x3FEBC || 0x40751 || | | SPU || {{cellcolors|#ccffcc}} <abbr title="0x0700">A_AUTH</abbr> || 0x34211 || 0x3FEBC || 0x40751 || |