Linux 3 on PS3: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
Line 37: Line 37:
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-
mkdir -p $HOME/linux-3.6.1-build/boot
mkdir -p $HOME/linux-3.6.1-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.6.1-build/boot LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.6.1-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.6.1-build LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.6.1-build
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.6.1-build/usr LOCALVERSION="-test"
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.6.1-build/usr


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


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



Revision as of 20:46, 10 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.6.1
------------

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

tar xvjf linux-3.6.1.tar.bz2
cd linux-3.6.1
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.6.1-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- install INSTALL_PATH=$HOME/linux-3.6.1-build/boot
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- modules_install INSTALL_MOD_PATH=$HOME/linux-3.6.1-build
make ARCH=powerpc CROSS_COMPILE=powerpc64-linux- headers_install INSTALL_HDR_PATH=$HOME/linux-3.6.1-build/usr

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

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

Precompiled Linux 3 Kernels