RTA Knowledge Base

Table of Contents

Introduction

Scope

The goal of this application note is to provide some guidelines on how integrate the IFX FEE MCAL module into a RTA-CAR project.

Definitions and Abbreviations

BSW: AUTOSAR Basic Software, Hardware independent service layer

ECU: Electronic Control Unit

RTE: AUTOSAR Run-Time Environment

OS: AUTOSAR Operating System

SWC: Software Component

Toolchain

It is assumed you are using the RTA-CAR 9.2.0 toolchain:

RTA-CAR 9.2.0 toolchain

ISOLAR-ABv 9.2.0
RTA-RTEv 7.5.0
RTA-BSWv 6.1.2
RTA-OSv 6.2.0

Prerequisites

In order to correctly follow this guide, the main prerequisite is to already have a project where the Memory Stack is configured. In fact, the guide will guide the user in the needed steps for substitute the RTA-CAR FEE module with the IFX FEE module.

Overview

RTA-CAR and RTA-BSW provide a FEE module which can be used. Although we reccomand to use the RTA-BSW FEE in order to be able to exploit all the configuration automation mechanisms of RTA-CAR (e.g. configuring the entire MEM stack using the RTA-CAR ConfGen), there mighe be cases where the user prefers to use the FEE module provided by the silicon vendor (in this case Infineon).

RTA-CAR project

Even if the user will use the IFX Fee, the RTA-CAR project must contain the FEE module. This is needed as a "stub" for the BSW generator, so that it can satisfy all dependencies with all the Mem Stack Layers above (MemIf, NvM). This means that you need to generate the code for the BSW FEE as well, but you will not need to use it (as mentioned in the integration steps below)

Configuring IFX FEE with MCAL Configuration Tool

Now you can update your MCAL project adding the FEE module

The IFX FEE configuration should be the same as the FEE BSW configuration used as stub to generate the BSW. This means, for example, that you should enable the same functionalities (if available) and create the same FEE blocks

Once the configuration is complete, you can generate the MCAL FEE code. Check in the generation folder if you now have the Fee_PBcfg.h and Fee_PBcfg.c files.

Integration steps

There are few more integration steps that are required before to build the project, and they will be explained in the following sections.

Remove RTA-CAR FEE source code

Even if you generated the BSW FEE source code, as already mentioned, you don't need that code since you will use the IFX MCAL FEE src code instead. Go inside the RTA-CAR project, then select the src folder and remove the Fee folder from there.

An alternative way for this, in order to avoid every time to delete the FEE src folder, can be to exclude the BSW FEE folder from the list of the file that needs to be included in the build.

Stub needed for the MemIf

The BSW MemIf will rely on some FEE custom functionalities provided by ETAS. Since those functionalities are not available in the MCAL FEE, you need to stub all the Fee_Rb_XXX functions.

To see the complete list of functions that need a stub, you can open the MemIf_Cfg.h file and check the definitions there (see screenshot below):

Create a Stub file where you place an empty definition of those, and then include the file into the MemIf_MemMap.h file in order to get the correct inclusions and avoid compilation errors (undefined references).

Add MCAL Static Code

The MCAL generated code is not the only MCAL code you need in your project. You also need the static MCAL code. If we take a RTA-SK as example, the MCAL static code will be placed inside the MCAL folder as shown in the screenshot below:

It might be needed to add some FEE static code files also in that folder. You can find the MCAL static code in the MCAL installation folder. Try to search for the string "Fee" in the MCAL installation folder. You can take that code and copy it locally in your project, or just include the path in your build, to ensure that all the files are included in the building process.

You might need to add also other Fee related code, such as the MemMap file. You can find a skeleton of the Fee MemMap file in the installation folder of the MCAL as well, searching for Fee_MemMap.h

Conclusions

Following the steps in this brief guide, you should be able to integrate the IFX Fee successfully. However, if you get some build errors, it might be that you didn't include all the IFX Static Code related to the MCAL. Try to search into the MCAL installation folder for the undefined symbol and include the missing files in your project.