===== Preface =====
The instructions on this page have been tested on @host_os_name@ @host_os_version@ (@host_os_bits@) in a VMWare virtual machine.
The //meta-tq-powerarch// layer extends the //Yocto Project's// reference system //Poky// to provide support for a selection of TQ Embedded CPU Modules, including the @mod_name@.
The instructions on this page refer to the BSP and ancillary tools listed in the following table:
^ BSP Revision ^ @bsp_rev@ ^
^ Yocto Project / Poky Release | ++@yocto_rel_ver_major@.@yocto_rel_ver_minor@ - @yocto_rel_name@|\\ ''git clone -b @yocto_rel_branch@ git:%%//%%git.yoctoproject.org%%/%%poky.git''\\ [[http://@yocto_rel_base_url@/yocto-@yocto_rel_ver_major@/@yocto_rel_tarball@|@yocto_rel_tarball@]]++ |
^ Target machine((i.e. value for [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/ref-manual/ref-manual.html#var-MACHINE|MACHINE]] variable)) | @mtq_machines@ |
^ U-Boot | @uboot_version@ |
^ Linux Kernel | @linux_kernel@ |
\\
It's strongly recommended to use **git** for downloading the //Yocto Project / Poky// Release (instead of downloading an archive and extracting it).
The goal of these wiki pages is to get you started using //meta-tq-powerarch// with the @stk_name@, so instead of reinventing the wheel we will adhere to the very compact [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html|Yocto Project Quick Start]] and supply details specific to the @stk_name@ where necessary.\\
\\
For further details regarding //Yocto Project// @yocto_rel_ver_major@.@yocto_rel_ver_minor@ - @yocto_rel_name@ please refer to its [[https://www.yoctoproject.org/documentation/archived|official documentation]].
===== Prerequisites =====
//Yocto Project / Poky// requires a Linux build host, so first of all you need a development workstation (or a virtual machine((for testing purposes //Yocto Project// provides a ready to use virtual machine called [[https://www.yoctoproject.org/tools-resources/projects/build-appliance|Build Appliance]]))) with a (preferably) recent Linux distribution installed.
Please refer to section [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#the-linux-distro|The Linux Distribution]] of the //Yocto Project Quick Start// for supported linux distributions and section [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#packages|The Build Host Packages]] for required build host packages for those distributions.
Although not required by //Yocto Project / Poky//, we also recommend to configure and run a [[en:tftp|tftp server]] (for image download / update) and an [[en:nfs|nfs server]] (for network mounted root filesystem) on your development host.
===== Yocto Project / Poky set-up =====
The [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html|Yocto Project Quick Start]] document explains how to set up //Yocto Project / Poky// and how to build images using the //meta-intel// layer.
Using this as a guideline, the following table describes how to use the //meta-tq-powerarch// layer for the @stk_name@.
^ Section ^ Remarks / Instructions for //meta-tq-powerarch// & @stk_name@ ^
| [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#welcome|Welcome!]] | Introduction and basic information about the //Yocto Project// |
| [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#yp-intro|Introducing the Yocto Project Development Environment]] | ::: |
| [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#yp-resources|Setting Up to Use the Yocto Project]] | Description of basic requirements for using the //Yocto Project// (also cf. [[..:arm:@mod_name@:yocto:meta-tq_qs#Prerequisites]] above) |
| [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#releases|Yocto Project Release]] | Instructions on how to install a release of the //Yocto Project// on the Build Host\\ \\
$ git checkout @yocto_rel_branch@
will not work unless you change into the ''poky'' directory (i.e. the freshly cloned //Poky// repository).
Alternatively you can clone the Poky repository and checkout branch @yocto_rel_branch@ in one step by executing
$ git clone -b @yocto_rel_branch@ git://git.yoctoproject.org/poky.git
|
| [[http://@yocto_doc_base_url@/@yocto_rel_ver_major@.@yocto_rel_ver_minor@/yocto-project-qs/yocto-project-qs.html#qs-building-images|Building Images]] |
This section provides step-by-step instructions for
- //Building An Image for Emulation//((7 steps, explicitly aims at emulation using //qemu//))
- //Building An Image for Hardware//((5 steps, targets real hardware ))
To sucessfully build an image for hardware you have to carry out steps from both subsections((subsection headings may be missing in //Yocto Project Quick Start// (depends on //Poky// version) )) as follows.
==== Building an Image for Emulation ====
1. Be sure your build host is set up:
See above\\
2. Check out your branch:
$ git checkout @yocto_rel_branch@
You can skip this step if you checked out branch @yocto_rel_branch@ already when/after cloning the //poky// repository.\\
3. Initialize the Build Environment:
The build environment will be initialised at a later step, do not run ''source oe-init-build-env'' yet!\\
Create a file called ''environment'' as follows:
$ cat > environment
export TEMPLATECONF=meta-tq-powerarch/conf
source poky/oe-init-build-env
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE FSL_RCW"
Press //CTRL+D// to close the file.\\
5. - 7. You can skip these steps, they are not required for using //meta-tq-powerarch//.
==== Building an Image for Hardware ====
1. Create a Local Copy of @mtq_repos@:
$ cd poky
$ tar xvf ///@mtq_tarball@
$ git clone -b @yocto_rel_branch@@yocto_rel_branch_module@ git://git.yoctoproject.org/meta-fsl-ppc
2. Configure the Build:
$ cd ..
$ . environment
When building for another machine((valid machines are\\ @mtq_machines@)) make sure that your //local.conf// contains a valid combination of ''MACHINE'', ''FSL_RCW'' and ''KERNEL_DEVICETREE''!\\
3. Build an Image for @stk_name@:
$ bitbake @mtq_image@
The resulting image is ''tmp/deploy/images/@mtq_machine_default@((valid machines are\\ @mtq_machines@))/@mtq_image@-@mtq_machine_default@((valid machines are\\ @mtq_machines@)).wic''\\
4. Write the Image((valid machines are\\ @mtq_machines@))((''TARGET_DEVICE'' has to be an SD card))
$ sudo dd if=tmp/deploy/images/@mtq_machine_default@/@mtq_image@-@mtq_machine_default@.wic of=TARGET_DEVICE
5. Boot the @stk_name@ from SD card (cf. [[..:arm:@mod_name@:@mb_name_code@:dip_switches|@mb_name@ DIP switche settings]])
|