Hacking Linux for chumby

From Chumby Wiki
Revision as of 14:09, 27 September 2007 by Ksteele (Talk | contribs)

Jump to: navigation, search

Alpha Prototype

The Alpha Prototype chumby runs a modified linux 2.4.20 kernel.

Compiling the Kernel

First, install the GCC Toolchain.

In order to build the chumby kernel, you can download the kernel source from chumby_kernel.tgz and build by doing the following:

# mkdir kernel
# cd kernel
# tar zxvf chumby_kernel.tgz
# make menuconfig
(then immediately exit and save the config)
# make dep
# make Image

If all goes well, you should end up with an uncompressed kernel image at arch/arm/boot/Image.

Ironforge

The "Ironforge" production chumby runs Linux 2.6.16 kernel.

First install the GNU Toolchain

In order to build the chumby kernel, you can download the kernel source from linux-2.6.16-chumby-1.0.tar.gz and build by doing the following:

# mkdir kernel
# cd kernel
# tar zxvf linux-2.6.16-chumby-1.0.tar.gz
# cd linux-2.6.16
# ARCH=arm BOARD=mx21ads CROSS_COMPILE=arm-linux- make menuconfig
(then immediately exit and save the config)
# ARCH=arm BOARD=mx21ads CROSS_COMPILE=arm-linux- make

If all goes well, you should end up with a compressed kernel image at arch/arm/boot/zImage and all of loadable kernel modules under the drivers directory.

To find all of the drivers, run:

# find drivers -name *.ko

Which should return:

drivers/media/video/cpia.ko
drivers/media/video/compat_ioctl32.ko
drivers/media/video/cpia_usb.ko
drivers/media/video/v4l1-compat.ko
drivers/media/video/v4l2-common.ko
drivers/media/video/videodev.ko
drivers/bluetooth/hci_usb.ko
drivers/bluetooth/hci_vhci.ko
drivers/video/console/bitblit.ko
drivers/video/console/fbcon.ko
drivers/video/console/fbcon_ccw.ko
drivers/video/console/fbcon_cw.ko
drivers/video/console/fbcon_rotate.ko
drivers/video/console/fbcon_ud.ko
drivers/video/console/font.ko
drivers/video/console/softcursor.ko
drivers/char/chumby_accel.ko
drivers/char/chumby_sense1.ko
drivers/char/chumby_timer.ko
drivers/usb/media/dsbr100.ko
drivers/usb/net/asix.ko
drivers/usb/net/cdc_ether.ko
drivers/usb/net/pegasus.ko
drivers/usb/net/usbnet.ko
drivers/usb/input/usbhid.ko
drivers/mfd/chumby-tsc2100.ko