Difference between revisions of "DESK-MX8M-L/General/Managed Virtual Machine (MVM)"

From DAVE Developer's Wiki
Jump to: navigation, search
(4 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
!colspan="4" style="width:100%; text-align:left"; border-bottom:solid 2px #ededed"|History
 
!colspan="4" style="width:100%; text-align:left"; border-bottom:solid 2px #ededed"|History
 
|-  
 
|-  
 +
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|ID#
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Issue Date
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Issue Date
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
 
|-
 
|-
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|{{oldid|16134|2022/02/17}}
+
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|{{oldid|16134|16134}}
 +
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|17/02/2022
 
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|First DESK-MX8M-L release
 
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|First DESK-MX8M-L release
 
|-
 
|-
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |{{oldid|17536|2023/02/24}}
+
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |{{oldid|17536|17536}}
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |DESK-MX8M-L-2.0.0 release
+
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |24/02/2023
 +
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |DESK-MX8M-L-2.0.0 release
 
|-
 
|-
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |2023/08/22
+
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |{{oldid|18026|18026}}
 +
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |24/07/2023
 
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |DESK-MX8M-L-4.0.0 release
 
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |DESK-MX8M-L-4.0.0 release
 
|-
 
|-
Line 56: Line 60:
 
To install it, please refer to [[VirtualBox_Starting_DVDK_Virtual_Machine#Using_a_.ova_file|this page]].
 
To install it, please refer to [[VirtualBox_Starting_DVDK_Virtual_Machine#Using_a_.ova_file|this page]].
  
=== Installing the ''meta-toolchain'' SDK ===
+
=== DVDK for release 4.0.0 ===
 +
The Virtual Machine used for the [[ORCA SOM | ORCA]] and [[MITO 8M Mini SOM | MITO 8M Mini]] SOMs is called `DESK-MX-L-4.0.0`.
  
''meta toolchain'' is preinstalled on [[DESK-MX8M-L/General/Release_Notes#DESK-MX8M-L_4.0.0 | DESK-MX8M-L-4.0.0]] and it is used for building U-Boot and kernel sources. It can be found in the following path.
+
==== Installing the ''meta-toolchain'' SDK ====
 +
 
 +
''meta toolchain'' is preinstalled on the version `DESK-MX-L-4.0.0` and used for building U-Boot and kernel sources. It can be found in the following path.
  
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~/desk-mx-l$ ls -la /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0/
+
dvdk@vagrant:~/desk-mx-l$ ls /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0/ -la
 
total 40
 
total 40
 
drwxr-xr-x 3 root root  4096 Jul 24 14:12 .
 
drwxr-xr-x 3 root root  4096 Jul 24 14:12 .
Line 72: Line 79:
 
</pre>
 
</pre>
  
The installation script can be found in <code>/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_meta-toolchain.sh</code>. In case reinstallation would be need, execute following commands.
+
The installation script can be found in `/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_meta-toolchain.sh`. In case reinstallation would be need, execute following commands.
  
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
Line 88: Line 95:
 
</pre>
 
</pre>
  
=== Installing the ''application'' SDK ===
+
==== Installing the ''application'' SDK ====
  
''application'' SDK is preinstalled on [[DESK-MX8M-L/General/Release_Notes#DESK-MX8M-L_4.0.0 | DESK-MX8M-L-4.0.0]] and it is used for building userspace application. The SDK contains the headers and libraries for building the Qt6 application. It can be found in the following path.
+
''application'' SDK is preinstalled on the version `DESK-MX-L-4.0.0` and used for building userspace application. The SDK contains the headers and libraries for building the Qt6 application. It can be found in the following path.
  
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
Line 104: Line 111:
 
</pre>
 
</pre>
  
The installation script can be found in <code>/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_sdk.sh</code>. In case reinstallation would be need, execute following commands.
+
The installation script can be found in `/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_sdk.sh`. In case reinstallation would be need, execute following commands.
  
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
Line 116: Line 123:
 
SDK has been successfully set up and is ready to be used.
 
SDK has been successfully set up and is ready to be used.
 
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
  $ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0/environment-setup-armv8a-poky-linux
+
  $ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0-rc2/environment-setup-armv8a-poky-linux
 
dvdk@vagrant:~/desk-mx-l$
 
dvdk@vagrant:~/desk-mx-l$
 
</pre>
 
</pre>
  
=== Using the SDK ===
+
==== Using the SDK ====
 
Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:
 
Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:
  
 
   source /home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_env.sh
 
   source /home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_env.sh
  
=== MITO 8M Mini SDK ===
+
==== MITO 8M Mini SDK ====
 +
[[MITO 8M Mini SOM| MITO 8M Mini]] has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.
 +
 
 +
=== DVDK for release 2.0.0 ===
 +
The Virtual Machine used for the [[ORCA SOM | ORCA]] and [[MITO 8M Mini SOM | MITO 8M Mini]] SOMs is the same used for the [[DESK-MX6-L | DESK-MX6-L]] development environment. Here below you can find the simple instructions for installing the release for [[DESK-MX8M-L | DESK-MX8M-L]] BSP using [[DESK-MX6-L | DESK-MX6-L]] Virtual Machine.
 +
 
 +
==== Additional library ====
 +
* <code>libssl-devel</code> is required for building the linux kernel: it is enough to install the library in the VM
 +
dvdk@vagrant:~/desk-mx-l$ sudo apt-get install libssl-dev
 +
 
 +
==== Installing the ''meta-toolchain''  SDK ====
 +
* open a Desktop Linux Terminal
 +
* download the proper SDK from the mirror server <code>fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh</code>
 +
<pre class="workstation-terminal">
 +
dvdk@vagrant:~/desk-mx-l/sdk$ wget http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
 +
--2022-02-14 16:09:59--  http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
 +
Resolving mirror.dave.eu (mirror.dave.eu)... 79.143.179.155
 +
Connecting to mirror.dave.eu (mirror.dave.eu)|79.143.179.155|:80... connected.
 +
HTTP request sent, awaiting response... 200 OK
 +
Length: 445468102 (425M) [text/x-sh]
 +
Saving to: ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’
 +
 
 +
fsl-imx-wayland-glibc-x86_64-meta-toolchain-aar 100%[=======================================================================================================>] 424.83M  639KB/s    in 8m 54s 
 +
 
 +
2022-02-14 16:18:54 (815 KB/s) - ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’ saved [445468102/445468102]
 +
 
 +
dvdk@vagrant:~/desk-mx-l/sdk$
 +
</pre>
 +
* the ''sdk'' recommended installation directory is <code>desk-mx-l/sdk</code>
 +
* directory listing before installing the new SDK
 +
<pre class="workstation-terminal">
 +
dvdk@vagrant:~/desk-mx-l/sdk$ pwd
 +
/home/dvdk/desk-mx-l/sdk
 +
dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
 +
total 16
 +
drwxr-xr-x 4 dvdk dvdk 4096 Apr  9  2021 .
 +
drwxr-xr-x 6 dvdk dvdk 4096 Apr  9  2021 ..
 +
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0
 +
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
 +
lrwxrwxrwx 1 root root  41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
 +
lrwxrwxrwx 1 root root  51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
 +
dvdk@vagrant:~/desk-mx-l/sdk$
 +
</pre>
 +
* SDK installation
 +
<pre class="workstation-terminal">
 +
dvdk@vagrant:~/desk-mx-l/sdk$ chmod 755 fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
 +
dvdk@vagrant:~/desk-mx-l/sdk$ ./fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
 +
NXP i.MX Release Distro SDK installer version 5.4-zeus
 +
======================================================
 +
Enter target directory for SDK (default: /opt/fsl-imx-wayland/5.4-zeus): /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain
 +
You are about to install the SDK to "/home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain". Proceed [Y/n]? Y
 +
Extracting SDK.................................................................................................................done
 +
SDK has been successfully set up and is ready to be used.
 +
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 +
$ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain/environment-setup-aarch64-poky-linux
 +
dvdk@vagrant:~/desk-mx-l/sdk$
 +
</pre>
 +
* create a symbolic link to the SDK directory ''latest'' version
 +
ln -s /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain latest_desk-mx8-l-toolchain
 +
* create the environment script for enabling the toolchain (during the development phase) and make it executable
 +
<pre class="workstation-terminal">
 +
dvdk@vagrant:~/desk-mx-l$ {
 +
>  echo \# DESK-MX8M-L development environment for u-boot/kernel development
 +
>  echo
 +
>  echo source /home/dvdk/desk-mx-l/sdk/latest_desk-mx8-l-toolchain/environment-setup-aarch64-poky-linux
 +
> } | tee > /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0_env.sh
 +
dvdk@vagrant:~/desk-mx-l$ chmod 755 desk-mx8m-l-2.0.0_env.sh
 +
dvdk@vagrant:~/desk-mx-l$
 +
</pre>
 +
* once installed, if required for freeing some space, the SDK file can be removed:
 +
 
 +
rm fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
 +
 
 +
==== Installing the ''application'' SDK ====
 +
The previously installed SDK is used for building u-boot and kernel sources. For building userspace application another SDK has to be used: the <code>fsl-imx-wayland-glibc-x86_64-desk-image-qt5-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh</code> script has been created by DAVE's Yocto building when the <code>desk-image-qt5-desk-mx8mp.tar.bz2</code> root file system has been created: it contains the SDK headers and libraries for building the Qt5 application too.
 +
 
 +
The same previously described operations can be followed for installing this SDK in the same directory. At the end, both SDK are installed and present into the rfs:
 +
<pre class="workstation-terminal">
 +
dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
 +
total 435052
 +
drwxr-xr-x 5 dvdk dvdk      4096 Feb 14 16:38 ./
 +
drwxr-xr-x 6 dvdk dvdk      4096 Feb 14 16:36 ../
 +
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0
 +
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
 +
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0
 +
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0-toolchain
 +
lrwxrwxrwx 1 root root        41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
 +
lrwxrwxrwx 1 root root        51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
 +
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0
 +
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain
 +
dvdk@vagrant:~/desk-mx-l/sdk$
 +
</pre>
 +
 
 +
==== Using the SDK ====
 +
Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:
 +
 
 +
  source /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0_env.sh
 +
 
 +
==== MITO 8M Mini SDK ====
 
[[MITO 8M Mini SOM| MITO 8M Mini]] has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.
 
[[MITO 8M Mini SOM| MITO 8M Mini]] has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.
  

Revision as of 13:01, 24 July 2023

History
ID# Issue Date Notes

16134

17/02/2022 First DESK-MX8M-L release

17536

24/02/2023 DESK-MX8M-L-2.0.0 release

18026

24/07/2023 DESK-MX8M-L-4.0.0 release



Virtual Machine[edit | edit source]

DAVE' standard DVDK Virtual Machine contains all the required software and documentation to start developing Linux applications on the ORCA and MITO 8M Mini platforms. In particular, DESK-MX8M-L provides a virtual machine, called DVDK, with the following features:

  • VirtualBox virtual machine (.OVA archive)
  • based on Lubuntu 20.04 LTS (64-bit version)
  • pre-installed VirtualBox Guest Additions
  • LXDE desktop environment
  • boot disk with the distro and pre-configured basic Linux services:
    • TFTP: with base directory /tftpboot/desk-mx8m-l/
    • NFS: configured through the /etc/exports file
  • secondary disk containing source code and tools:
    • bootloader (U-Boot) source tree cloned from DAVE Embedded Systems public git repository
    • Linux kernel source tree cloned from DAVE Embedded Systems public git repository
    • external pre-built toolchain
    • Yocto BSP for ORCA SOM and MITO 8M Mini SOM
  • pre-installed Yocto-based root file systems with setup scripts, makefiles, example applications, ...
  • administrator account (dvdk) with autologin. Please note that the user account credentials are provided with the development kit (you can find them in the README file contained in the sw/dvdk folder of the kit distribution)
    • user: dvdk
    • password: dvdk

Please note that U-Boot and kernel source trees are derived from the official trees released by NXP/Freescale; these trees have been customized to add support for the ORCA and MITO 8M Mini SOMs.

Host setup[edit | edit source]

As stated previously, ORCA SOM host tools are based on a Managed Virtual Machine. As indicated here, microSD card delivered along with ORCA Evaluation Kit includes basic version of MVM that is the default option.

Please follows the README file on the SD card to extract the *.ova archive and to install the MVM.

It is also worth remembering that access to git repositories is required to download target source code. To enable it, please refer to this page.

MVM can be downloaded here. For accessing DESK Reserved area please contact our helpdesk support channel

To install it, please refer to this page.

DVDK for release 4.0.0[edit | edit source]

The Virtual Machine used for the ORCA and MITO 8M Mini SOMs is called `DESK-MX-L-4.0.0`.

Installing the meta-toolchain SDK[edit | edit source]

meta toolchain is preinstalled on the version `DESK-MX-L-4.0.0` and used for building U-Boot and kernel sources. It can be found in the following path.

dvdk@vagrant:~/desk-mx-l$ ls /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0/ -la
total 40
drwxr-xr-x 3 root root  4096 Jul 24 14:12 .
drwxr-xr-x 3 root root  4096 Jul 24 14:11 ..
-rw-r--r-- 1 root root  4253 Jul 24 14:11 environment-setup-armv8a-poky-linux
-rw-r--r-- 1 root root 14027 Jul 24 14:11 site-config-armv8a-poky-linux
drwxr-xr-x 4 root root  4096 Jul 24 14:11 sysroots
-rw-r--r-- 1 root root   141 Jul 24 14:11 version-armv8a-poky-linux
dvdk@vagrant:~/desk-mx-l$

The installation script can be found in `/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_meta-toolchain.sh`. In case reinstallation would be need, execute following commands.

dvdk@vagrant:~$ cd desk-mx-l/
dvdk@vagrant:~/desk-mx-l$ ./desk-mx8m-l-4.0.0_meta-toolchain.sh -d /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0 -y
NXP i.MX Release Distro SDK installer version 5.15-kirkstone
============================================================
You are about to install the SDK to "/opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0". Proceed [Y/n]? Y
Extracting SDK..........................................done
Setting it up...done
SDK has been successfully set up and is ready to be used.
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 $ . /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0-rc2/environment-setup-armv8a-poky-linux
dvdk@vagrant:~/desk-mx-l$

Installing the application SDK[edit | edit source]

application SDK is preinstalled on the version `DESK-MX-L-4.0.0` and used for building userspace application. The SDK contains the headers and libraries for building the Qt6 application. It can be found in the following path.

dvdk@vagrant:~$ ls -la ~/desk-mx-l/sdk/desk-mx8m-l-4.0.0/
total 40
drwxr-xr-x 3 dvdk dvdk  4096 Jul 24 14:27 .
drwxr-xr-x 3 dvdk dvdk  4096 Jul 24 14:19 ..
-rw-r--r-- 1 dvdk dvdk  4231 Jul 24 14:26 environment-setup-armv8a-poky-linux
-rw-r--r-- 1 dvdk dvdk 14027 Jul 24 14:26 site-config-armv8a-poky-linux
drwxr-xr-x 4 dvdk dvdk  4096 Jul 24 14:19 sysroots
-rw-r--r-- 1 dvdk dvdk   141 Jul 24 14:26 version-armv8a-poky-linux
dvdk@vagrant:~$

The installation script can be found in `/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_sdk.sh`. In case reinstallation would be need, execute following commands.

dvdk@vagrant:~$ cd desk-mx-l/
dvdk@vagrant:~/desk-mx-l$ ./desk-mx8m-l-4.0.0_sdk.sh -d /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0 -y
NXP i.MX Release Distro SDK installer version 5.15-kirkstone
============================================================
You are about to install the SDK to "/home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0". Proceed [Y/n]? Y
Extracting SDK............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................done
Setting it up...done
SDK has been successfully set up and is ready to be used.
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 $ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0-rc2/environment-setup-armv8a-poky-linux
dvdk@vagrant:~/desk-mx-l$

Using the SDK[edit | edit source]

Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:

 source /home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_env.sh

MITO 8M Mini SDK[edit | edit source]

MITO 8M Mini has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.

DVDK for release 2.0.0[edit | edit source]

The Virtual Machine used for the ORCA and MITO 8M Mini SOMs is the same used for the DESK-MX6-L development environment. Here below you can find the simple instructions for installing the release for DESK-MX8M-L BSP using DESK-MX6-L Virtual Machine.

Additional library[edit | edit source]

  • libssl-devel is required for building the linux kernel: it is enough to install the library in the VM
dvdk@vagrant:~/desk-mx-l$ sudo apt-get install libssl-dev

Installing the meta-toolchain SDK[edit | edit source]

  • open a Desktop Linux Terminal
  • download the proper SDK from the mirror server fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
dvdk@vagrant:~/desk-mx-l/sdk$ wget http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
--2022-02-14 16:09:59--  http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
Resolving mirror.dave.eu (mirror.dave.eu)... 79.143.179.155
Connecting to mirror.dave.eu (mirror.dave.eu)|79.143.179.155|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 445468102 (425M) [text/x-sh]
Saving to: ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’

fsl-imx-wayland-glibc-x86_64-meta-toolchain-aar 100%[=======================================================================================================>] 424.83M   639KB/s    in 8m 54s  

2022-02-14 16:18:54 (815 KB/s) - ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’ saved [445468102/445468102]

dvdk@vagrant:~/desk-mx-l/sdk$ 
  • the sdk recommended installation directory is desk-mx-l/sdk
  • directory listing before installing the new SDK
dvdk@vagrant:~/desk-mx-l/sdk$ pwd
/home/dvdk/desk-mx-l/sdk
dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
total 16
drwxr-xr-x 4 dvdk dvdk 4096 Apr  9  2021 .
drwxr-xr-x 6 dvdk dvdk 4096 Apr  9  2021 ..
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
lrwxrwxrwx 1 root root   41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
lrwxrwxrwx 1 root root   51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
dvdk@vagrant:~/desk-mx-l/sdk$ 
  • SDK installation
dvdk@vagrant:~/desk-mx-l/sdk$ chmod 755 fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
dvdk@vagrant:~/desk-mx-l/sdk$ ./fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
NXP i.MX Release Distro SDK installer version 5.4-zeus
======================================================
Enter target directory for SDK (default: /opt/fsl-imx-wayland/5.4-zeus): /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain
You are about to install the SDK to "/home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain". Proceed [Y/n]? Y
Extracting SDK.................................................................................................................done
SDK has been successfully set up and is ready to be used.
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 $ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain/environment-setup-aarch64-poky-linux
dvdk@vagrant:~/desk-mx-l/sdk$ 
  • create a symbolic link to the SDK directory latest version
ln -s /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain latest_desk-mx8-l-toolchain
  • create the environment script for enabling the toolchain (during the development phase) and make it executable
dvdk@vagrant:~/desk-mx-l$ {
>   echo \# DESK-MX8M-L development environment for u-boot/kernel development
>   echo 
>   echo source /home/dvdk/desk-mx-l/sdk/latest_desk-mx8-l-toolchain/environment-setup-aarch64-poky-linux
> } | tee > /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0_env.sh
dvdk@vagrant:~/desk-mx-l$ chmod 755 desk-mx8m-l-2.0.0_env.sh
dvdk@vagrant:~/desk-mx-l$ 
  • once installed, if required for freeing some space, the SDK file can be removed:
rm fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh

Installing the application SDK[edit | edit source]

The previously installed SDK is used for building u-boot and kernel sources. For building userspace application another SDK has to be used: the fsl-imx-wayland-glibc-x86_64-desk-image-qt5-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh script has been created by DAVE's Yocto building when the desk-image-qt5-desk-mx8mp.tar.bz2 root file system has been created: it contains the SDK headers and libraries for building the Qt5 application too.

The same previously described operations can be followed for installing this SDK in the same directory. At the end, both SDK are installed and present into the rfs:

dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
total 435052
drwxr-xr-x 5 dvdk dvdk      4096 Feb 14 16:38 ./
drwxr-xr-x 6 dvdk dvdk      4096 Feb 14 16:36 ../
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0-toolchain
lrwxrwxrwx 1 root root        41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
lrwxrwxrwx 1 root root        51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain
dvdk@vagrant:~/desk-mx-l/sdk$ 

Using the SDK[edit | edit source]

Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:

 source /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0_env.sh

MITO 8M Mini SDK[edit | edit source]

MITO 8M Mini has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.