===== 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// layer extends the //Yocto Project's// reference system //Poky// to provide support for a selection of TQ Embedded CPU Modules, including the @mod_name@. It uses the same codebase as the [[..:arm:@mod_name@:linux:ptxdist:overview|PTXdist based TQ Linux BSPs]] and therefore provides the same versions of U-Boot and Linux kernel, but doesn't define a specific root filesystem configuration. The instructions on this page refer to the BSP and ancillary tools listed in the following table: ^ BSP Revision((refers to the revision of the [[..:arm:@mod_name@:linux:ptxdist:overview|PTXdist based TQ Linux BSP]], which provides the codebase of U-Boot and Linux kernel)) ^ @bsp_rev@ ^ ^ ++meta-tq release|\\ [[https://github.com/tq-systems/meta-tq/releases|all releases]]++ | [[https://github.com/tq-systems/meta-tq/releases/tag/@yocto_rel_branch@.@mod_name_mtq@.BSP.SW.@bsp_rev@|@yocto_rel_branch@.@mod_name_mtq@.BSP.SW.@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 both the //Yocto Project / Poky// Release as well as //meta-tq// (instead of downloading archives and extracting them). The goal of these wiki pages is to get you started using //meta-tq// 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 steps describes how to use the //meta-tq// layer for the @stk_name@. ^ Section ^ Remarks / Instructions for //meta-tq// & @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@:linux:yocto:quickstart_yocto#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\\ \\ ==== Building an Image for @stk_name@ ==== 1. Be Sure Your Build Host is Set Up: 2. Create a new folder project folder for example in your home directory and move to it. $ mkdir ~/yocto-@yocto_rel_branch@-@mod_name@ 3. Create a local copy of Poky $ git clone -b @yocto_rel_branch@ git://git.yoctoproject.org/poky.git 4. Create a Local Copy of meta-tq and meta-dumpling **meta-tq** $ cd $HOME/poky $ git clone -b @yocto_rel_branch@@yocto_rel_branch_module@ https://github.com/tq-systems/meta-tq.git **meta-dumpling** $ cd $HOME/poky $ git clone -b @yocto_rel_branch@ https://github.com/tq-systems/meta-dumpling.git 5. Initialize the Build Environment: $ source oe-init-build-env 6. Configure the Build((valid machines are\\ @mtq_machines@)): $ cd $HOME/poky/build $ bitbake-layers add-layer "../meta-tq" $ bitbake-layers add-layer "../meta-ti" $ echo 'MACHINE = "@mtq_machine_default@"' >> conf/local.conf 7. Build an Image for @stk_name@: $ bitbake @mtq_image@ ==== Write the Image onto an SD Card ==== After building @mtq_image@ with Yocto the image is located 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 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''\\ 5. $ sudo dd if=tmp/deploy/images/@mtq_machine_default@/@mtq_image@-@mtq_machine_default@.wic of=TARGET_DEVICE ==== Boot the Image on ==== Boot the @stk_name@ from SD card (cf. [[..:arm:@mod_name@:@mb_name_code@:dip_switches|@mb_name@ DIP switch settings]])