My basic objective is to build a kernel, put the uImage on partition 1 (fat) of a USB memory stick, put the file system on partition 2 (ext2), and boot the Sheeva Plug from the memory stick. Then I will be able to make a kernel of my choice.

I have had success using the linux-2.6.30.rc6 uImage and the file system distributed therewith. I have not had success trying to compile the kernel from the distributed source (linux-2.6.22.18), probably because I have had trouble finding and handling the patches that go with it.

Now I have downloaded the linux-2.6.30.3 source and am trying to compile and run it from the memory stick. Here are the steps that I have gone through:

1. Go to ftp.kernel.org and get linux-2.6.30.3.tar.bz2 and linux-2.6.30.3.tar.bz2.sign.

2. Expand this and rename the directory to linux-feroceon_4_2_7_KW.

3. Apply the Marvell LSP patch (linux-feroceon_4_2_7_KW.zip.

4. Apply the big endian patch (0001_gw_BE-fix.patch), but it said it couldn't find the file to be changed.

5. Edit the Makefile to redefine $ARCH to be "arm", and $CROSS_COMPILE to be "arm-none-linux-gnueabi-"

6. make mrproper

7. make mv88f62181_defconfig

8. make uImage This gives a uImage 2,013,908 bytes long. Copy it to stick part 1.

9. make modules

10. copy the /home/Sheevaplug/linux-feroceon_4_2_7_KW/crypto to stick part 2/lib/modules/kernel/crypto