HTC Nexus 9 is one of the first 64-bit ARM platform with powerful ARMv8 cores (e.g. not Cortex A53) that both commercially available, and relatively affordable at $399 to $599, at least significantly cheaper than the server boards such as Applied Micro X-C1. The tablet comes with Android 5.0 Lollipop, but for those of you who wish to have an ARM64 platform running Ubuntu or other 64-bit Linux operating systems, Ubuntu installation instructions provided by Ryan Houdek, Dolphin emulator developer, might come handy, especially it won’t affect your Android installation provided you have already unlocked your bootloader.

The instructions are fairly long so I won’t reproduce them all here, so I recommend you check the detailed instructions on XDA, but the short summary below may give an idea of the amount of work needed:

Install dependencies such as Aarch64 toolchain:

sudo apt-get install gcc g++ git gcc-4.9-aarch64-linux-gnu g++-4.9-aarch64-linux-gnu 1 sudo apt - get install gcc g ++ git gcc - 4.9 - aarch64 - linux - gnu g ++- 4.9 - aarch64 - linux - gnu Build a initramfs with buildroot. You’ll need to enable Aarch64 Linaro toolchain, set consolle output to ttyFIQ0, and select cpio roots in menuconfig step:

git clone https://github.com/buildroot/buildroot.git cd buildroot make menuconfig make -j8 1 2 3 4 git clone https : // github .com / buildroot / buildroot .git cd buildroot make menuconfig make - j8 Build the Linux kernel. Again you’ll have to change a bunch of options in make menuconfig step related to watchdog, graphics supports, and overall system configuration:

git clone https://android.googlesource.com/kernel/tegra.git cd tegra git checkout android-tegra-flounder-3.10-lollipop-release export ARCH=arm64 export CROSS_COMPILE=aarch64-linux-gnu- make flounder_defconfig make menuconfig make -j8 1 2 3 4 5 6 7 8 git clone https : // android .googlesource .com / kernel / tegra .git cd tegra git checkout android - tegra - flounder - 3.10 - lollipop - release export ARCH = arm64 export CROSS_COMPILE = aarch64 - linux - gnu - make flounder_defconfig make menuconfig make - j8 Extract a rootfs (e.g. ubuntu-core-14.04.1-core-arm64.tar.gz) to a USB flash drive formatted with EXT-2/3/4, make some minor modifications to the rootfs, and rebuil the kernel. Once everything is don and well, boot Ubuntu with fastboot as follow:

fastboot -c "console=fbcon=rotate:1 root=/dev/sda1 rootwait rw" boot arch/arm64/boot/Image.gz-dtb 1 fastboot - c "console=fbcon=rotate:1 root=/dev/sda1 rootwait rw" boot arch / arm64 / boot / Image .gz - dtb

Beside the Nexus 9, a USB OTG cable, and a USB flash drive required for installing Ubuntu ARM64 with these instructions, you should really make a headphone UART debug cable as accessing the serial console with make it easier to spot potential issues during installation.