This page describes how to build a linux kernel that works on all i.MX6 based SolidRun devices.
We recommend using the SolidRun fork of linux version 4.9.x. This version works with all of our boards and enables all features of the hardware, including accelerated video de- and encoding and accelerated OpenGL-ES.
However we understand that sometimes there are reasons for using the upstream version of Linux. While a lot of work has gone into upstreaming support for our boards, it is not yet a drop-in replacement. Generally speaking if your application requires video processing or rendering, mainline is not ready.
Getting a Cross-Compiler
For building the latest (>= 2018.01) versions of U-Boot a recent version of GCC is required. U-Boot specifically requires version 6 as a minimum.
Cross-Compilers can be acquired from various sources:
export ARCH=arm CROSS_COMPILE=<External ARM toolchain prefix, e.g. arm-linux-gnueabihf→
# optionally modify the default configuration
make zImage dtbs modules
A successful build produces both a kernel image and DeviceTree Binaries:
The standard configuration is very minimal, you will want to add additional features such as file systems, PCI device drivers and Control-Group support for systemd! For more information about systemd, refer to the corresponding wiki page of the Gentoo project.
Build Instructions 3.14.y (Legacy)
To build the kernel perform the following on a Linux PC