iMX6 Integrity

iMX6 Integrity Prerequisites

Hardware: NXP iMX6 SABRE Automotive

CGI Studio has been tested on NXP iMX6 DualPlus SABRE Automotive Infotainment Board (Sabre AI).

CMake

In order to build Candera, the Meta build system CMake needs to be installed with at least version mentioned here.
CMake is able to create the cross compilation make files that can be used with Green Hills MULTI compiler.

MinGW

To allow cross compilation with makefiles, MinGW 5.1.6 was used for this release.

Green Hills Toolchain

The build tool chain is not part of the delivery. Green Hills MULTI compiler, Green Hills Integrity and the according iMX6 Sabre BSP patch have to be obtained directly from Green Hills and installed according to their installation guide.

CGI Studio was tested with MULTI IDE 6.1.6, Compiler 2014.1.6 with compiler patch 9431 and INTEGRITY for ARM v11.0.4 including iMX6 SABRE Automotive BSP and Vivante Graphics Stack Vivante_GPU_v5011p4_r223261 . We recommend a clean install of Integrity and iMX6 SABRE Automotive BSP!

The Green Hills Probe was setup with Green Hills Probe Firmware prerelease Version 5.3.

Vivante Graphics Driver

The graphics driver is not part of this release. CGI Studio was integrated and tested with the Vivante Graphics stack included in The Green Hills iMX6 SABRE Automotive BSP mentioned above


Running the Player Demo Application on iMX6 Integrity

Download the Application

To download and debug the application you need a Green Hills probe with firmware 4.4.0 or higher that is configured for your according iMX6 SABRE hardware.

Monolith Application

In MULTI launcher select "Open debugger" and choose the application from your build folder with postfix Monolith. Then hit F5 and connect to target (mpserv connection via Ethernet). Choose "Download to RAM" and choose ID 1. After the application is downloaded, connect an rtserv2 connection directly to the board via Ethernet that allows you to start the Player application. There are three ways to specify the IP address of the board that shall be used for rtserv2:

  • as u-boot environment variable (will overrule the other two options)
  • In the global_table.c file of the kernel (in your int1104 folder)
  • via the command "nc" after the Monolith was started
Loading the asset

The Player demo application has the asset file added by teh linker. It will be loaded to RAM together with the application. As a default, the tunnel asset is linked. This can be changed in the file cgiapp_device_specific_inc.cmake in the CGIApplication/Platform/IntegrityiMX6 folder.


Logging Output and Key Input

Use TeraTerm or another terminal software to connect to the target via COM to receive logging output and use key input.

drawing-7-1677657313.png

 

Building Own Application for iMX6 Integrity

Compile Tool Chain Preparations

Make sure to install the tool chain as described in iMX6 Integrity Prerequisites


Generate Makefiles with CMake

For general information about CGI Studio Build System and CMake properties available to configure Candera applications refer to CGI Studio Build System.

To configure and generate makefiles for compiling the Player for IMX6 Integrity, follow below steps:

  1. Point CMake to source directory
    • Folder containing top-level "CMakeLists.txt", e.g. \cmake\Candera\Player
  2. Point CMake to binary directory
    • May not exist, create folder with CMake if necessary
    • Root directory for generated makefiles / solutions
    • Root directory for build artifacts
  3. Configure
    • Specify MinGW Makefiles as generator for the project
    • Specify tool-chain file for cross-compiling
  4. Select the toolchain-file from the delivery (adapt for your toolchain installation and application specific needs)
    • \cgi_studio_candera\cmake\toolchain-files\MULTI-toolchain-iMX6-Sabre.txt
  5. Adapt the CMake settings if necessary, e.g.:
    • CMAKE_BUILD_TYPE-> Debug or Release
    • Press Configure
  6. Press Generate

If the package supports "harfbuzz" as CANDERA_TEXTSHAPER please set this entry appropriately because by default it is set to "ComplexLib". Resume the configuration by pressing “Configure” again.


Building Application

After generating your CMake files, simply navigate to the specified build directory and type "make" with the terminal or console to start the build.

The output monolith file can be found in your build directory's subfolder CGIApplication.

Open this file with the Green Hills MULTI IDE debugger and load it to RAM as described in the previous chapter.