Editing Southbridge

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

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 17: Line 17:
==== EMC Initial Program Loader ====
==== EMC Initial Program Loader ====


EMC Initial Program Loader is stored encrypted in a SLB2 container in PS4 Serial Flash. Its role is to launch both EAP Kernel Boot Loader and AMD bootROM.
EMC Initial Program Loader is stored encrypted in a SLB2 container in PS4 Serial Flash.


=== EAP ===
=== EAP ===
Line 23: Line 23:
EAP could stand for External Application Processor.
EAP could stand for External Application Processor.


The role of EAP is to handle media (online [[Wireless]]/[[GbLAN]], [[Bluray Drive]] and [[HDD SSD|HDD/SSD]]) even when the PS4 is in standby mode. EAP runs its own FreeBSD kernel in standby mode, activated to handle tasks such as downloading games updates while the PS4 is in standby.
The role of EAP is to handle media (online [[Wireless]]/[[GbLAN]], [[Bluray Drive]] and [[Harddrive]]) even when the PS4 is in standby mode. EAP runs its own FreeBSD kernel in standby mode, activated to handle tasks such as downloading games updates while the PS4 is in standby.


It handles several tasks to offload the [[APU]]:
It handles several tasks to offload the [[APU]]:
Line 40: Line 40:
==== EAP Kernel ====
==== EAP Kernel ====


EAP Kernel is located at virtual address 0xC3000000. Encrypted EAP Kernel is mounted on device da0x2 along with minila file.
EAP Kernel is located at virtual address 0xC3000000. Encrypted EAP Kernel is mounted on device da0x2.
 
==== minila ====
 
minila is an ELF file stored in /minila/ folder in EAP virtual filesystem (packed along with EAP Kernel). Minila is "AMD SceSysCore mini" equivalent for EAP.


==== EAP Core ====
==== EAP Core ====


EAP Core is the only usermode executable running on EAP. It is stored unencrypted as SceEapCore.elf in PS4 HDD.
EAP Core is the usermode executable running on EAP. It is stored unencrypted in the EAP filesystem in SceEapCore.elf.
 
==== EAP Filesystem from EAP Kernel binary ====
 
<pre>
/dev/
/eap_tmp/
/eap_user/
/eap_vsh/
/minila/
/minila/minila
/rescue/
/update/
/user/
</pre>
 
==== EAP files on HDD ====
 
* da0x2 HDD partition is mounted to /eap_kern/ but is encrypted. Only EMC Kernel Boot Loader reads and decrypts this partition then loads it in EAP DDR3 memory and launches EMC Kernel.
* da0x3 HDD partition is mounted to /eap_vsh/.
 
<pre>
/eap_vsh/common/
/eap_vsh/common/cert/
/eap_vsh/common/cert/CA_list.cer
/eap_vsh/etc/
/eap_vsh/etc/bgdc/
/eap_vsh/etc/bgdc/config.xml
/eap_vsh/etc/timezone.dat
/eap_vsh/SceEapCore.elf
</pre>
 
==== EAP files on Serial Flash ====
 
<pre>
sflash0s0x33: SLB2 container
sflash0s0x33/C0010001: EMC Kernel Boot Loader
sflash0s0x33/C0018001: EMC Kernel Boot Loader Information
</pre>


== Southbridge RAM ==
== Southbridge RAM ==


Southbridge chip is connected to its own DDR3 SDRAM. It is named "sbram" as abbreviation for SouthBridge RAM.
Southbridge chip is connected to its own DDR3 SDRAM. It is named "sbram" as in SouthBridge RAM.


=== PS4 Fat and Slim ===
=== PS4 Fat and Slim ===
Line 98: Line 56:
=== PS4 Pro ===
=== PS4 Pro ===


PS4 Pro Southbridge has two Samsung [[K4B4G0846E-BYMA]], [[H5TQ4G83CFR-RDC]] or [[H5TQ4G83EFR-RDC]] ([[K4B4G1646E-BYK0]] on PS4 Pro DevKit), giving a total of 1GB of memory.
PS4 Pro Southbridge has two Samsung [[K4B4G0846E-BYMA]] or [[H5TQ4G83CFR-RDC]] ([[K4B4G1646E-BYK0]] on PS4 Pro DevKit), giving a total of 1GB of memory.


== Serial Flash ==
== Serial Flash ==
Line 118: Line 76:
See also [[Aeolia]].
See also [[Aeolia]].


== Motherboards per Southbridge revisions ==
== Southbridge revisions per chassis ==
 
{| class="wikitable sortable"
|-
! Model (chassis) !! Motherboards !! Southbridge Codename !! Southbridge Labeling
|-
| D1000 || All CVN || Aeolia || CXD90025G
|-
| 1000 || All SAA || Aeolia || CXD90025G
|-
| 1100 || All SAB || Aeolia || CXD90025G
|-
| 1200 || All SAC || Belize || CXD90036G
|-
| 2000 || All SAD || Belize || CXD90036G
|-
| D7000 || All HAC || Belize  || CXD90036G
|-
| 7000 || All NVA || Belize / ?Belize 2? || CXD90036G / ?CXD90046GG?
|-
| 2100 || All SAE || Belize 2 / Baikal || CXD90046GG
|-
| 2200 || All SAF || Baikal || CXD90042GG
|-
| 7100 || All NVB || Baikal || CXD90042GG
|-
| 7200 || All NVG || Baikal || CXD90042GG
|}
 
== Motherboards per southbridge revisions ==


{| class="wikitable sortable"
{| class="wikitable sortable"
Line 132: Line 119:
[[SAC-001]] <br>
[[SAC-001]] <br>
[[SAD-001]] <br>
[[SAD-001]] <br>
[[SAD-003]] (1-981-769-11) <br>
[[SAD-003]] <br>
?[[SAE-001]]? <br>
[[HAC-001]] <br>
[[HAC-001]] <br>
[[NVA-001]]
[[NVA-001]]
Line 140: Line 126:
[[NVB-003]] <br>
[[NVB-003]] <br>
[[NVG-001]] <br>
[[NVG-001]] <br>
?[[SAD-003]] (1-981-769-21, 1-981-769-31)? <br>
[[SAE-001]]
[[SAE-003]] <br>
[[SAF-003]] <br>
[[SAF-005]]
|-
|-
| [[Baikal]] || [[CXD90042GG]] ||
| [[Baikal]] || [[CXD90042GG]] ||
[[NVB-004]] <br>
[[NVB-004]] <br>
[[NVG-004]] <br>
[[SAD-002]] <br>
[[SAD-002]] <br>
[[SAE-002]] <br>
[[SAE-002]] <br>
[[SAE-003]] <br>
[[SAE-004]] <br>
[[SAE-004]] <br>
[[SAF-004]] <br>
[[SAF-003]] <br>
[[SAF-006]]
[[SAF-004]]
|}
 
== Southbridge revisions per chassis ==
 
{| class="wikitable sortable"
|-
! Model (chassis) !! Motherboards !! Southbridge Codename !! Manufacturing Date
|-
| D1000 || All CVN || Aeolia ||
|-
| 1000 || All SAA || Aeolia ||
|-
| 1100 || All SAB || Aeolia ||
|-
| 1200 || All SAC || Belize || 2015 week 43
|-
| 2000 || SAD-001 || Belize || 2016 week 17
|-
| 2000 || SAD-002 || Baikal || 2016 week 34, 35
|-
| 2000 || SAD-003 (1-981-769-11) || Belize ||
|-
| 2000 || SAD-003 (1-981-769-21, 1-981-769-31) || ?Belize or Belize 2? ||
|-
| D7000 || HAC-001 || Belize ||
|-
| 7000 || NVA-001 || Belize || 2017 week 19
|-
| 2100 || SAE-001 || ?Belize? ||
|-
| 2100 || SAE-003 || Belize 2 ||
|-
| 2100 || SAE-002, SAE-004 || Baikal || 2016 week 39
|-
| 2200 || SAF-003, SAF-005 || Belize 2 ||
|-
| 2200 || SAF-004, SAF-006 || Baikal || 2018 week 26, 2019 week 23, 31
|-
| 7100 || NVB-003 || Belize 2 ||
|-
| 7100 || NVB-004 || Baikal || 2016 week 46
|-
| 7200 || NVG-003 || Belize 2 ||
|-
| 7200 || NVG-004 || Baikal || 2019 week 26
|}
|}


Line 758: Line 696:


{{Motherboard Components}}
{{Motherboard Components}}
<noinclude>
<noinclude>[[Category:Main]]</noinclude>
[[Category:Main]]
</noinclude>
Please note that all contributions to PS4 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS4 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)