Linux Kernel: Difference between revisions

From Xenon Wiki
Jump to navigation Jump to search
No edit summary
(Blanked the page)
Line 1: Line 1:
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]].


*[http://ozlabs.org/pipermail/linuxppc-dev/2007-March/032705.html (patch 1/7) xenon: add PCI Vendor ID: Microsoft]
<ol start="1"><li> Get the source for the Kernel from [http://www.kernel.org kernel.org] and unpack it. </ol>
<code>
    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>
<ol start="2"><li> Download and apply the Xenon patch/patchset matching your kernel. </ol>
<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>
<ol start="3"><li>  Configure the Kernel. You can manually fetch a configuration file from the internet (e.g. here) and type: </ol>
<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
<code>
    make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- menuconfig
</code>
<ol start="4"><li>  Build the Kernel by typing:</ol>
<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]].
== Configuring and Compiling the 2.6.24.3 Kernel (experimental) ==
<ol start="1"><li>  Get the source for the Linux 2.6.24.3 Kernel from kernel.org and unpack it.</ol>
<code>
    wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.3.tar.bz2
    tar -xvjf linux-2.6.24.3.tar.bz2
</code>
<ol start="2"><li>  Download and apply the experimental Xenon patch. </ol>
<code>
    wget http://home.comcast.net/~ssmurf/linux-2.6.24.3-xenon.diff
    cd linux-2.6.24.3/
    patch -p1 < ../linux-2.6.24.3-xenon.diff
</code>
<ol start="3"><li> Configure the Kernel. </ol>
<code>
    make ARCH=powerpc CROSS_COMPILE=powerpc64-unknown-linux-gnu- menuconfig
</code>
<ol start="4"><li> Build the Kernel by typing: </ol>
<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!
== Recent Kernels (2.6.33 and later) ==
[http://vserver.13thfloor.at/Stuff/XBOX360/ Patches for recent kernels] are available now, but considered highly experimental.
== Rootfilesystem via NFS ==
# Configure the kernel (CONFIG_CMDLINE in .config) for NFS (see [http://tldp.org/HOWTO/NFS-Root-4.html NFS-Root mini Howto] for details) to match your local setup.
#: ''example:'' CONFIG_CMDLINE=root=nfs video=xenonfb console=tty0 nfsroot=192.168.1.1:/mnt/nfsroot/xbox ip=dhcp
# Make sure that the IP Plug and Play (CONFIG_IP_PNP* in .config) options match your ip setup method.
== Pre-compiled Kernels ==
http://home.comcast.net/~ssmurf/XeLL-Bootloader-sda2-v2.6.24.3.tar.gz

Revision as of 07:44, 24 April 2010