Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

   Hummingboard Mini Distribution


   A basic GNU/Linux distribution for the Hummingboard from

Main features:

   * Arm Cortex A9, Neon, FPU optimized toolchain
   * Glibc C library
   * Systemd init system
   * GNU/Linux system utilities (no busybox)
   * Ethernet network support
   * OpenSSH client/server
   * Gstreamer-1.8.x (including iMX HW enc/dec plugins)
   * Vivante GPU drivers (including samples)
   * QT5 (including examples)

Main builds:

   fs      - Filesystem
   linux   - Linux kernel
   u-boot  - Bootloader

Quick build guide:

   $ git clone --recursive git://
   $ cd hummingboard
   $ buildgear build fs
   $ buildgear build u-boot

Prebuilt images:

   For demo purpose, prebuilt images are available here:

Login details:

    Username: root
    Password: root

Example feature tests:

   * Gstreamer video output test:

       $ gst-launch-1.0 videotestsrc ! imxipuvideosink

   * Gstreamer H264/AAC decoding:
       $ echo 0 > /sys/class/graphics/fbcon/cursor_blink
       $ wget
       $ gst-launch-1.0 playbin uri=file:///root/ video-sink=imxipuvideosink

   * QT5 demos are available in /opt/qt5/examples/*


   To install on SD card simply follow the steps below:

   (replace X with the device number of your SD card)

   1. Install 1st stage bootloader:
      $ sudo dd if=SPL of=/dev/sdX bs=1K seek=1

   2. Install 2nd stage bootloader:
      $ sudo dd if=u-boot.img of=/dev/sdX bs=1K seek=42

   3. Create a single primary partition (default to 2048 start sector):
      $ echo -e "n\np\n1\n\n\nw\n" | sudo fdisk /dev/sdX

   4. Install ext4 type filesystem:
      $ sudo mkfs.ext4 -L rootfs /dev/sdX1

   5. Install root filesystem (includes kernel in /boot directory):
      <mount your new rootfs partition>
      $ cd <your rootfs mount point>
      $ sudo tar xf fs.tar.xz

Build system requirements:

   Tested on Ubuntu 15.10 (64-bit x86) with the following additional packages

   $ sudo apt-get install unzip groff bison flex gperf texinfo xsltproc \
                          libtool-bin libncurses5-dev gawk libexpat1-dev \
                          gettext u-boot-tools libglib2.0-dev intltool \
                          libxml2-utils docbook-xml cmake g++ pixz lzop \
                          u-boot-tools ruby docbook-xsl

   Also requires reconfiguring "/bin/sh" to use bash:

   $ sudo dpkg-reconfigure dash

   Fact: Many software distributions fail to build using the dash shell.

Known issues:


Filesystem layout:

   /usr/bin/            User binaries
   /usr/sbin/           System binaries (daemons, system utilities, etc.)
   /usr/lib/            Libraries
   /usr/lib/<prog>/     Program specific libraries (plug-ins, addons, etc.)
   /usr/include/        Header files
   /usr/share/man/      Man pages
   /usr/share/<prog>/   Program data files shared across all architectures
   /usr/etc/<prog>/     Configuration files for user programs
   /etc/                Configuration files for system programs

   The filesystem directory hierachy is arranged according to the FHS 2.3 
   standard with the exceptions that /bin and /sbin are unused. Instead all
   software make use of /usr/bin and /usr/sbin. For backwards compatibility
   /bin and /sbin remain links to /usr/bin and /usr/sbin respectively.
   See for more details.


   Martin Lund <>


The Hummingboard Mini Distribution



No releases published


No packages published