Installing LinRT Debian BSP sources

Preparing the PC Host

The LinRT Debian BSP source codes are tested on Ubuntu 18.04 LTS. For preparing the PC Host, run the following commands :

$ sudo apt-get install binfmt-support qemu qemu-user-static debootstrap kpartx lvm2 git \
dosfstools gpart binutils bison lib32ncurses5-dev libssl-dev python-m2crypto gawk wget \
git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev \
autoconf libtool libglib2.0-dev libarchive-dev python-git xterm sed cvs subversion \
kmod coreutils texi2html bc docbook-utils python-pysqlite2 help2man make gcc g++ \
desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev mercurial automake groff curl \
lzop asciidoc u-boot-tools mtd-utils device-tree-compiler flex cmake udisks2

Get LinRT Debian BSP building tools

To install LinRT Debian BSP building tools, you should get git project from LinRT Bitbucket repositories :
$ mkdir ~/linrt 
$ cd ~/linrt
~/linrt$ git clone -u GIT_PROJECT_ADDRESS -b
Select your git project address GIT_PROJECT_ADDRESS :
LinRT Debian BSPGIT PROJECT ADDRESS
Helium iMX8M-minigit@bitbucket.org:linrt-debian-bsp/debian-linrt-helium-bsp-imx8mm.git
Helium iMX8Mgit@bitbucket.org:linrt-debian-bsp/debian-linrt-helium-bsp-imx8m.git
Helium iMX8MPgit@bitbucket.org:linrt-debian-bsp/debian-linrt-helium-bsp-imx8mp.git
Helium iMX8Xgit@bitbucket.org:linrt-debian-bsp/debian-linrt-helium-bsp-imx8x.git
To list all revisions refs/tags/, you can use the following command :
$ git ls-remote --tags GIT PROJECT ADDRESS
47bfd565cc60515069ca438245ac4b1dc894a3b9 refs/tags/v11.1-rc2
5eb185eb277aaff2d4a27f2d294f1208320b18d4 refs/tags/v11.1-rc2^{}

For example, to get LinRT Debian BSP revision v11.1-rc2 for phyBOARD i.MX8M-mini platform :

$ mkdir ~/linrt
$ cd ~/linrt
~/linrt$ git clone -b 'v11.1-rc2' --single-branch git@bitbucket.org:linrt-debian-bsp/debian-linrt-helium-bsp-imx8mm.git

How to build LinRT Debian BSP images

Fetching LinRT Debian BSP sources

To download LinRT Debian BSP sources :
$ cd ~/linrt/LOCAL_PROJECT
~/LOCAL_PROJECT$ MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c fetch
Note : LOCAL_PROJECT folder name depends on git repository cloned locally ! 

Building LinRT Debian BSP image

$ cd ~/linrt/LOCAL_PROJECT
~/LOCAL_PROJECT$ sudo MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c all

How to build LinRT Debian BSP by parts

Building LinRT Debian BSP bootloader

$ cd ~/linrt/LOCAL_PROJECT
~/LOCAL_PROJECT$ sudo MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c bootloader

Building LinRT Debian BSP kernel, devicetree, and kernel modules

$ cd ~/linrt/LOCAL_PROJECT
~/LOCAL_PROJECT$ sudo MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c kernel
~/LOCAL_PROJECT$ sudo MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c modules

Building LinRT Debian BSP rootfs

$ cd ~/linrt/LOCAL_PROJECT
~/LOCAL_PROJECT$ sudo MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c rootfs

How to Flash LinRT Debian BSP image

$ cd ~/linrt/LOCAL_PROJECT
~/LOCAL_PROJECT$ sudo MACHINE=phyboard-polis-imx8mm-4 ./make_linrt_debian.sh -c sdcard -d /dev/sdX
Note : /dev/sdX is SD-CARD device detected by your PC Host, check dmesg outputs to verify before launching the flashing command ! All data will be destroyed on /dev/sdX