Last month, pcDuino released Android 4.4 and Ubuntu images for pcDuino8 board powered by Allwinner A80 octa core processor, and since it’s the same board layout as A80 OptimusBoard, I decided to try it out, but it failed as the update script would try to flash it to a partition that’s too small for the root file systems. But last week, Ian Morrison and Minidodes gave it another try, and successfully booted Ubuntu, or more exactly Lubuntu, on A80 OptimusBoard.
Both their screenshot reports sun9i platform in /proc/cpuinfo, so that’s definitely Allwinner A80, but only one core is shown. I’m not sure if it’s because the other are idled and don’t show, or for some reasons, the kernel only supports one core at this stage.
Anyway, here’s how they did to install Lubuntu:
- Flash the kernel (pcduino8_kernel_livesuit_20141008.img) with PhoenixCard or Livesuit first. See instructions to use Livesuit with A80 OptimusBoard.
- Extract the rootfs (pcduino8_ubuntu_20141008.rar) to an SD card or USB flash drive. There should be two files: pcduino8_ubuntu_20141008.img and .
- Boot the board, but don’t insert the SD card or USB flash drive yet.
- update.sh script will attempt to copy the rootfs to /dev/nandd, but there’s not even space, so it will fail. So instead login as root (no password) and kill update.sh: ps ax | grep update, kill “pid”.
- Now connect the mass storage device to pcDuino3 / A80 Optimusboard, and mount it to /mnt
- Flash the Ubuntu image to /dev/mmcblk0p1:
12dd if=pcduino8_ubuntu_20141008.img of=/dev/mmcblk0p1 bs=1Msync
- Now reboot the board and interrupt the boot sequence to enter U-boot, and use ‘env’ to change the bootargs with mmc_root to /dev/mmcblk0p1 and init to /sbin/init.
- Save the environment with env save, and boot the board to start Ubuntu.
I have not tried (yet), since I’m busy with other hardware, so let me know if the instructions above need improvement. [Update: the procedure may depend on the Android firmware / flash partition, as described in the comments section]
On a side note, Merrii released some new SDKs for A10, A20, A31, and A80.