Yocto Project 1.8 - Poky 13.0.y "Fido"

From IGEP Community Wiki

Jump to: navigation, search

Introduction

This article is for Yocto Project 1.8 - Poky 13.0.y Fido branch.
All the steps are with Ubuntu 14.04.4 LTS, in others is possible you need change a little things.
It is interesting read How to use the Yocto Project to develop Embedded Linux article previously.

New git platform

In order to access our new git platform we create a yocto-devel user in our platform for get the git sources, the ssh keys can be found here:

File:Ssh-keys.tar.gz

Download the ssh-keys file and inside your home directory decompress it, it will create a .ssh directory and put inside the id_rsa and id_rsa.pub keys

Remember that you have to verify the owner of the uncompressed files (inside .ssh/) according to the user of your computer.

Build Platform Setup Environment

The instructions below are only for IGEP PROCESSOR BOARDS based on iMX6 processor.

Install the following dependencies for Ubuntu 12.04 and Ubuntu 14.04 (64b version)

sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev
sudo apt-get install autoconf libtool libglib2.0-dev libarchive-dev
sudo apt-get install python-git xterm sed cvs subversion coreutils texi2html
sudo apt-get install docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev
sudo apt-get install libglu1-mesa-dev mercurial automake groff curl lzop asciidoc u-boot-tools dos2unix mtd-utils

In order to build an image with BSP support for a given release, you need to download the corresponding BSP repository.

git clone git://git.yoctoproject.org/poky

Enter to the poky directory,

cd poky

Change tree to commit ee88b51cf2853ab075c9bd2ef7cf4d65d1c96674.

git checkout ee88b51cf2853ab075c9bd2ef7cf4d65d1c96674 -b fido

Clone the meta-fsl-arm layer.

git clone -b fido https://github.com/Freescale/meta-fsl-arm.git

Clone the meta-openembedded layer.

git clone git://git.openembedded.org/meta-openembedded

Enter to the meta-openembedded directory and enter to the meta-oe directory.

cd meta-openembedded/

Change tree to commit 10d3c8f85280a0bf867a8e4f84bcda81c290d28e.

git checkout 10d3c8f85280a0bf867a8e4f84bcda81c290d28e -b fido

Return to the parent directory.

cd ..

Clone the meta-isee layer.

git clone -b fido-next git@git.isee.biz:poky-yocto/meta-isee.git

Clone the meta-fsl-arm-extra layer.

git clone -b fido-next git@git.isee.biz:poky-yocto/meta-fsl-arm-extra.git

Clone the meta-fsl-demos layer:

git clone -b fido https://github.com/Freescale/meta-fsl-demos.git

Load Poky environment variables:

source oe-init-build-env

Having done that, you can build a igep image by adding the location of the layers to 'bblayers.conf'

Delete all in file .../poky/build/conf/bblayers.conf and copy below lines:

# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "6"

BBPATH = "${TOPDIR}"
BBFILES ?= ""
BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../..')}"

BBLAYERS ?= " \
  ${BSPDIR}/meta \
  ${BSPDIR}/meta-yocto \
  ${BSPDIR}/meta-yocto-bsp \
  ${BSPDIR}/meta-openembedded/meta-oe \
  ${BSPDIR}/meta-openembedded/meta-python \
  ${BSPDIR}/meta-fsl-arm \
  ${BSPDIR}/meta-fsl-arm-extra \
  ${BSPDIR}/meta-fsl-demos \
  ${BSPDIR}/meta-isee \
  "
BBLAYERS_NON_REMOVABLE ?= " \
  ${BSPDIR}/meta \
  ${BSPDIR}/meta-yocto \
  "

To enable the isee layer, add the 'igep0046 MACHINE' (select quad -> imx6q or dual lite -> imx6dl or solo -> imx6s) to .../poky/build/conf/local.conf:

MACHINE ?= "imx6q-igep0046" 

or

MACHINE ?= "imx6dl-igep0046" 

or

MACHINE ?= "imx6s-igep0046" 

Read the EULA license in:

 ../poky/meta-fsl-arm/EULA 

Add below lines in .../poky/build/conf/local.conf to accept the license:

ACCEPT_FSL_EULA = "1"
LICENSE_FLAGS_WHITELIST = "commercial license"

To compile image use the following command:

 bitbake <IMAGE> 

ISEE <IMAGE> supported are:

  • isee-fsl-image-dev: A development image based on fsl-image-machine-test recipe. Suitable to test all NXP i.MX6 capabilities.
  • isee-fsl-image-test: A minimal image intended to be used for igep_qa and flash filesystems to internal NAND Flash memory.

At the end of a successful build, you should have an image that you could use for boot device from flash or a micro-SD card or you can create the installable firmware using:

 bitbake do-release-firmware 

Generate Poky sdk compiler:

 bitbake -c populate_sdk isee-fsl-image-dev