Embedded module TQMa6ulxl - YOCTO Linux BSP documentation

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 TQMa6ULx.

It uses the same codebase as the 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.

Because of the dependencies to the other yocto layers we recommend to use ci-meta-tq which already provides all required yocto layers as git submodules instead of meta-tq to build this BSP release.

The instructions on this page refer to the BSP and ancillary tools listed in the following table:

BSP Revision 0117
meta-tq release kirkstone.TQMa6UL.BSP.SW.0117
Yocto Project / Poky Release 4.0.5
Target machine1) tqma6ulx-lga-mba6ulx
tqma6ulx-512mb-lga-mba6ulx
tqma6ullx-lga-mba6ulx
tqma6ullx-512mb-lga-mba6ulx
U-Boot 2016.03 NXP imx-rel_imx_4.1.15_2.0.0_ga
Linux Kernel 5.15.55 Linux Mainline
The goal of these wiki pages is to get you started using ci-meta-tq with the STKa6ULx, so instead of reinventing the wheel we will adhere to the very compact Yocto Project Quick Build and supply details specific to the STKa6ULx where necessary.

For further details regarding Yocto Project 4.0.5 - Kirkstone please refer to its official documentation.

Build Host

Yocto Project / Poky requires a Linux build host, so first of all you need a development workstation (or a virtual machine2)) with a Linux distribution installed.

Please refer to section Supported Linux Distribution of the Yocto Project Quick Start for supported linux distributions and section Required Packages for the Build Host for required build host packages for those distributions.

The instructions on this page have been tested on Ubuntu 18.04 (64 bit) in a VMWare virtual machine.

Although not required by Yocto Project / Poky, we also recommend to configure and run a tftp server (for image download / update) and an nfs server (for network mounted root filesystem) on your development host.

Yocto Hardknott BSP

1. Open a new terminal and create a directory for the BSP build e.g. in the home directory and navigate to that directory.

mkdir -p ~/workspace/kirkstone.TQMa6UL.BSP.SW.0117
cd ~/workspace/kirkstone.TQMa6UL.BSP.SW.0117

2. Create a local copy of meta-tq

git clone --recurse-submodules https://github.com/tq-systems/ci-meta-tq.git

3. Checkout BSP release on new local branch.

cd ci-meta-tq
git checkout kirkstone.TQMa6UL.BSP.SW.0117 -b kirkstone-tqma6ulx

4. Update git submodules:

git submodule sync
git submodule update --init

5. Setup local branch to track the remote branch.

git branch -u origin/kirkstone

6. Configure and the Build for a specific Linux 3):

Configuration for Linux mainline kernel

Configuration for Linux RT kernel

Each time a new terminal is opened, the build environment must be reinitialised. The command described above is intended for the initial build space initialisation. To return to an existing buildspace open up a new terminal and navigate to the ci-meta-tq folder and execute the following command:
source setup-environment tqma6ulx_build  

7. Build an Image for STKa6ULx:

Linux mainline kernel

Image with debug features/root login

bitbake tq-image-weston-debug

Image without debug features/root login

bitbake tq-image-weston
Linux RT kernel

Image with debug features/root login

bitbake <label mtq_image_rt>MTQ_IMAGE</label>-debug

Image without debug features/root login

bitbake <label mtq_image_rt>MTQ_IMAGE</label>


9. Write the Image6)7)

sudo dd if=tmp/deploy/images/tqma6ulx-lga-mba6ulx/tq-image-weston-tqma6ulx-lga-mba6ulx.wic of=/dev/<TARGET_DEVICE>

10. Boot the STKa6ULx from SD card (cf. MBa6ULx DIP switch settings) |


1)
i.e. value for MACHINE variable
2)
for testing purposes Yocto Project provides a ready to use virtual machine called Build Appliance
3)
valid machines are
tqma6ulx-lga-mba6ulx
tqma6ulx-512mb-lga-mba6ulx
tqma6ullx-lga-mba6ulx
tqma6ullx-512mb-lga-mba6ulx
4)
valid machines are
tqma6ulx-lga-mba6ulx
tqma6ulx-512mb-lga-mba6ulx
tqma6ullx-lga-mba6ulx
tqma6ullx-512mb-lga-mba6ulx
5)
valid machines are
tqma6ulx-lga-mba6ulx
tqma6ulx-512mb-lga-mba6ulx
tqma6ullx-lga-mba6ulx
tqma6ullx-512mb-lga-mba6ulx
6)
valid machines are
tqma6ulx-lga-mba6ulx
tqma6ulx-512mb-lga-mba6ulx
tqma6ullx-lga-mba6ulx
tqma6ullx-512mb-lga-mba6ulx
7)
TARGET_DEVICE has to be an SD card

  • Last modified: 2023/04/17 10:37