There is a set of 7 patches available sent to the linuxppc mailing list on 08 March 2007, which have to be applied to Linux 2.6.20. If you’re interested in kernel development and/or adding new features, please take a look at Linux Kernel Development.
To run linux, you need to use the Linux Bootloader available right now. To compile the kernel, you need to set up a [cross compiler] toolchain (unless you already have another PowerPC Linux machine).
The minimal requirements for successfully cross compiling the Linux Kernel for your Xbox are (unverified):
cd
wget
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.21.tar.bz2
tar -xvjf linux-2.6.21.tar.bz2
</code>
cd linux-2.6.21/
for patch in pci_ids.h.diff linux-2.6.21-xenon-cpu.diff linux-2.6.21-xenon.diff \
linux-2.6.21-xenon-enet.diff linux-2.6.21-xenon-platform.diff \
linux-2.6.21-xenon-sata.diff linux-2.6.21-xenon-smc.diff \
linux-2.6.21-xenon-ugly-fb.diff linux-2.6.21-xenon-ugly-udbg.diff \
interlace.diff ; do
wget
http://op-co.de/xbox360/2.6.21/$patch
patch -p1 < $patch
done
</code>
make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- oldconfig
</code>
- Of course, you can fine-tune your Kernel configuration to fit your needs using
make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- menuconfig
</code>
make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- all
</code> If everything goes well, you will end up with a file arch/powerpc/boot/zImage.xenon containing the kernel which can be loaded by the XeLL.
Patches for recent kernels are available now, but considered highly experimental.
wget
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.38.8.tar.bz2
tar -xvjf linux-2.6.38.8.tar.bz2
</code>
wget -O xenon_config
http://sourceforge.net/projects/free60/files/Linux%20Kernel/xenon_config/download
wget -O patch-2.6.38.8-xbox0.11.1.diff
http://sourceforge.net/projects/free60/files/Linux%20Kernel/v2.6.38/patch-2.6.38.8-xbox0.11.1.diff/download
cd linux-2.6.38.8/
patch -p1 < ../patch-2.6.38.8-xbox0.11.1.diff
cp ../xenon_config .config
</code>
make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- menuconfig
</code>
make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- all
</code>
If everything goes well, you will end up with a file arch/powerpc/boot/zImage.xenon containing the kernel which can be loaded by the XeLL.
Remember, these patches are Experimental!
http://home.comcast.net/~ssmurf/XeLL-Bootloader-sda2-v2.6.24.3.tar.gz (archive.org)