Yocto on i.MX6 boards

Published on May 22, 2013

Archived Notice

This article has been archived and may contain broken links, photos and out-of-date information. If you have any questions, please Contact Us.

Q: What is Yocto?

A.The smallest unit of measure, equal to one septillionth (10 -24).
A.A set of tools for building embedded Linux systems, or
B.A collaborative community of developers who want to bring order to the process of embedded Linux development, or
C.An ancient Swahili word that translates loosely to ate my hard drive?

Overview

Since starting this blog, we've talked a lot about LTIB, Timesys, Android, Buildroot and Linaro in these pages, but we've been largely silent about the Yocto Project.

This shouldn't be interpreted as a comment from us about the suitability of the project for use with our boards. It's more of a comment on our lack of experience with Yocto, and the strengths of the folks involved in Yocto and i.MX processors.

As mentioned above, the Yocto Project is an open-source, collaborative project that aims to consolidate the efforts of those involved in embedded Linux systems.

It builds upon the long history of the OpenEmbedded project to provide a framework for building system images through cross-compilation in a similar manner as other open-source projects like Buildroot, LTIB, and PTXDist.

Included in the structure are facilities for SDK creation, IDE integration, and a very large set of supported packages (recipes, in Yocto/OpenEmbedded jargon).

The ate my hard drive comment above was only slightly tongue-in-cheek. After a recent build of fsl-image-gui, my Yocto tree was 33GB! The package variety is large, and the fsl-image-gui package includes X, a Desktop Manager, and a lot of demo code.

In our "Where's the BSP?" post, we largely deflected the question, and the Yocto Project provides an open-source answer.

Structure

We are new to the area, but some key things we've learned include:
  • The Yocto Project is the umbrella project that defines standards across architectures.
  • Poky is a reference system of the Yocto Project. It provides a set of working examples about how a system might be constructed using Yocto.
  • Meta-FSL-ARM is a project to add support for Freescale's ARM processors. In Yocto jargon, it provides a meta layer with support for various i.MX boards, including ours.

Resources

Freescale and O.S. Systems have put a lot of time and effort into enabling Yocto on i.MX boards.

There are a number of posts on the i.MX Community site, including:

We'd like to give special thanks to Otavio Salvador for not only adding support for our SABRE Lite (er. BD-SL-i.MX6) and Nitrogen6x boards, but also writing some easy-to-follow instructions on how to build and install them.

The meta-freescale mailing list is also a great resource for seeing what others are doing with Yocto and i.MX and collaborating with others in the community who are using Yocto on Freescale processors.