Project

General

Profile

Building the Filesystem under Quartus Pro 21.3 20240205

1. Prerequisites 2. Building the FPGA Image 3. Building the Bootloader 4. Building the Filesystem 5. Building the SD Card


Introduction

If you are interested in building / maintaining your own Linux distribution from source for the MitySOM-A10S family, there is a Yocto compatible meta layer for the module provided at our git-web viewer: gitweb

The current branch of the Critical Link SOCFPGA is: kirkstone.
The recommended Operating System for the build machine: Ubuntu 22.04

Repository

Description Repository Branch Web Viewer
Critical Link MitySOM-A10S/MitySOM-5CSx meta layer git://support.criticallink.com/home/git/meta-cl-socfpga.git kirkstone gitweb

Development Kit Pre-built Outputs

Description Link
Development Kit Filesystem Archive mitysom-image-base-mitysom-a10s.tar.gz
Development Kit Filesystem SDK poky-glibc-x86_64-mitysom-image-base-cortexa9hf-neon-mitysom-a10s-toolchain-4.0.16.sh
Development Kit Filesystem Sources Please contact Critical Link
Development Kit Filesystem Licenses Please contact Critical Link

Setting up the Build Environment

In order to build the filesystem is recommended to use Ubuntu 22.04 LTS with the following packages installed:

sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev python curl libssl-dev bc python3 tig libncurses5-dev libncursesw5-dev

The actual build is executed within a preset docker container. You need to install the docker software package as outlined in the Docker Installation Guide on the docker website. Once you have docker installed, you need to fetch the docker container used for the build:

docker pull crops/poky:ubuntu-22.04

Setting up Yocto

Yocto is made up of multiple meta layers, these layers are stored in git repositories. To get everything set up to build, these repositories will need to be cloned and a few config files will need to be copied over.

  1. Open a terminal
  2. Clone all the needed repositories
    git clone -b kirkstone git://git.yoctoproject.org/poky
    cd poky
    git clone -b kirkstone git://git.openembedded.org/meta-openembedded
    git clone -b kirkstone git://support.criticallink.com/home/git/meta-cl-socfpga.git
    
  3. Launch the docker container interactively:
    docker run --rm -it -v `pwd`:/work --workdir=/work crops/poky:ubuntu-22.04 /bin/bash
    
  4. You should be inside a bash shell of the docker contain. Source the yocto environment
    . ./oe-init-build-env
    
  5. Copy the Critical Link's Example configuration files into the build/conf
    cp ../meta-cl-socfpga/conf/bblayers.conf.sample conf/bblayers.conf
    cp ../meta-cl-socfpga/conf/local.conf.a10 conf/local.conf
    

Performing the Yocto Build

The following steps will build the filesystem that is used on the Critical Link MitySOM-A10S development kit.

  1. Stay inside the docker container from the previous step, or if you have exited relaunch the container in the poky folder:
    docker run --rm -it -v `pwd`:/work --workdir=/work crops/poky:ubuntu-22.04 /bin/bash
    
  2. Source the yocto environment
    . ./oe-init-build-env
    
  3. Build the filesystem
    bitbake mitysom-image-base
    

Outputs

Description Location
Filesystem Tarball <Yocto Directory>/build/tmp/deploy/images/mitysom-a10s/mitysom-image-base-mitysom-a10s.tar.gz

Build the SDK

The following steps will build the SDK with the cross-compiler toolchain that is used on the Critical Link MitySOM-A10S development kit.

  1. Stay inside the docker container from the previous step, or if you have exited relaunch the container in the poky folder:
    docker run --rm -it -v `pwd`:/work --workdir=/work crops/poky:ubuntu-22.04 /bin/bash
    
  2. Source the yocto environment
    . ./oe-init-build-env
    
  3. Build the filesystem
    bitbake mitysom-image-base -c populate_sdk
    

Outputs

Description Location
Filesystem Tarball <Yocto Directory>/build/tmp/deploy/sdk/poky-glibc-x86_64-mitysom-image-base-cortexa9hf-neon-mitysom-a10s-toolchain-4.0.16.sh

Further Reading


1. Prerequisites 2. Building the FPGA Image 3. Building the Bootloader 4. Building the Filesystem 5. Building the SD Card

Go to top
Add picture from clipboard (Maximum size: 1 GB)