Now that we have a basic aarch64 toolchain, it's possible to build Catalin Marinas' aarch64 kernel tree.

This is just a matter of using the alldefconfig target — there are no machine-specific configs in the tree at present. The VGA console code doesn't compile though (we don't have a vga.h header yet), so we need to tweak the config a little before building.

First up, clone Catalin's tree from git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64.git (gitweb view). I'm currently building from commit b6fe1645.

To build, add the path to your toolchain binaries (eg, aarch64-none-linux-gcc) to the PATH variable, and run:

[jk@pecola linux-arm64]$ mkdir obj
[jk@pecola linux-arm64]$ make O=obj ARCH=arm64 CROSS_COMPILE=aarch64-none-linux- alldefconfig
[jk@pecola linux-arm64]$ echo '# CONFIG_VGA_CONSOLE is not set' >> obj/.config
[jk@pecola linux-arm64]$ make O=obj ARCH=arm64 CROSS_COMPILE=aarch64-none-linux- vmlinux

My own builds are at people.canonical.com/~jk/arm64/kernel/2012-08-22. However, they're untested, as there's no hardware available at this stage.