Introduction

This document is the release notes for the FSL Community BSP 1.7, which is the result of a community effort to improve Freescale’s SoC support for OpenEmbedded and Yocto Project.

Defining the FSL Community BSP

The FSL Community BSP is a community-driven project to provide and maintain Board Support Package (BSP) metadata layers for use in OpenEmbedded and Yocto Project with Freescale’s SoCs.

The FSL Community BSP follows Yocto Project’s release schedule and branch naming (since release 1.3, denzil).

See the Yocto Project Release for details on the Yocto Project.

Motivation

The FSL Community BSP started with the goal of easing the use of OpenEmbeedded and Yocto Project with Freescale’s SoCs and providing an example of how to assemble an easy-to-use platform as the basis for future products.

The FSL Community BSP provides:

  • common environment configuration;
  • multiple download layers with the use of repo;
  • common location for discussing Freescale SoCs, kernels, bootloaders, user space packages, (BSP in general), bugs, how-tos, and so on

What the FSL Community BSP is not

The FSL Community BSP does not have a paid support team. The members of this community have full-time jobs and work on the project in their spare time. Most of them are working with Freescale SoCs in their full-time job, so it means some of them can provide paid support if requested.

The provided source code is not intended to be a product in itself. It is a reference platform for people to build products with. Because of this, plan to have a development and test cycle for your product if you decide to base it on the FSL Community BSP.

The project is community-driven work, and it is NOT an official Freescale support channel.

What you can expect

  • You can expect help when you post a question, but please be patient. Wait for at least two days for a response. Most of the time, people do reply when they know an answer or have advice to offer. If you don’t receive a reply, then it may be due to no one in the community having an adequate response.
  • The stable branch is supported for six months after the release date (following the Yocto Project’s release schedule);
  • The upstreaming takes place as quickly as possible and any needed adjustment is going to be made accordingly.

What the community expects from you

The community does expect that you contribute back by:

  • replying when you know the answer to a question in the mailing list;
  • reviewing the patches sent to mailing list;
  • testing new patches that affect you directly or indirectly;
  • reporting bugs you may find;
  • upstreaming bug fixes;
  • upstreaming features that may be good for the community.

Upstreaming

The FSL Community BSP provides test images and demos in addition to the base BSP for Freescale reference boards and third-party boards. In addition to the BSP, a Linux-based operating system typically requires several other packages, such as ssh client/server, window managers, applications, and so on. These packages are not part of the BSP. In other words, the FSL Community BSP is used with applications, tools and metadata from other projects, such as OpenEmbedded and Poky.

The FSL Community BSP always offers a stable version and a development version. You may face errors that are not caused by FSL Community BSP‘s layers but instead by OpenEmbedded’s or Poky’s metadata. In this case, the error must be fixed in its layer.

The following image shows the upstream levels:

Main branch names

  • master-next: this branch is used to keep the patches to be built by the autobuilder for the very first test build. Do not expect to have a clear merging schedule, or to have a stable project when working with the master-next branch;
  • master: this is the branch where development takes place. Any new feature or bug fix must be merged here first. This is the development of the next stable branch;
  • dizzy: the latest stable branch. This branch only accepts bug fixes, and is supported for 6 months after the release date.

There are other branches available, and they are the previous stable branches. They are kept online for users’ convenience, and you should not expect backports or bug fixes.

Upstream cycle

In addition to the normal Yocto Project upstream process, there is also a BSP upstream cycle.

The BSP upstream cycle starts just after a Freescale Official Release is published in git.freescale.com. The patches to adapt the recipes from meta-fsl-bsp-release are sent out for review to the meta-freescale mailing list and are merged in the meta-fsl-arm and meta-fsl-demos layers or upstreamed to Yocto Project accordingly.

A more detailed step-by-step process is shown below:

  1. New Freescale Official Release is published;
  2. The patches are sent to meta-freescale;
  3. After the review process, the patches are merged in the proper layer’s master-next branch;
  4. Source code is built by the autobuilder;
  5. After one week in master-next, it is merged in master;
  6. Freescale internally bases the next Freescale Official Release from the community source code;
  7. Back to step 1.

The result is that Freescale uses the FSL Community BSP source code with its bug fixes, improvements, and any new features to create the next Freescale Official Release.

Freescale uses the latest stable branch from Yocto Project to base the next Freescale Official Release. When this release is published, it is rebased and reworked to be merged in the current development branch.

The differences between FSL Community BSP and Freescale Official Release

The goal for each project is different. See below for the main points of divergence.

Freescale Official Release

The Freescale Official Release is intended to provide a static base for Freescale to test and validate the BSP modules with Freescale evaluation boards, and it is developed internally by Freescale. The set of supported boards vary from release to release and is listed in the Freescale Official Release notes for the specific version. The release points to a static revision of every included layer. Therefore, the release does not receive updates and bug fixes.

FSL Community BSP

The FSL Community BSP is a reference system that can be used as a base for products and is an open project that accepts contributions from the community. It supports a wide range of boards which range from Freescale evaluation boards (meta-fsl-arm layer) to third-party boards (meta-fsl-arm-extra). The release is a “moving target”, so there are updates on top of the released source code, such as the addition of new features and bug fixes.

Comparative between Freescale Official Release and FSL Community BSP
  Freescale Official Release FSL Community BSP
Intended use Reference system for BSP modules test and validation on Freescale Reference Boards Reference system for use as base for any project for all supported boards
Code Static. Only include any bug fixes on the upcoming release Updates. Receives bug fixes and has security issues fixed often
Contribution Indirect contribution via FSL Community BSP. After revision, contribution may be merged in upcoming release Open, everyone is welcome to contribute to the project
Board Support Limited, as it supports just the Freescale evaluation boards listed in the Release Notes Extended, as it supports both Freescale evaluation boards and 3rd party boards. See Supported Board List
Yocto Project Compatible No Yes
Support i.MX Community meta-freescale
Repository git.freescale.com github.com/Freescale

FSL Community BSP Scope

The scope of the FSL Community BSP includes the meta layers:

  • meta-fsl-arm: provides the base support and Freescale ARM reference boards;
  • meta-fsl-arm-extra: provides support for 3rd party and partner boards;
  • meta-fsl-demos: provides images recipes, demo recipes, and packagegroups used to easy the development with Yocto Project.
  • Documentation: provides the source code for FSL Community BSP Release Notes (RN), User Guide (UG) and Frequently Asked Questions (FAQ)

Kernel Release Notes

The FSL Community BSP includes support for several kernel providers. Each machine may have a different Linux Kernel provider.

The FSL Community BSP is not responsible for the content of those kernels. Although we as community should feel empowered to submit bug fixes and new features for those projects.

See the respective Linux Kernel provider for your machine in section Linux Kernel.

Different Product SoC Families

Currently, the FSL Community BSP includes the following Product SoC Families:

  • i.MX Application Processors (imx): Regarding the i.MX Freescale Page: i.MX applications processors are multicore ARM®-based solutions for multimedia and display applications with scalability, high performance, and low power capabilities.
  • Vybrid Controller Solutions based on ARM® Cores (vybrid): Regarding the Vybrid Freescale Page: Vybrid controller solutions are built on an asymmetrical-multiprocessing architecture using ARM® cores as the anchor for the platform, and are ideal for many industrial applications.
  • Layerscape Architecture (ls): Regarding the Layerscape Freescale Page: delivers unprecedented efficiency and scale for the smarter, more capable networks of tomorrow.

Freescale groups a set of SoCs which target different markets in product families. Those are grouped according to their SoC features and internal hardware capabilities.

The Yocto Project’s tools have the required capabilities to differentiate the architectures and BSP components for the different SoC families. In this perspective, the FSL Community BSP can support a wide range of architectures and product lines which go across several markets.

For the FSL Community BSP, the different SoCs, from all product lines manufactured by Freescale, can be seen as different machines, thus easing the use of same architecture across different markets.

Supported Board List

Please, see the next table for the complete supported board list.

Supported machines in FSL Community BSP
Machine Name SoC Layer
cfa10036 Crystalfontz CFA-10036 i.MX28 meta-fsl-arm-extra
cfa10037 Crystalfontz CFA-10037 i.MX28 meta-fsl-arm-extra
cfa10049 Crystalfontz CFA-10049 i.MX28 meta-fsl-arm-extra
cfa10055 Crystalfontz CFA-10055 i.MX28 meta-fsl-arm-extra
cfa10056 Crystalfontz CFA-10056 i.MX28 meta-fsl-arm-extra
cfa10057 Crystalfontz CFA-10057 i.MX28 meta-fsl-arm-extra
cfa10058 Crystalfontz CFA-10058 i.MX28 meta-fsl-arm-extra
cgtqmx6 Congatec Qmx6 i.MX6Q meta-fsl-arm-extra
cubox-i SolidRun CuBox-i and HummingBoard i.MX6 Q/DL meta-fsl-arm-extra
imx233-olinuxino-maxi OLIMEX iMX233-OLinuXino-Maxi i.MX23 meta-fsl-arm-extra
imx233-olinuxino-micro OLIMEX iMX233-OLinuXino-Micro i.MX23 meta-fsl-arm-extra
imx233-olinuxino-mini OLIMEX iMX233-OLinuXino-Mini i.MX23 meta-fsl-arm-extra
imx233-olinuxino-nano OLIMEX iMX233-OLinuXino-Nano i.MX23 meta-fsl-arm-extra
imx23evk Freescale i.MX23 Evaluation Kit i.MX23 meta-fsl-arm
imx28evk Freescale i.MX28 Evaluation Kit i.MX28 meta-fsl-arm
imx31pdk Freescale i.MX31 Platform Development Kit i.MX31 meta-fsl-arm
imx35pdk Freescale i.MX35 Platform Development Kit i.MX35 meta-fsl-arm
imx51evk Freescale i.MX51 Evaluation Kit i.MX51 meta-fsl-arm
imx53ard Freescale i.MX53 SABRE Automotive Board i.MX53 meta-fsl-arm
imx53qsb Freescale i.MX53 Quick Start Board i.MX53 meta-fsl-arm
imx6dl-riotboard RIoTboard i.MX6S meta-fsl-arm-extra
imx6dlsabreauto Freescale i.MX6DL SABRE Automotive i.MX6DL meta-fsl-arm
imx6dlsabresd Freescale i.MX6DL SABRE Smart Device i.MX6DL meta-fsl-arm
imx6qsabreauto Freescale i.MX6Q SABRE Automotive i.MX6Q meta-fsl-arm
imx6qsabrelite Boundary Devices i.MX6Q SABRE Lite i.MX6Q meta-fsl-arm-extra
imx6qsabresd Freescale i.MX6Q SABRE Smart Device i.MX6Q meta-fsl-arm
imx6slevk Freescale i.MX6SL Evaluation Kit i.MX6SL meta-fsl-arm
imx6solosabreauto Freescale i.MX6Solo SABRE Automotive i.MX6S meta-fsl-arm
imx6solosabresd Freescale i.MX6Solo SABRE Smart Device i.MX6S meta-fsl-arm
ls1021aqds Freescale LS1021AQDS board ls102xa meta-fsl-arm
ls1021atwr Freescale LS1021ATWR board ls102xa meta-fsl-arm
m28evk DENX M28 SoM Evaluation Kit i.MX28 meta-fsl-arm-extra
m53evk DENX M53 SoM Evaluation Kit i.MX53 meta-fsl-arm-extra
nitrogen6x Boundary Devices Nitrogen6X i.MX6Q meta-fsl-arm-extra
nitrogen6x-lite Boundary Devices Nitrogen6X Lite i.MX6S meta-fsl-arm-extra
pcl052 Phytec Cosmic Vybrid Development Kit vf60 meta-fsl-arm-extra
pcm052 Phytec phyCORE Vybrid Development Kit vf60 meta-fsl-arm-extra
quartz Device Solutions Quartz Vybrid Development Kit vf60 meta-fsl-arm-extra
twr-vf65gs10 Freescale Vybrid TWR-VF65GS10 vf60 meta-fsl-arm
wandboard-dual Wandboard i.MX6 Wandboard Duallite i.MX6DL meta-fsl-arm-extra
wandboard-quad Wandboard i.MX6 Wandboard Quad i.MX6Q meta-fsl-arm-extra
wandboard-solo Wandboard i.MX6 Wandboard Solo i.MX6S meta-fsl-arm-extra

Machine Maintainers

Since FSL Community BSP Release 1.6 (Daisy), the maintainer field in machine configuration files of meta-fsl-arm and meta-fsl-arm-extra is mandatory for any new board to be added.

So now on, every new board must have someone assigned as maintainer. This ensures, in long term, all boards with a maintainer assigned. Current orphan boards are not going to be removed unless it causes maintenance problem and the fix is not straightforward.

The maintainer duties:
  • The one with casting vote when a deadlock is faced.
  • Responsible to keep that machine working (that means, booting and with some stability) Keep kernel, u-boot updated/tested/working.
  • Keep release notes updated
  • Keep test cycle updated
  • Keep the most usual images building and booting

When a build error is detected, the maintainer will “fix” it. For those maintainers with kernel control (meta-fsl-arm-extra), it is expected that they properly fix the kernel issue (when it’s a kernel issue). However, anything out of community control should be worked around anyway.

Machines with maintainers

Machines with maintainers
Machine Name
cfa10036 Crystalfontz CFA-10036
cfa10037 Crystalfontz CFA-10037
cfa10049 Crystalfontz CFA-10049
cfa10055 Crystalfontz CFA-10055
cfa10056 Crystalfontz CFA-10056
cfa10057 Crystalfontz CFA-10057
cfa10058 Crystalfontz CFA-10058
cgtqmx6 Congatec Qmx6
cubox-i SolidRun CuBox-i and HummingBoard
imx23evk Freescale i.MX23 Evaluation Kit
imx28evk Freescale i.MX28 Evaluation Kit
imx51evk Freescale i.MX51 Evaluation Kit
imx53ard Freescale i.MX53 SABRE Automotive Board
imx53qsb Freescale i.MX53 Quick Start Board
imx6dl-riotboard RIoTboard
imx6dlsabreauto Freescale i.MX6DL SABRE Automotive
imx6dlsabresd Freescale i.MX6DL SABRE Smart Device
imx6qsabreauto Freescale i.MX6Q SABRE Automotive
imx6qsabrelite Boundary Devices i.MX6Q SABRE Lite
imx6qsabresd Freescale i.MX6Q SABRE Smart Device
imx6slevk Freescale i.MX6SL Evaluation Kit
imx6solosabresd Freescale i.MX6Solo SABRE Smart Device
ls1021aqds Freescale LS1021AQDS board
ls1021atwr Freescale LS1021ATWR board
nitrogen6x Boundary Devices Nitrogen6X
nitrogen6x-lite Boundary Devices Nitrogen6X Lite
pcl052 Phytec Cosmic Vybrid Development Kit
pcm052 Phytec phyCORE Vybrid Development Kit
quartz Device Solutions Quartz Vybrid Development Kit
twr-vf65gs10 Freescale Vybrid TWR-VF65GS10
wandboard-dual Wandboard i.MX6 Wandboard Duallite
wandboard-quad Wandboard i.MX6 Wandboard Quad
wandboard-solo Wandboard i.MX6 Wandboard Solo

Machines without a maintainer

Machines without a maintainer
Machine Name
imx233-olinuxino-maxi OLIMEX iMX233-OLinuXino-Maxi
imx233-olinuxino-micro OLIMEX iMX233-OLinuXino-Micro
imx233-olinuxino-mini OLIMEX iMX233-OLinuXino-Mini
imx233-olinuxino-nano OLIMEX iMX233-OLinuXino-Nano
imx31pdk Freescale i.MX31 Platform Development Kit
imx35pdk Freescale i.MX35 Platform Development Kit
imx6solosabreauto Freescale i.MX6Solo SABRE Automotive
m28evk DENX M28 SoM Evaluation Kit
m53evk DENX M53 SoM Evaluation Kit

Software Architecture

SoC Hierarchy

The following tree shows the SoC hierarchy:

Linux Kernel

FSL Community BSP supports the following sources for Linux Kernel:

  • linux-boundary: Linux kernel for Boundary Devices boards.
  • linux-cfa: Linux kernel for Crystalfontz boards.
  • linux-congatec: linux-congatec version 3.10.17-r0.
  • linux-cubox-i: Linux kernel that is based on Linaro’s 3.14 releases, with full support for the i.MX6 features.
  • linux-denx: DENX mainline based Linux kernel.
  • linux-fslc: Linux kernel based on mainline kernel used by FSL Community BSP in order to provide support for some backported features and fixes, or because it was applied in linux-next and takes some time to become part of a stable version, or because it is not applicable for upstreaming.
  • linux-imx: Linux Kernel provided and supported by Freescale with focus on i.MX Family Reference Boards. It includes support for many IPs such as GPU, VPU and IPU.
  • linux-ls1: Linux Kernel provided and supported by Freescale with focus on Layerscape1 Family Boards.
  • linux-timesys: Linux Kernel with added drivers and board support for Vybrid-based platforms.
  • linux-wandboard: Linux kernel for Wandboard.

As stated in Kernel Release Notes, FSL Community BSP is not responsible for the Linux Kernel content in any kernel provider. If you are looking for the feature list, supported devices, official way to get a support channel or how to report bug, please, see above where to get help, for each kernel provider.

  • linux-imx: provider, Freescale has a release notes document for each version released. This document has a list of known issues, new features, list of kernel arguments, and the linux-imx kernel scope for each Freescale Reference Board. This document is present into the Document Bundle provided by Freescale.

Default Linux Providers

The following table shows the default version of Linux Kernel provided by FSL Community BSP for each supported machine.

Default Linux kernel version for each supported machine
Board Kernel Provider Kernel Version
cfa10036 linux-cfa 3.12
cfa10037 linux-cfa 3.12
cfa10049 linux-cfa 3.12
cfa10055 linux-cfa 3.12
cfa10056 linux-cfa 3.12
cfa10057 linux-cfa 3.12
cfa10058 linux-cfa 3.12
cgtqmx6 linux-congatec 3.10.17-1.0.2_qmx6
cubox-i linux-cubox-i 3.14.14
imx233-olinuxino-maxi linux-fslc 3.18+git
imx233-olinuxino-micro linux-fslc 3.18+git
imx233-olinuxino-mini linux-fslc 3.18+git
imx233-olinuxino-nano linux-fslc 3.18+git
imx23evk linux-fslc 3.18+git
imx28evk linux-imx 2.6.35.3-maintain
imx31pdk linux-fslc 3.18+git
imx35pdk linux-fslc 3.18+git
imx51evk linux-imx 2.6.35.3-maintain
imx53ard linux-imx 2.6.35.3-maintain
imx53qsb linux-imx 2.6.35.3-maintain
imx6dl-riotboard linux-fslc 3.18+git
imx6dlsabreauto linux-imx 3.10.17-1.0.2_ga
imx6dlsabresd linux-imx 3.10.17-1.0.2_ga
imx6qsabreauto linux-imx 3.10.17-1.0.2_ga
imx6qsabrelite linux-boundary 3.10.17-1.0.2_ga+yocto
imx6qsabresd linux-imx 3.10.17-1.0.2_ga
imx6slevk linux-imx 3.10.17-1.0.2_ga
imx6solosabreauto linux-imx 3.10.17-1.0.2_ga
imx6solosabresd linux-imx 3.10.17-1.0.2_ga
ls1021aqds linux-ls1 3.12+ls1
ls1021atwr linux-ls1 3.12+ls1
m28evk linux-fslc 3.18+git
m53evk linux-denx 3.9-master
nitrogen6x linux-boundary 3.10.17-1.0.2_ga+yocto
nitrogen6x-lite linux-boundary 3.10.17-1.0.2_ga+yocto
pcl052 linux-timesys 3.0.15
pcm052 linux-timesys 3.0.15
quartz linux-timesys 3.0.15
twr-vf65gs10 linux-timesys 3.0.15
wandboard-dual linux-wandboard 3.10.17-1.0.2-wandboard
wandboard-quad linux-wandboard 3.10.17-1.0.2-wandboard
wandboard-solo linux-wandboard 3.10.17-1.0.2-wandboard

Bootloaders

FSL Community BSP supports barebox and u-boot as bootloaders.

  • barebox: Barebox - a bootloader that inherits the best of U-Boot and the Linux kernel
  • u-boot-boundary: u-boot for Boundary Devices boards.
  • u-boot-congatec: u-boot which includes support for Congatec Boards.
  • u-boot-cubox-i: u-boot which includes support for SolidRun boards such as Cubox-i.
  • u-boot-fslc: U-Boot based on mainline U-Boot used by FSL Community BSP in order to provide support for some backported features and fixes, or because it was submitted for revision and it takes some time to become part of a stable version, or because it is not applicable for upstreaming.
  • u-boot-imx: U-Boot provided by Freescale with focus on i.MX reference boards.
  • u-boot-ls1: U-Boot which includes the support for QorIQ Layerscape1 series boards
  • u-boot-timesys: bootloader for Vybrid platforms

The following table shows the default bootloaders (and their versions) for the supported boards.

Default bootloader version for each supported machine
Board Bootloader Bootloader version
cfa10036 barebox 2013.08.0
cfa10037 barebox 2013.08.0
cfa10049 barebox 2013.08.0
cfa10055 barebox 2013.08.0
cfa10056 barebox 2013.08.0
cfa10057 barebox 2013.08.0
cfa10058 barebox 2013.08.0
cgtqmx6 u-boot-congatec 2013.04
cubox-i u-boot-cubox-i v2013.10+git
imx233-olinuxino-maxi u-boot-fslc v2014.10+git
imx233-olinuxino-micro u-boot-fslc v2014.10+git
imx233-olinuxino-mini u-boot-fslc v2014.10+git
imx233-olinuxino-nano u-boot-fslc v2014.10+git
imx23evk u-boot-fslc v2014.10+git
imx28evk u-boot-fslc v2014.10+git
imx31pdk u-boot-fslc v2014.10+git
imx35pdk u-boot-fslc v2014.10+git
imx51evk u-boot-fslc v2014.10+git
imx53ard u-boot-fslc v2014.10+git
imx53qsb u-boot-fslc v2014.10+git
imx6dl-riotboard u-boot-fslc v2014.10+git
imx6dlsabreauto u-boot-fslc v2014.10+git
imx6dlsabresd u-boot-fslc v2014.10+git
imx6qsabreauto u-boot-fslc v2014.10+git
imx6qsabrelite u-boot-boundary v2014.07+git
imx6qsabresd u-boot-fslc v2014.10+git
imx6slevk u-boot-fslc v2014.10+git
imx6solosabreauto u-boot-imx 2013.04-imx_v2013.04_3.10.17_1.0.0_ga
imx6solosabresd u-boot-imx 2013.04-imx_v2013.04_3.10.17_1.0.0_ga
ls1021aqds u-boot-ls1 2014.07-sdk-v1.7.x
ls1021atwr u-boot-ls1 2014.07-sdk-v1.7.x
m28evk u-boot-fslc v2014.10+git
m53evk u-boot-fslc v2014.10+git
nitrogen6x u-boot-boundary v2014.07+git
nitrogen6x-lite u-boot-boundary v2014.07+git
pcl052 u-boot-timesys v2011.12
pcm052 u-boot-timesys v2011.12
quartz u-boot-timesys v2011.12
twr-vf65gs10 u-boot-fslc v2014.10+git
wandboard-dual u-boot-fslc v2014.10+git
wandboard-quad u-boot-fslc v2014.10+git
wandboard-solo u-boot-fslc v2014.10+git

User Space Packages

There is a huge number of user space packages provided by the Yocto Project. The following table shows some version for few highlighted packages.

Main user space package versions
Package Board/SoC Family Version
gstreamer All 0.10.36
gstreamer1.0 All 1.4.1
libdrm All 2.4.54
udev All 182

Freescale User Space Packages

This section shows the version package for each board. Those packages provide hardware acceleration for GPU or VPU, hardware optimization or some hardware test tools.

  • Hardware acceleration is achieved using a different core for processing some specific task. In this case, GPU or VPU.
  • Hardware optimization is achieved with some changes in source code in order to get a better performance for a specific task on a specific hardware. For example, audio decode made by software, but with optimizations for ARM.
  • Hardware-specific is applicable when the package was designed to be executed on a specific hardware, and it does not make sense on other hardware. For example, imx-test is a test package for imx boards. It can be cross-compiled for any other core, although it will only behave as expect if executed on imx boards.

The package version and variety varies on SoC Hierarchy. For example, machines with i.MX28 SoC does not have VPU, the recipe imx-vpu is not needed. There are differences, as well, in GPU support recipes.

Version by SoC Hierarchy

The following table shows the version of each package depending on the SoC Hierarchy.

User space package version by SoC hierarchy
Package name ls102xa mx28 mx5 mx6q / mx6dl mx6sl vf60
amd-gpu-bin-mx51 11.09.01
amd-gpu-x11-bin-mx51 11.09.01
directfb 1.7.4 1.7.4 1.7.4 1.6.3 1.6.3 1.7.4
directfb-examples 1.7.0 1.7.0 1.7.0 1.6.0 1.6.0 1.7.0
firmware-imx 3.0.35-4.0.0 3.10.17-1.0.0 3.10.17-1.0.0
fsl-alsa-plugins 1.0.25 1.0.25
gpu-viv-bin-mx6q 3.10.17-1.0.2-hfp 3.10.17-1.0.2-hfp
gpu-viv-g2d 3.10.17-1.0.2 3.10.17-1.0.2
gst-fsl-plugin 3.0.11 3.0.11 3.0.11 3.0.11
gstreamer1.0-plugins-imx 0.10.1
imx-lib 11.09.02 3.10.17-1.0.0 3.10.17-1.0.0
imx-test 00.00.00 00.00.00 3.10.17-1.0.0 3.10.17-1.0.0 3.10.17-1.0.0 00.00.00
imx-uuc 0.5 0.5 0.5 0.5 0.5 0.5
imx-vpu 11.09.02 3.10.17-1.0.0 3.10.17-1.0.0
libfslcodec 4.0.1 4.0.1 4.0.1 4.0.1
libfslparser 4.0.1 4.0.1 4.0.1 4.0.1
libfslvpuwrap 1.0.46
libmcc 1.05
libz160 11.09.01
mqxboot 1.0
mxsldr 0.0.0+git 0.0.0+git 0.0.0+git 0.0.0+git 0.0.0+git 0.0.0+git
xf86-video-imxfb 11.09.01
xf86-video-imxfb-vivante 3.10.17-1.0.2 3.10.17-1.0.2

Hardware relation by SoC Hierarchy

The following table shows how packages interact with hardware depending on the SoC Hierarchy

Hardware dependant packages
Package Name mx28 mx5 mx6 vf60
imx-test HW-specific HW-specific HW-specific
gst-fsl-plugin HW-specific HW-specific HW-specific
libfslcodec HW optimization HW acceleration HW acceleration
libfslparser HW optimization HW optimization HW optimization
imx-vpu HW acceleration HW acceleration
imx-lib HW acceleration HW acceleration
firmware-imx HW-specific HW-specific
mxsldr HW-specific
gpu-viv-g2d HW acceleration
xf86-video-imxfb-vivante HW acceleration
gpu-viv-bin-mx6q HW acceleration
directfb HW acceleration
directfb-examples HW acceleration
xf86-video-imxfb HW acceleration
amd-gpu-bin-mx51 HW acceleration
libz160 HW acceleration
amd-gpu-x11-bin-mx51 HW acceleration
libfslvpuwrap HW acceleration
fsl-alsa-plugins HW-specific
gstreamer1.0-plugins-imx HW acceleration
imx-uuc HW-specific HW-specific HW-specific
libmcc  
mqxboot HW-specific

PackageGroups and Images

The FSL Community BSP provides a list of PACKAGEGROUPS and images intended to ease the initial development of custom applications.

The main goal is not to provide a production solution, on the contrary, it should be seen as an example of package set for a specific IP development, and an example of initial generic development and test images.

PACKAGEGROUPS

The following list shows the current PACKAGEGROUPs available in Dizzy when using FSL Community BSP.

You can understand what a PACKAGEGROUPS is and learn how to use it in Yocto Project Development Manual

  • packagegroup-fsl-gstreamer: Package group used by FSL Community to provide audio, video, and debug GStreamer’s plugins with the required hardware acceleration (if supported by the SoC).
  • packagegroup-fsl-gstreamer-full: Package group used by FSL Community to provide audio, video, and debug GStreamer’s plugins (including good and bad ones) with the required hardware acceleration (if supported by the SoC).
  • packagegroup-fsl-mfgtool: Freescale Manufacturing Tool requirements.
  • packagegroup-fsl-tools-benchmark: Package group used by FSL Community to provide a set of benchmark applications.
  • packagegroup-fsl-tools-gpu: Package group used by FSL Community to add the packages which provide GPU support.
  • packagegroup-fsl-tools-gpu-external: Package group used by FSL Community to provide graphic packages used to test the several hardware accelerated graphics APIs including packages not provided by Freescale.
  • packagegroup-fsl-tools-testapps: Packagegroup used by FSL Community to provide a set of packages and utilities for hardware test.
  • packagegroup-fslc-gstreamer1.0: Package group used by FSL Community to provide audio, video, networking and debug GStreamer plugins with the required hardware acceleration (if supported by the SoC).
  • packagegroup-fslc-gstreamer1.0-full: Package group used by FSL Community to provide all GStreamer plugins from the base, good, and bad packages, as well as the ugly and libav ones if commercial packages are whitelisted, and plugins for the required hardware acceleration (if supported by the SoC).

Images

The following images are provided by FSL Community BSP only. See the list of Yocto Project’s reference images in Yocto Project Reference Manual

  • fsl-image-machine-test: A console-only image that includes gstreamer packages, Freescale’s multimedia packages (VPU and GPU) when available, and test and benchmark applications.
  • fsl-image-mfgtool-initramfs: Small image to be used with Manufacturing Tool (mfg-tool) in a production environment.
  • fsl-image-multimedia: A console-only image that includes gstreamer packages and Freescale’s multimedia packages (VPU and GPU) when available for the specific machine.
  • fsl-image-multimedia-full: A console-only image that includes gstreamer packages and Freescale’s multimedia packages (VPU and GPU) when available for the specific machine.
  • qt-in-use-image: qt-in-use-image version 1.0-r0.
  • qte-in-use-image: qte-in-use-image version 1.0-r0.

Test results

Freescale has a complete test cycle for the BSP released. It includes tests for Linux Kernel for the GPU package and for the VPU package (and all other package needed by the BSP, such as imx-lib).

The results and known issues, from Linux Kernel, GPU and VPU packages can be found in the Freescale Release Notes (Download tab of freescale.com/imx).

For boards from meta-fsl-arm-extra, the test cycle is performed by each mantainer.

Acknowledgements

The FSL BSP Community is a community effort of keeping and mantaining a Freescale boards/chips layer for the Yocto Project.

Dizzy Source Code

The following people helped to construct the source code for the release:

Statistics for meta-fsl-arm
---------------------------

Processed 196 csets from 29 developers
11 employers found
A total of 7437 lines added, 4506 removed (delta 2931)

Developers with the most changesets
Otavio Salvador             66 (33.7%)
Chunrong Guo                21 (10.7%)
Carlos Rafael Giani         15 (7.7%)
Lauren Post                 11 (5.6%)
Neena Busireddy             10 (5.1%)
Jacob Kroon                  9 (4.6%)
Zhenhua Luo                  8 (4.1%)
Fabio Estevam                7 (3.6%)
Javier Viguera               6 (3.1%)
Max Krummenacher             5 (2.6%)
Alexander Shashkevych        5 (2.6%)
Daiane Angolini              5 (2.6%)
Wang Zidan                   4 (2.0%)
Gary Bisson                  3 (1.5%)
Nikolay Dimitrov             2 (1.0%)
Alexandre Belloni            2 (1.0%)
Mario Domenech Goulart       2 (1.0%)
Tony Felice                  2 (1.0%)
Eric Nelson                  2 (1.0%)
Alexey Ignatov               2 (1.0%)
Samuli Piippo                1 (0.5%)
Andreas Müller              1 (0.5%)
Gary Thomas                  1 (0.5%)
Christopher Larson           1 (0.5%)
Khem Raj                     1 (0.5%)
Jun Zhu                      1 (0.5%)
Thomas Elste                 1 (0.5%)
Thomas Senyk                 1 (0.5%)
Maciej Borzecki              1 (0.5%)

Developers with the most changed lines
Otavio Salvador           3920 (34.0%)
Zhenhua Luo               3201 (27.8%)
Gary Bisson               2182 (18.9%)
Christopher Larson         400 (3.5%)
Neena Busireddy            380 (3.3%)
Nikolay Dimitrov           363 (3.1%)
Chunrong Guo               239 (2.1%)
Carlos Rafael Giani        160 (1.4%)
Lauren Post                144 (1.2%)
Eric Nelson                115 (1.0%)
Wang Zidan                 103 (0.9%)
Max Krummenacher            62 (0.5%)
Khem Raj                    50 (0.4%)
Tony Felice                 39 (0.3%)
Jacob Kroon                 36 (0.3%)
Alexander Shashkevych       36 (0.3%)
Javier Viguera              35 (0.3%)
Daiane Angolini             19 (0.2%)
Mario Domenech Goulart      13 (0.1%)
Fabio Estevam                9 (0.1%)
Alexey Ignatov               8 (0.1%)
Alexandre Belloni            4 (0.0%)
Jun Zhu                      4 (0.0%)
Thomas Senyk                 4 (0.0%)
Gary Thomas                  3 (0.0%)
Samuli Piippo                1 (0.0%)
Thomas Elste                 1 (0.0%)
Maciej Borzecki              1 (0.0%)

Developers with the most lines removed
Gary Bisson               1975 (43.8%)
Lauren Post                 36 (0.8%)
Tony Felice                 33 (0.7%)
Javier Viguera              12 (0.3%)
Alexander Shashkevych        8 (0.2%)
Otavio Salvador              5 (0.1%)
Thomas Senyk                 3 (0.1%)
Gary Thomas                  3 (0.1%)

Developers with the most signoffs (total 131)
Otavio Salvador            130 (99.2%)
Richard Purdie               1 (0.8%)

Developers with the most reviews (total 0)

Developers with the most test credits (total 1)
Daiane Angolini              1 (100.0%)

Developers who gave the most tested-by credits (total 1)
Fabio Estevam                1 (100.0%)

Developers with the most report credits (total 5)
Petr Kubizňák              3 (60.0%)
Alexandre Belloni            2 (40.0%)

Developers who gave the most report credits (total 5)
Otavio Salvador              5 (100.0%)

Top changeset contributors by employer
O.S. Systems                68 (34.7%)
Freescale                   66 (33.7%)
(Unknown)                   46 (23.5%)
Digi International           6 (3.1%)
Boundary Devices             2 (1.0%)
Free Electrons               2 (1.0%)
Timesys                      2 (1.0%)
Pelagicore AB                1 (0.5%)
Mentor Graphics              1 (0.5%)
(None)                       1 (0.5%)
(Consultant)                 1 (0.5%)

Top lines changed by employer
Freescale                 4097 (35.5%)
O.S. Systems              3933 (34.1%)
(Unknown)                 2852 (24.7%)
Mentor Graphics            400 (3.5%)
Boundary Devices           115 (1.0%)
(None)                      50 (0.4%)
Timesys                     39 (0.3%)
Digi International          35 (0.3%)
Free Electrons               4 (0.0%)
Pelagicore AB                4 (0.0%)
(Consultant)                 3 (0.0%)

Employers with the most signoffs (total 131)
O.S. Systems               130 (99.2%)
Linux Foundation             1 (0.8%)

Employers with the most hackers (total 30)
(Unknown)                   12 (40.0%)
Freescale                    8 (26.7%)
O.S. Systems                 2 (6.7%)
Mentor Graphics              1 (3.3%)
Boundary Devices             1 (3.3%)
(None)                       1 (3.3%)
Timesys                      1 (3.3%)
Digi International           1 (3.3%)
Free Electrons               1 (3.3%)
Pelagicore AB                1 (3.3%)
(Consultant)                 1 (3.3%)


Statistics for meta-fsl-arm-extra
---------------------------------

Processed 77 csets from 16 developers
6 employers found
A total of 3969 lines added, 28686 removed (delta -24717)

Developers with the most changesets
Eric Nelson                 25 (32.5%)
Alex de Cabo                12 (15.6%)
John Weber                   7 (9.1%)
Otavio Salvador              6 (7.8%)
Christoph Settgast           6 (7.8%)
Daiane Angolini              4 (5.2%)
Ian Coolidge                 3 (3.9%)
Fabio Estevam                2 (2.6%)
Alfonso Tamés               2 (2.6%)
Raphael Silva                2 (2.6%)
Carlos Rafael Giani          2 (2.6%)
Rabeeh Khoury                2 (2.6%)
Nikolay Dimitrov             1 (1.3%)
Simon Kuhnle                 1 (1.3%)
Jacob Kroon                  1 (1.3%)
Gary Thomas                  1 (1.3%)

Developers with the most changed lines
Alex de Cabo              19956 (66.2%)
Carlos Rafael Giani       5811 (19.3%)
John Weber                3171 (10.5%)
Raphael Silva              704 (2.3%)
Rabeeh Khoury              279 (0.9%)
Eric Nelson                121 (0.4%)
Otavio Salvador             42 (0.1%)
Christoph Settgast          37 (0.1%)
Daiane Angolini             24 (0.1%)
Alfonso Tamés               7 (0.0%)
Ian Coolidge                 5 (0.0%)
Fabio Estevam                3 (0.0%)
Simon Kuhnle                 2 (0.0%)
Nikolay Dimitrov             1 (0.0%)
Jacob Kroon                  1 (0.0%)
Gary Thomas                  1 (0.0%)

Developers with the most lines removed
Alex de Cabo              19026 (66.3%)
Carlos Rafael Giani       3486 (12.2%)
John Weber                2748 (9.6%)
Rabeeh Khoury              273 (1.0%)
Christoph Settgast           7 (0.0%)
Fabio Estevam                2 (0.0%)
Ian Coolidge                 1 (0.0%)

Developers with the most signoffs (total 71)
Otavio Salvador             71 (100.0%)

Developers with the most reviews (total 2)
Eric Nelson                  2 (100.0%)

Developers with the most test credits (total 2)
Eric Nelson                  2 (100.0%)

Developers who gave the most tested-by credits (total 2)
Christoph Settgast           1 (50.0%)
Simon Kuhnle                 1 (50.0%)

Developers with the most report credits (total 0)

Developers who gave the most report credits (total 0)

Top changeset contributors by employer
Boundary Devices            28 (36.4%)
(Unknown)                   23 (29.9%)
Congatec AG                 12 (15.6%)
O.S. Systems                 8 (10.4%)
Freescale                    5 (6.5%)
(Consultant)                 1 (1.3%)

Top lines changed by employer
Congatec AG               19956 (66.2%)
(Unknown)                 9326 (30.9%)
O.S. Systems               746 (2.5%)
Boundary Devices           126 (0.4%)
Freescale                   10 (0.0%)
(Consultant)                 1 (0.0%)

Employers with the most signoffs (total 71)
O.S. Systems                71 (100.0%)

Employers with the most hackers (total 17)
(Unknown)                    9 (52.9%)
O.S. Systems                 2 (11.8%)
Boundary Devices             2 (11.8%)
Freescale                    2 (11.8%)
Congatec AG                  1 (5.9%)
(Consultant)                 1 (5.9%)


Statistics for meta-fsl-demos
-----------------------------

Processed 21 csets from 9 developers
5 employers found
A total of 256 lines added, 62 removed (delta 194)

Developers with the most changesets
Otavio Salvador              8 (38.1%)
Daiane Angolini              5 (23.8%)
Neena Busireddy              2 (9.5%)
Max Krummenacher             1 (4.8%)
Matt Madison                 1 (4.8%)
Alexander Shashkevych        1 (4.8%)
Alex Gonzalez                1 (4.8%)
Trevor Woerner               1 (4.8%)
Carlos Rafael Giani          1 (4.8%)

Developers with the most changed lines
Carlos Rafael Giani        157 (60.6%)
Daiane Angolini             48 (18.5%)
Otavio Salvador             34 (13.1%)
Neena Busireddy             10 (3.9%)
Max Krummenacher             4 (1.5%)
Alexander Shashkevych        3 (1.2%)
Matt Madison                 1 (0.4%)
Alex Gonzalez                1 (0.4%)
Trevor Woerner               1 (0.4%)

Developers with the most lines removed
Max Krummenacher             1 (1.6%)
Alexander Shashkevych        1 (1.6%)

Developers with the most signoffs (total 13)
Otavio Salvador             13 (100.0%)

Developers with the most reviews (total 0)

Developers with the most test credits (total 0)

Developers who gave the most tested-by credits (total 0)

Developers with the most report credits (total 0)

Developers who gave the most report credits (total 0)

Top changeset contributors by employer
O.S. Systems                 8 (38.1%)
Freescale                    6 (28.6%)
(Unknown)                    5 (23.8%)
Digi International           1 (4.8%)
Linaro                       1 (4.8%)

Top lines changed by employer
(Unknown)                  183 (70.7%)
Freescale                   40 (15.4%)
O.S. Systems                34 (13.1%)
Digi International           1 (0.4%)
Linaro                       1 (0.4%)

Employers with the most signoffs (total 13)
O.S. Systems                13 (100.0%)

Employers with the most hackers (total 10)
(Unknown)                    5 (50.0%)
Freescale                    2 (20.0%)
O.S. Systems                 1 (10.0%)
Digi International           1 (10.0%)
Linaro                       1 (10.0%)


Statistics for base
-------------------

Processed 5 csets from 4 developers
4 employers found
A total of 40 lines added, 29 removed (delta 11)

Developers with the most changesets
Trevor Woerner               2 (40.0%)
John Weber                   1 (20.0%)
Otavio Salvador              1 (20.0%)
Ting Liu                     1 (20.0%)

Developers with the most changed lines
Trevor Woerner              34 (49.3%)
Otavio Salvador             29 (42.0%)
Ting Liu                     5 (7.2%)
John Weber                   1 (1.4%)

Developers with the most lines removed
Otavio Salvador             29 (100.0%)

Developers with the most signoffs (total 4)
Otavio Salvador              4 (100.0%)

Developers with the most reviews (total 0)

Developers with the most test credits (total 0)

Developers who gave the most tested-by credits (total 0)

Developers with the most report credits (total 0)

Developers who gave the most report credits (total 0)

Top changeset contributors by employer
Linaro                       2 (40.0%)
Freescale                    1 (20.0%)
O.S. Systems                 1 (20.0%)
(Unknown)                    1 (20.0%)

Top lines changed by employer
Linaro                      34 (49.3%)
O.S. Systems                29 (42.0%)
Freescale                    5 (7.2%)
(Unknown)                    1 (1.4%)

Employers with the most signoffs (total 4)
O.S. Systems                 4 (100.0%)

Employers with the most hackers (total 4)
O.S. Systems                 1 (25.0%)
Linaro                       1 (25.0%)
Freescale                    1 (25.0%)
(Unknown)                    1 (25.0%)


Statistics for Documentation
----------------------------

Processed 94 csets from 5 developers
3 employers found
A total of 4080 lines added, 2775 removed (delta 1305)

Developers with the most changesets
Daiane Angolini             52 (55.3%)
Lucas Dutra Nunes           20 (21.3%)
Mario Domenech Goulart      11 (11.7%)
Otavio Salvador              6 (6.4%)
Bob Cochran                  5 (5.3%)

Developers with the most changed lines
Daiane Angolini           3410 (80.2%)
Lucas Dutra Nunes          443 (10.4%)
Bob Cochran                214 (5.0%)
Mario Domenech Goulart     105 (2.5%)
Otavio Salvador             78 (1.8%)

Developers with the most lines removed

Developers with the most signoffs (total 16)
Daiane Angolini              8 (50.0%)
Otavio Salvador              6 (37.5%)
Lucas Dutra Nunes            2 (12.5%)

Developers with the most reviews (total 0)

Developers with the most test credits (total 1)
Daiane Angolini              1 (100.0%)

Developers who gave the most tested-by credits (total 1)
Daiane Angolini              1 (100.0%)

Developers with the most report credits (total 0)

Developers who gave the most report credits (total 0)

Top changeset contributors by employer
Freescale                   39 (41.5%)
O.S. Systems                37 (39.4%)
(Unknown)                   18 (19.1%)

Top lines changed by employer
Freescale                 2232 (52.5%)
(Unknown)                 1392 (32.8%)
O.S. Systems               626 (14.7%)

Employers with the most signoffs (total 16)
Freescale                    8 (50.0%)
O.S. Systems                 8 (50.0%)

Employers with the most hackers (total 6)
O.S. Systems                 3 (50.0%)
(Unknown)                    2 (33.3%)
Freescale                    1 (16.7%)

Known Issues

ALL

  1. Fail to build imx-lib/imx-vpu/imx-test/gst-fsl-plugin when building against linux-fslc
  2. Weston/Wayland/Directb for SOC_FAMILY: imx5 or mxs or imx3 is not hardware accelerated and has not been tested.
  3. Hob is known to not work with with FSL Community BSP. Some of known issues are problems generating the SD Card images and handling the GPU drivers.

IMX28

  1. Touch screen (with x11 at least) is not completely calibrated
  2. mfgtools supported n FSL Community BSP does not include support for i.mx28 (but it´s easy to be included and your patch is appreciated)
  3. Pendrive is not automatically mounted, but once you mount it everything works fine

IMX6

  1. perf and oprofile are not supposed to work due to hardware issue (YOCTO5148 and YOCTO4511)

Bugzilla

The list of open bugs on Bugzilla Yocto Project on time of the writing of this document is on next table.

Open

In order to see the current bug list, please use following URL: https://bugzilla.yoctoproject.org/buglist.cgi?quicksearch=meta-fsl-arm

List of open bugs
Bug ID Status Summary
3719 NEW fsl-image-gui image for imx6qsabreauto machine does not reboot
4155 IN PROGRESS REVIEW i.MX6: VPU plugins for GStreamer do not work with appsink
4156 NEW HTML5 video in GStreamer-enabled WebKit doesn’t work with VPU acceleration
4510 WaitForUpstream GLX load vivante_dri.so failed
5098 NEW gpu-viv-bin-mx6q-3.5.7-1.0.0-alpha.2-sfp.bin and gpu-viv-bin-mx6q-3.5.7-1.0.0-alpha.2-hfp.bin are missing OpenGL headers
5202 ACCEPTED distorted images from gstreamer
5331 NEW error play video via gstreamer with “mfw_isink”
5359 IN PROGRESS DESIGN [Yocto 1.5] su - USER -c ‘COMMAND’ env variable issue
5607 NEW MCIMX-LVDS1 trhows unknown mouse event on Qt 4.8
5799 NEW add standardized MAINTAINERS infrastructure
6703 NEW Kernel hangs on boot when HDMI cable is plugged
6760 NEW i.MX6: not possible to run X11 without tearing / with proper vsync
7339 NEW Performance issue in do_rootfs (buildhistory_list_installed_image)

Closed

See the list of issues closed in latest development release in the following table:

List of closed bugs
Bug ID Resolution Summary
4511 WONTFIX error for using oprofile.ko to profiling
5023 FIXED EXTRA_IMAGE_FEATURES += “tools-sdk” does return ERROR
5148 WONTFIX perf test fails
5178 WORKSFORME sabresd boot failure with preferred provider linux-fslc
5219 FIXED meta-fsl-arm kernel crash when using graphics acceleration
5361 FIXED resolvconf fail to change dns-nameservers from /etc/network/interfaces
5826 FIXED ARM: recipe xserver-xorg-2_1.15.0-r0: task do_compile: Failed
5864 FIXED .bbappend files with % in their name and “python __anonymous () { ... }” fails to parse
6083 FIXED Vivante GPU doesn’t work with X11
6098 FIXED u-boot-fslc-v2014.01-r0: task do_compile: Failed
6545 FIXED weston patches applied unconditionally
6894 WONTFIX kernel menuconfig unusable and errors during compileing
7226 WORKSFORME bitbake failure - MACHINE=cubox-i PACKAGE_CLASSES=package_deb
7384 FIXED u-boot-fslc fails in master