Contents

This is a still a WIP, but most stuff below has been verified.

Introduction

Newer kernels require that you use a recent MLO (x-loader) and u-boot.

You can build these from source, or try to find binaries. One issue with the binary route is that you might want to alter the kernel command line embedded inside u-boot. Such as for experimenting with different partition formats, or different filesystem types (ext3 vs ext2), etc. Of course you could stop the autoboot and type it in yourself, but we will build from source. An even better solution is to use a boot.scr file to send parameters to u-boot, it's easy to create, see below.

For this How-to, we will use the Code Sourcery G++ version arm-2009q3. It should already be installed on your system. MLO, u-boot and kernels have also been successfully built with arm-2010q1.

Edit the boot_mmc.txt file to suit your needs and re-run the mkimage command to generate a new boot.scr,
put it into the vfat partition along with MLO and uboot.bin.

Creating a working SD card

Use this script to prepare an SD card with the small vfat partition and the larger ext2/3 partition
(it has been posted many places, I take no credit for it btw, the card needs to be larger than 64Mbytes since this original script
wants to make a 64Mbyte vfat partition) You may need to be root for some of the following operations. For the feint of heart,
you can use sudo instead in the right places.