Details On The PS4's Radeon GPU With Linux Driver Modifications

Written by Michael Larabel in Radeon on 28 December 2016 at 02:48 PM EST. 35 Comments
RADEON
At this week's Chaos Communication Congress (33C3) one of the talks interesting us is on console hacking, due to the PlayStation 4 making use of a Radeon GPU and the work done to modify the open-source Radeon Linux GPU driver to run on the PS4.

Hector Martin was the presenter for Console Hacking 2016 where he talked about his PlayStation 4 hacking and going from Sony's FreeBSD-based operating system to the lengthy process of getting Linux running on the PS4 and being able to make use of the Radeon APU.

The slides from the presentation can be found here. A Phoronix reader also shared his notes of the talk via this forum thread.


The PlayStation 4 uses a Sea Islands derived graphics processor. But even with the open-source Radeon GPU driver code on Linux, it was still quite an effort getting the graphics working. The presenter made it very clear that contrary to the belief of some, AMD has not been publishing register documentation for recent GPUs. And aside from the lack of proper documentation, when digging through the code there are undocumented areas and magic numbers.

Aside from insufficient documentation, the use of an external HDMI encoder and binary firmware blobs also caused bring-up issues of the hardware. There are also issues with writing GPU commands having issues when going via the command processor and thus needing to write from the CPU for now.

The developer has published some new reverse engineering tools for Radeon graphics, including for disassembly of the microcode/firmware.
This is a disassembler for the Radeon "microcode" processor, which seems to be internally called F32 (even though it's a 64-bit processor). This disassembler can handle firmware for CE, ME, MEC, PFP, RLC in the CI (Sea Islands) GPU series and probably others. SDMA uses a related but incompatible variant, so will not work.

Check out all of the links if you want to learn more.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week