I just wanted to let everyone know that a 64 bit kernel has been checked into the foundation github tree. Only source is available at this time so you will need to compile it yourself. Since this is very experimental, DO NOT BOTHER ANY OF THE FOUNDATION DEVELOPERS. PM ME OR POST HERE!
You will need to install the 64bit cross compilers to build the tree. I do this from a 64 bit chroot on a linux pc.
1. Get the source
git checkout rpi-4.8.y
2. Build it
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8 bcmrpi3_defconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8 modules_install
This installs the modules in the /lib/modules directory of the chroot.
3. Install it - Assuming the RPI 3 media is mounted at /mnt and /mnt/boot
cp arch/arm64/boot/Image /mnt/boot/kernel8.img
cp arch/arm64/boot/dts/broadcom/bcm2710-rpi-3-b.dtb /mnt/boot
cp -rv /lib/modules/* /mnt/lib/modules/
If you have a relatively new version of the firmware, no config.txt changes should be needed. It may be necessary to delete the other *.img and vmlinuz images. Of course, if you are using a custom kernel or initrd that will need to changed or removed. For more advance features, it is recommended to use u-boot instead of having the firmware load the kernel directly.
In my testing, I was able to get the open source 3d driver driver to work but it requires a patched version of mesa and potentially manual merging of the device tree overlay.
1. VCHIQ and HDMI audio are not included at this time.
2. PI Foundation touchscreen does not work correctly.