Target setup for R-Car H3 with Integrity OS
This document describes the setup required to build and run CGI Studio applications with R-Car H3 device package on Renesas R-Car H3 hardware. Instructions are provided how to setup the system.
On R-Car H3 hardware this means how to update with the required BSP.
Next, it is explained how to run the R-Car H3 target demo application part of the release package.
Finally, the document provides instructions how to setup the build environment and how to build own applications for R-Car H3 target (Renesas R-Car H3).
R-Car D3 Custom Integrity BSP
R-Car H3 Integrity BSP: Prerequisites
Hardware: Renesas RCarH3 Merload board
CGI Studio has been tested on Renesas RCarH3 Merload board.
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 Renesas BSP and RGL driver have to be obtained directly from Green Hills or Renesas and installed according to their installation guide.
CGI Studio was tested with MULTI IDE 6.1.4, Compiler 2013.5.4 and INTEGRITY for ARM v11.4.4
The Green Hills Probe was setup with Green Hills Probe Firmware prerelease Version 5.4.4.
Renesas Graphics Library
The graphics driver is not part of this release. CGI Studio was integrated and tested with the H3Hx RGL SGX540 driver Version V1.0
Running the Player Demo Application on R-Car H3 Integrity
Asset
An asset (statically linked) has been pre-built and is located here:
- [...]/cgi_studio_courier_apps/src/CourierSampleApp/Assets/AssetLibCff_RCarH3_Integrity_Target.bin
Asset loading from file system (if required)
- Note:
- Application side only, this is not part of the original port.
To enable set:
-
#define __LOAD_ASSET_FROM_FILE
in:
- [...]/cgi_studio_courier_apps/src/CourierSampleApp/AppPlatform/Target_RCarH3Integrity_ARM/AppEnvironment.cpp
and set this variable to the correct file system path:
- Courier::Char * cAssetFileName = "...";
also, remove:
- -rawimport ${ASSET_TARGET_LOCATION}
from 'LINK_FLAGS' in:
- [...]/cgi_studio_courier_apps/src/CourierSampleApp/AppPlatform/Target_RCarH3Integrity_ARM/KernelTargets/KernelTargets.cmake
SceneComposer Solution
- [...]/cgi_studio_courier_apps/src/CourierSampleApp/SCSolution/RCarH3
Flash
- in MULTI (v7.4.1) Launcher choose 'Open Debugger' -> C:/ghs/int1144/config/bin/multivisor_vm0_vm1_mono
- (if not yet done) load 'CANDERA_default.con' from 'Target' -> 'Show Connection Organizer'
- press 'F5' (green arrow button) and select:
- * '[CANDERA] Flash Kernel (mpserv) for Renesas R-Car H3'
- * select 'Download to RAM' when asked
- chose 'File' -> 'Debug as new Entry' -> [...]/CourierSampleApp_RCarH3Platform_Target_RCarH3Integrity_ARMIntDyn
- chose 'Debug' -> 'Prepare Taget' and select:
- * '[CANDERA] Load Dynamic Download (rtserv2) for Renesas R-Car H3'
- wait until application is loaded (~ half a minute)
Notes
- the result of the build will be a dynamic build file:
- "CourierSampleApp_RCarH3Platform_Target_RCarH3Integrity_ARMIntDyn"
- along with the sample app two additional VAS are loaded (but not started):
- -> noload_as_1 (WM_Server_as0) and noload_as_2 (MMGR_Server_as0)
- this is a workaround to overcome a dynamic download issue not solved yet.
Building Own Application for R-Car H3 Integrity
Integrity base folders
- Integrity OS: C:/ghs/int1144/multivisor
- MULIT + compiler: C:/ghs/comp_201714
CMAKE source path
- [...]/cmake/Apps/Courier/CourierSampleApp
CMAKE configuration & generation
- use generator for "MinGW Makefiles" (install MinGW for win32 if needed)
- use toolchain file: [...]/cgi_studio_devices/src/RCarH3/ToolchainFiles/MULTI-toolchain-RCarH3.txt
CMAKE variables to set
- COURIER_PLATFORM=RCarH3Platform
- COURIER_PLATFORM_CONFIG=Target_RCarH3Integrity_ARM
make command (win32 command console)
- mingw32-make