- Embedded Linux Projects Using Yocto Project Cookbook
- Alex González
- 423字
- 2021-07-23 19:33:34
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-basedinitramfs
image used with the Freescale manufacturing toolfsl-image-multimedia
: This is a console-only image that includes thegstreamer
multimedia framework over the framebuffer, if applicablefsl-image-multimedia-full
: This is an extension offsl-image-multimedia
, but extends thegstreamer
multimedia framework to include all available pluginsfsl-image-machine-test
: This is an extension onfsl-image-multimedia-full
for testing and benchmarkingqte-in-use-image
: This is a graphical image that includes support for Qt4 over the framebufferqt-in-use-image
: This is a graphical image that includes support for Qt4 over the X11 Windows system
See also
- Instructions to use the
repo
tool, including usingrepo
with proxy servers, can be found in the Android documentation at https://source.android.com/source/downloading.html
- The Complete Rust Programming Reference Guide
- AngularJS Testing Cookbook
- Spring Cloud Alibaba微服務架構設計與開發實戰
- Python數據可視化:基于Bokeh的可視化繪圖
- Python爬蟲開發:從入門到實戰(微課版)
- Raspberry Pi Networking Cookbook(Second Edition)
- Instant Typeahead.js
- Mastering AndEngine Game Development
- Mastering ServiceNow(Second Edition)
- 零基礎趣學C語言
- Create React App 2 Quick Start Guide
- Python機器學習算法與應用
- Scratch·愛編程的藝術家
- SQL Server 2008 R2數據庫技術及應用(第3版)
- 深度探索Go語言:對象模型與runtime的原理特性及應用