Linux 3 on PS3: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
Line 13: Line 13:


<pre>
<pre>
linux-3.4.9
linux-3.4.12
------------
-------------


http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.9.tar.bz2
http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.12.tar.bz2


tar xvjf linux-3.4.9.tar.bz2
tar xvjf linux-3.4.12.tar.bz2
cd linux-3.4.9
cd linux-3.4.12
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- ps3_defconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- ps3_defconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- menuconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- menuconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux-
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux-
mkdir -p $HOME/linux-3.4.9-build/boot
mkdir -p $HOME/linux-3.4.12-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.4.9-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.4.12-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.4.9-build
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.4.12-build
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.4.9-build/usr
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.4.12-build/usr


linux-3.5.4
linux-3.5.5
------------
------------


http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.5.4.tar.bz2
http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.5.5.tar.bz2


tar xvjf linux-3.5.4.tar.bz2
tar xvjf linux-3.5.5.tar.bz2
cd linux-3.5.4
cd linux-3.5.5
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- ps3_defconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- ps3_defconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- menuconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- menuconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- LOCALVERSION="-test"
mkdir -p $HOME/linux-3.5.4-build/boot
mkdir -p $HOME/linux-3.5.5-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.5.4-build/boot LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.5.5-build/boot LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.5.4-build LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.5.5-build LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.5.4-build/usr LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.5.5-build/usr LOCALVERSION="-test"


Install new kernel on target machine
Install new kernel on target machine
-------------------------------------
-------------------------------------


cp linux-3.4.9-build/boot/vmlinux /boot/vmlinux-3.4.9
cp linux-3.4.12-build/boot/vmlinux /boot/vmlinux-3.4.12
cp linux-3.4.9-build/boot/System.map /boot/System.map-3.4.9
cp linux-3.4.12-build/boot/System.map /boot/System.map-3.4.12
rm -rf /lib/modules/3.4.9
rm -rf /lib/modules/3.4.12
cp -r linux-3.4.9-build/lib/modules/3.4.9 /lib/modules/
cp -r linux-3.4.12-build/lib/modules/3.4.12 /lib/modules/
depmod -a 3.4.9
depmod -a 3.4.12
</pre>
</pre>



Revision as of 08:30, 3 October 2012

Introduction

  • Linux 2.6 is EOL, which means no new features and no bugfixes.
  • Linux 3 is stable and works on PS3 Slim without problems.
  • I stopped Linux 2.6 development, new drivers are available only on Linux 3.

Linux 3 Kernel Patches

See my GIT repos: http://gitorious.ps3dev.net/ps3linux

Cross-Compiling

linux-3.4.12
-------------

http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.12.tar.bz2

tar xvjf linux-3.4.12.tar.bz2
cd linux-3.4.12
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- ps3_defconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- menuconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux-
mkdir -p $HOME/linux-3.4.12-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.4.12-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.4.12-build
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.4.12-build/usr

linux-3.5.5
------------

http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.5.5.tar.bz2

tar xvjf linux-3.5.5.tar.bz2
cd linux-3.5.5
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- ps3_defconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- menuconfig
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- LOCALVERSION="-test"
mkdir -p $HOME/linux-3.5.5-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.5.5-build/boot LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.5.5-build LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.5.5-build/usr LOCALVERSION="-test"

Install new kernel on target machine
-------------------------------------

cp linux-3.4.12-build/boot/vmlinux /boot/vmlinux-3.4.12
cp linux-3.4.12-build/boot/System.map /boot/System.map-3.4.12
rm -rf /lib/modules/3.4.12
cp -r linux-3.4.12-build/lib/modules/3.4.12 /lib/modules/
depmod -a 3.4.12

Precompiled Linux 3 Kernels