UP Board
The UP Board is a Intel based SOC device by Aaeon. There is a companion device, the UP Core, that uses the same chipset and devices. Installation of Arch is no different, except that you do not have the GPIO bus to enable.
Installation
The UP Board features a UEFI only setup (no BIOS emulation). The standard UEFI installation process may be followed. systemd-boot works well as a simple bootloader.
/dev/mmcblk0
. GPT is the recommended partition type.GPIO
The GPIO pins on the UP board are routed through a CPLD that requires a custom driver. This driver has not yet been added to the mainline kernel, so it is required to build a custom kernel or patch it in order to add the functionality. See UP's official wiki page for more information.
Sound
As of August 2016, the mainline kernel does not support sound through HDMI for cherry trail based devices like the UP Board. There are plans on adding support to the mainline kernel as noted here, but in the mean time if you wish to have sound you will need to manually patch your kernel. There is currently no AUR package including these patches.
Compilation
Without any optimizations, compilation on the UP Board takes around 5-6 hours. Setting your MAKEFLAGS
beforehand will drastically improve the compilation time. If you are using the ABS the makepkg page has information on how to set the variable in there.
Manual
- Download a copy of the patched kernel from here and the latest kernel sources from https://www.kernel.org.
- Once you have extracted the archive, you will need to remove the inline reference in one of the header files. You can do this with sed like so:
$ sed -i 's/inline//g' sound-byt-cht-hdmi-v4.7/sound/hdmi_audio/intel_mid_hdmi_audio.h
- Next you will need to create a patch for the 2 folders that have been changed,
sound/
anddrivers/gpu/drm/i915
:
$ diff -ENwbur {linux-4.7.2,sound-byt-cht-hdmi-v4.7}/drivers/gpu/drm/i915 >> cherry.patch $ diff -ENwbur {linux-4.7.2,sound-byt-cht-hdmi-v4.7}/sound >> cherry.patch
- Once the patch has been created you can move it into the kernel sources directory and run:
$ patch -p1 < cherry.patch
- Lastly, you will need to make sure that
CONFIG_SUPPORT_HDMI=y
option is in the.config
.
Arch Build System
If you wish to build the kernel using the ABS, follow the steps provided in Kernels/Arch Build System. Remember to add the patch to the prepare function and run updpkgsums to update the checksum for the changed config file.
Troubleshooting
Reboot causing kernel panic
Rebooting the board multiple times without disconnecting power, as what could happen if using as a server, could fail with a kernel panic. This is possibly due to a bug, as discussed at "UPboard Ubilinux Freezing" forum topic and Bug 106721 in Freedesktop.org bug tracker.
To make rebooting the board more reliable, try adding the following to your /etc/default/grub
configuration.
/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="reboot=efi,cold fsck.mode=force fsck.repair=yes"