linif.h and linif.c Missing while building in LLCE_LIN example

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

linif.h and linif.c Missing while building in LLCE_LIN example

Jump to solution
1,350 Views
naveenkumar_muthusamy
Contributor III

Hi all,

 

I am trying to build the example Lin_llce_ds_s32g274a

after updating code , i am trying when i am trying to build the code there are few files missing for the build 

please find the error message below:

arm-none-eabi-gcc "@RTD/src/Clock_Ip.args" -MMD -MP -MF"RTD/src/Lin_Llce_Irq.d" -MT"RTD/src/Lin_Llce_Irq.o" -o "RTD/src/Lin_Llce_Irq.o" "../RTD/src/Lin_Llce_Irq.c"
../RTD/src/Lin_Llce.c:55:10: fatal error: LinIf.h: No such file or directory
55 | #include "LinIf.h"
| ^~~~~~~~~
compilation terminated.
../RTD/src/Lin_43_LLCE.c:52:10: fatal error: LinIf.h: No such file or directory
52 | #include "LinIf.h"
| ^~~~~~~~~
compilation terminated.
make: *** [RTD/src/subdir.mk:176: RTD/src/Lin_Llce.o] Error 1
arm-none-eabi-gcc "@RTD/src/Clock_Ip.args" -MMD -MP -MF"RTD/src/Mcu.d" -MT"RTD/src/Mcu.o" -o "RTD/src/Mcu.o" "../RTD/src/Mcu.c"
make: *** Waiting for unfinished jobs....

make: *** [RTD/src/subdir.mk:174: RTD/src/Lin_43_LLCE.o] Error 1
Finished building: ../RTD/src/IntCtrl_Ip.c

Finished building: ../RTD/src/Lin_Llce_Irq.c

Finished building: ../RTD/src/Mcu.c

"make -j6 all" terminated with exit code 2. Build might be incomplete.

15:04:04 Build Failed. 5 errors, 0 warnings. (took 6s.719ms)

These LINIF files are not found in the src and includes folder, kindly help me in building this example

@S32G2RM @s32g274a @llce Using LLCE as UART in S32G2RM 

Labels (1)
0 Kudos
1 Solution
1,283 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

At this moment there is no guide nor application note related to configuring LLCE LIN channels to be used as UART. All the implementation is for the client to develop.

The points mentioned is the only information we have in reference to this topic. The HW should be there for the LIN channels to be used as UART, but the driver needs to be developed by the customer (if no modifications are needed on the LLCE FW).

We do apologize for this.

Please, let us know if this information was helpful or not.

View solution in original post

9 Replies
1,331 Views
naveenkumar_muthusamy
Contributor III

Hi,

Thanks for the reply,

i was able to add the lInif , but after adding the linif files there are new error which comes

 

c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./generate/src/Clock_Ip_VS_0_PBcfg.o:C:/Users/t0278554/S32Workspace/Lin_Llce_DS_S32G274A_M7/generate/include/Clock_Ip_VS_0_PBcfg.h:95: multiple definition of `Mcu_aClockConfigPB'; ./generate/src/Clock_Ip_BOARD_InitPeripherals_PBcfg.o:C:/Users/t0278554/S32Workspace/Lin_Llce_DS_S32G274A_M7/generate/include/Clock_Ip_VS_0_PBcfg.h:95: first defined here
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x8): undefined reference to `dte_bin'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0xc): undefined reference to `dte_bin_len'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x18): undefined reference to `ppe_rx_bin'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x1c): undefined reference to `ppe_rx_bin_len'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x28): undefined reference to `ppe_tx_bin'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x2c): undefined reference to `ppe_tx_bin_len'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x38): undefined reference to `frpe_bin'
c:/nxp/s32ds.3.4/s32ds/build_tools/gcc_v9.2/gcc-9.2-arm32-eabi/bin/../lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/real-ld.exe: ./src/Llce_Firmware_Load.o:(.rodata+0x3c): undefined reference to `frpe_bin_len'
collect2.exe: error: ld returned 1 exit status
make: *** [makefile:40: Lin_Llce_DS_S32G274A_M7.elf] Error 1
"make -j6 all" terminated with exit code 2. Build might be incomplete.

11:50:21 Build Failed. 10 errors, 0 warnings. (took 9s.982ms)

please let me know the fix for this

0 Kudos
1,326 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

This error is caused due to a problem related to a linked folder. The error is related to the Linked Resource "LLCE_BIN_DIR". To find this, you right click on the project, go to "Properties > Resources > Linked Resources", should be the second linked resource. Double click on the resource and modify it to point to the correct folder. As an example:

Incorrect link >> C:\NXP\S32G_LLCE_GATEWAY_1_0_4_D2204\firmware\llce_bin\s32g2\bin\ghs\enablement

Correct link >> C:\NXP\S32G_LLCE_1_0_4\firmware\llce_bin\s32g2\bin\ghs\enablement

You should see a warning sign in the resource. Once you link the correct folder, this warning should disappear.

With this, you should be able to compile the code. We recommend cleaning the project before compiling with the new link. Right click on the project then "Clean Project", after this, the compilation should finish without errors.

Please, let us know if this information was helpful or not.

0 Kudos
1,321 Views
naveenkumar_muthusamy
Contributor III

Hi 

Thanks for the reply, I was able to build the example from the instructions given by you

Is is possible to use UART in LLCE?

We can understand from the documents that LLCE provides channels for interfaces over cores in s32g2,

we want use all the LIN Channels for UART, we don't have enough information from the documents from NXP on how to do it.

can you please provide information on how to use UART over LLCE LIN channels

0 Kudos
1,313 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

There is a post related to this request regarding LIN and UART interface with LLCE, the link below should give you an insight on this topic.

Solved: Using LLCE as UART in S32G2RM - NXP Community

Please, let us know if this information was helpful or not.

0 Kudos
1,303 Views
naveenkumar_muthusamy
Contributor III

Hi,

We are trying to develop the UART but we are not seeing any registers for configuring the LLCE as UART or in any mode

we need some more information on this topic as we didn't get information we are needing for the development of the UART over LLCE

0 Kudos
1,300 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

At this moment, there is no example available which supports UART over LLCE LINs. If needed, the recommendations are the following:

1. Implement UART driver on host side and enable LIN interrupt forwarding. Host core can access the LinFlex registers directly but interrupts of LLCE_LIN cannot be directly routed to host core. For routing LLCE LIN interrupts to host core, LIN interrupt forwarding can be enabled in LLCE FW and the steps to enable are explained in section “LIN Interrupt Forwarding” in LLCE FW user guide. No change required in the FW

2. Implement UART driver on host side with polling. And make sure the host core do not send any LIN related commands to LLCE FW which would result in unpredictable behavior. No change required in the FW.

3. Remove LIN based FW and implement UART based FW in LLCE FW. This would require FDK license.

You can take a look into the LLCE User Guide of your specific version to see what it available at this moment. You can find the UG following:

"C:\nxp\S32G_LLCE_1_0_4\firmware\llce_interface\doc\LLCE_firmware_user_guide.pdf"

In here, it is explained what is available for your specific version without the need of modifications.

Please, let us know if this information was helpful or not.

0 Kudos
1,292 Views
naveenkumar_muthusamy
Contributor III

Implement UART driver on host side and enable LIN interrupt forwarding

Here i don't understand Implement UART  driver on the host side

UART Driver on the host side meaning on which layer on the code? is it on the MCAL layer or the driver layer

if so we develop the driver on any of these layer how we can make those drivers for the using the LIN channels available in the LLCE Module

0 Kudos
1,284 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi,

At this moment there is no guide nor application note related to configuring LLCE LIN channels to be used as UART. All the implementation is for the client to develop.

The points mentioned is the only information we have in reference to this topic. The HW should be there for the LIN channels to be used as UART, but the driver needs to be developed by the customer (if no modifications are needed on the LLCE FW).

We do apologize for this.

Please, let us know if this information was helpful or not.

1,336 Views
Daniel-Aguirre
NXP TechSupport
NXP TechSupport

Hi

This error is solved by adding the LinIf driver and deleting the LinIf.c from the project. These steps are provided in the "description.txt" when creating the project, under the folder of the project.

- Right click on the project, S32 Configuration tools -> Manage SDK Components
- Add LinIf from the list
- delete LinIf.c from the Project explorer. It is in RTD/src folder

Please, let us know if this information was helpful or not.

0 Kudos