Please read this carefully, otherwise you may be left with an unbootable system! This kernel does not include the most important drivers in the kernel image, thus an initramfs image needs to be generated. This may sound cumbersome, but makes the boot process much more flexible. Well, follow these steps to install this kernel: 1. Install the initramfs-tools and uboot-mkimage These packages are needed to build the initramfs image and the uImage file that can be booted by U-Boot. $ apt-get install initramfs-tools uboot-mkimage 2. Create a modprobe config file for driver parameters. The 3c59x driver for the AmigaOne onboard ethernet for example needs to use normal PCI I/O instead of PCI MMIO for register access. This driver is now compiled as a module, thus the parameter cannot be specified at the kernel command line, but needs to be in a *.conf file in /etc/modprobe.d/: $ nano /etc/modprobe.d/local.conf options 3c59x global_use_mmio=0 3. Extract the archive in the root filesystem: $ cd / $ tar -xjvf /path/to/linux-2.6.38.3+.tar.bz2 4. Create the initramfs image: $ update-initramfs -c -k 2.6.38.3+ Note that Debian will automatically update the initramfs image, when it upgrades base packages (for example udev, libc6, etc..). However you need to rebuild the final boot image by yourself! This could be automated, but I was too lazy to do this for you. :-) So please take a look at the file dates of the initrd.img-* and boot.img-* files after the upgrade and rebuild the boot.img-* file, if it is older. If you want to rebuild the initramfs image by yourself, because you changed some settings in a file in /etc/modprobe.d/*, then simply run: $ update-initramfs -u -k 2.6.38.3+ 5. Build the final boot image: Unfortunately the slb_v2 can only load a single uImage image. Thus we have to generate a "Multi-File" uImage file that contains both the kernel and the initramfs image. The uImage should not be gzip-compressed, because the kernel wants to decompress the initramfs image during the boot process. That means that the kernel image has to be uncompressed, too. The archive contains the cuImage.amigaone.img file, which is the uncompressed kernel image WITHOUT an U-Boot header. This image can be used to generate the final boot image. $ cd /boot $ mkimage -A ppc -O Linux T multi -C none -a 0x04000000 \ -e 0x04000440 -n "Debian GNU/Linux 5.0" \ -d cuImage.amigaone.img:initrd.img-2.6.38.3+ \ boot.img-2.6.38.3+ 6. Create a boot entry in a1boot.conf $ nano a1boot.conf Add something like the following line: DebianSqueeze-2.6.38.3+ boot.img-2.6.38.3+ root=/dev/hdxy \ console=tty0 l2cr=0x80000000 ide_core.ignore_cable=0 \ ide_core.ignore_cable=1 A. Playing with Kernel Mode Setting (KMS) and Direct Rendering Manager (DRM) KMS and DRM are still unstable on the A1, but if you want to try it out, then add video=radeonfb:off to the kernel command line to disable the radeonfb driver. You also have to create a /etc/modprobe.d/radeon-kms.conf file to disable writeback: $ nano /etc/modprobe.d/radeon-kms.conf options radeon no_wb=1 Don't forget to rebuild the initramfs and boot image afterwards! It's a good idea to have a second boot entry in the SLB menu, that still allows you to boot with the radeonfb driver enabled!