Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Embedded Linux Projects Using Yocto Project Cookbook
  • Table Of Contents Toc
Embedded Linux Projects Using Yocto Project Cookbook

Embedded Linux Projects Using Yocto Project Cookbook

By : Alex Gonzalez
3.8 (8)
close
close
Embedded Linux Projects Using Yocto Project Cookbook

Embedded Linux Projects Using Yocto Project Cookbook

3.8 (8)
By: Alex Gonzalez

Overview of this book

If you are an embedded developer learning about embedded Linux with some experience with the Yocto project, this book is the ideal way to become proficient and broaden your knowledge with examples that are immediately applicable to your embedded developments. Experienced embedded Yocto developers will find new insight into working methodologies and ARM specific development competence.
Table of Contents (7 chapters)
close
close

Installing support for Freescale hardware

In this recipe, we will install the community Freescale BSP Yocto release that adds support for Freescale hardware to our Yocto installation.

Getting ready

With so many layers, manually cloning each of them and adding them to your project's conf/bblayers.conf file is cumbersome. The community is using the repo tool developed by Google for their community Android to ease the installation of Yocto.

To install repo in your host system, type in the following commands:

$ sudo curl http://commondatastorage.googleapis.com/git-repo- downloads/repo > /usr/local/sbin/repo
$ sudo chmod a+x /usr/local/sbin/repo

The repo tool is a Python utility that parses an XML file, called manifest, with a list of Git repositories. The repo tool is then used to manage those repositories as a whole.

How to do it...

For example, we will use repo to download all the repositories listed in the previous recipe to our host system. For that, we will point it to the Freescale community BSP manifest for the Dizzy release:

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
  <default sync-j="4" revision="master"/>
  <remote fetch="git://git.yoctoproject.org" name="yocto"/>
  <remote fetch="git://github.com/Freescale" name="freescale"/>
  <remote fetch="git://git.openembedded.org" name="oe"/>
  <project remote="yocto" revision="dizzy" name="poky" path="sources/poky"/>
  <project remote="yocto" revision="dizzy" name="meta-fsl-arm" path="sources/meta-fsl-arm"/>
  <project remote="oe" revision="dizzy" name="meta-openembedded" path="sources/meta-openembedded"/>
  <project remote="freescale" revision="dizzy" name="fsl- community-bsp-base" path="sources/base">
        <copyfile dest="README" src="README"/>
        <copyfile dest="setup-environment" src="setup- environment"/>
  </project>
  <project remote="freescale" revision="dizzy" name="meta-fsl-arm- extra" path="sources/meta-fsl-arm-extra"/>
  <project remote="freescale" revision="dizzy" name="meta-fsl- demos" path="sources/meta-fsl-demos"/>
  <project remote="freescale" revision="dizzy" name="Documentation" path="sources/Documentation"/>
</manifest>

The manifest file shows all the installation paths and repository sources for the different components that are going to be installed.

How it works...

The manifest file is a list of the different layers that are needed for the Freescale community BSP release. We can now use repo to install it. Run the following:

$ mkdir /opt/yocto/fsl-community-bsp
$ cd /opt/yocto/fsl-community-bsp
$ repo init -u https://github.com/Freescale/fsl-community-bsp- platform -b dizzy
$ repo sync

You can optionally pass a -jN argument to sync if you have a multicore machine for multithreaded operations; for example, you could pass repo sync -j8 in an 8-core host system.

There's more...

To list the hardware boards supported by the different layers, we may run:

$ ls sources/meta-fsl*/conf/machine/*.conf

And to list the newly introduced target images, use the following:

$ ls sources/meta-fsl*/recipes*/images/*.bb

The community Freescale BSP release introduces the following new target images:

  • fsl-image-mfgtool-initramfs: This is a small, RAM-based initramfs image used with the Freescale manufacturing tool
  • fsl-image-multimedia: This is a console-only image that includes the gstreamer multimedia framework over the framebuffer, if applicable
  • fsl-image-multimedia-full: This is an extension of fsl-image-multimedia, but extends the gstreamer multimedia framework to include all available plugins
  • fsl-image-machine-test: This is an extension on fsl-image-multimedia-full for testing and benchmarking
  • qte-in-use-image: This is a graphical image that includes support for Qt4 over the framebuffer
  • qt-in-use-image: This is a graphical image that includes support for Qt4 over the X11 Windows system

See also

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Embedded Linux Projects Using Yocto Project Cookbook
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon