Recently I got hold of a PlayStation 3 and pretty much instantly tried to install Linux on it. It is a bit time-consuming but a surprisingly straight-forward affair. Documents, articles and blogs already exist aplenty on how to install Linux on the PS3 so this blog is just to note what I found strange along the way.
Hooking up to a VGA Monitor
Considering the number of hits you find when googling for PS3 to VGA converter, it is surprising there is not an obviously named piece of kit out there already. If using the HDMI cable, it must be connecting to HDCP-complaint display which rules out adapters of any sort if do not own such a device. I don't but found that a
VGA TV Gamer Box called a called TVBox 1440 on
maplins.co.uk that did the job of hooking the PS3 up to a bog-standard monitor.
Installing Linux (Debian)
The most straight-forward guide I found to install was on
IBM developerWorks. It is pretty dated but gets most of the basics. Early on, I installed Debian. At the time I tried, the
Debian Live CD was not able to start X properly but the
Debian Installer worked just fine. If going this route, be sure to avoid trying to setup a PReP partition. Not only do you not need it, but the installer makes a shambles of trying and gets seriously confused.
Getting ps3videomode
Many guides make reference to running this command to alter video (or getting it right in the first place in some cases). On install, I converted an RPM package from
rpmfind.net although I've spotted since that I could have tried the Debian packages linked from
here so look around. The actual git tree is git://git.kernel.org/pub/scm/linux/kernel/git/geoff/ps3-utils.git.
Other Post-Install Tasks
I found I had to add the ps3 sound module to modules.conf as it was not loaded automatically. Most stuff installed without headache although mileage varied considerably with movie players. xine had a strange echo effect but mplayer appeared to get it right. I did not track down why this is but I found it odd that I experienced a similar problem on my T60P ages back for a brief period of time.
Upgrading the Actual Kernel
The most straight-forward guide I found was
. What it missed is that recent kernels require the device-tree compiler. This is not in the stable repository but it's available from testing so grab it from there. Initially, I tried installing a stock 2.6.23 but it cannot even get past early-boot and without a serial console, I had no idea where it was getting locked up. I suspect Geoff Lavand the maintainer of the PS3 kernel tree has a developer version of the PS3 with serial console or he has a machine simulator of some sort.
As described in the linked article and Geoff's , there is a git tree for patches against the mainline kernel at git://git.kernel.org/pub/scm/linux/kernel/git/geoff/ps3-linux.git . Using the distributions config in /boot as a starting point, it was a simple affair to get something booting with kboot and it supported huge pages in the usual manner one would expect. The one gotcha was that the root device had renamed to /dev/ps3dai so a slightly different kboot entry is needed.
Wrapping up
All in all, getting the machine setup, CD's burned off, install done and the kernel upgrade took about 4 hours in all - much of it waiting for downloads. Between oprofile not working, no early printing support and the lack of a serial console, it is not the best box for kernel development on if you are like me and bust up early-boot a lot. However, once beyond early-boot, it has been a decent box to try stuff on as long as no proper serial console is not a problem for you. I still have to try a few Cell-related things to see what sort of behaviour I get from them so that either will be hella-interesting or a pure waste of time. Worst comes to the worst, I'll open those two games!