2.6.18 Kernel for Xbox

Fri 08 May 2009 by LrdShaper

Category : Asterisk Tags: gnu/linux, xbox, asterisk, kernel, xebian, debian

I wanted to move my Asterisk setup from my NSLU2 to the Xbox. After successfully compiling both Asterisk and Zaptel I get an error while trying to load the Zaptel modules:

FATAL: Error inserting ztdummy (/lib/modules/ Unknown symbol in module, or unknown parameter (see dmesg)

and a quick check in dmesg shows:

modprobe zaptel: Unknown symbol crc_ccitt_table

Which tells me that my kernel wasn't compiled with CONFIG_CRC_CCITT support, great! Nevermind, check the repository for linux sources so we can recompile with CONFIG_CRC_CCITT support and maybe upgrade the kernel in the process:

lrdshaper@Corinthian~# apt-cache search ^linux-source
linux-source-2.6.18 - Linux kernel source for version 2.6.18
linux-source-2.6.24 - Linux kernel source for version 2.6.24

Ok, so I need an Xbox kernel patch for either 2.6.18 or 2.6.24. Let's check sourceforge for the latest Xbox kernel patch: latest is 2.6.16. sigh

But wait! That doesn't mean someone else hasn't made an Xbox kernel patch yet based on a later kernel version. So let's check with Google...... and 45mins of searching later the closest that I can find is...wait for it... 2.6.22!. Aarrgh!

Still have a chance, use the 2.6.16 or 2.6.22 Xbox kernel patch as a template and make it work with 2.6.18 or 2.6.24. Decided to start with 2.6.16 first and after many hours of compile, installed the new kernel, reboot and...... it's alive!!!

Asterisk runs better now with no noticeable lags and dropped calls. For those interested, here're the 2.6.18 Kernel and 2.6.18 Kernel headers for Xbox running Xebian 1.1.4