LLCE example and U-boot

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

LLCE example and U-boot

355 Views
GioMusto
Contributor II

Hello.

I'm trying to make the LLCE examples work on the Goldbox.

I modified the CAN2CAN example a little bit, and it works if I debug it from S32DS.

If I try to run it from U-boot, however, it executes, but hangs U-boot itself.

These are the commands I'm running:

dcache off; mw.q 0x34000000 0x0 0x100000; dcache on

fatload mmc 0:2 ${loadaddr} /llce.elf

bootm7 ${loadaddr} VTABLE

I can see the CAN traffic on the bus, so the example is running, but U-boot hangs and is not able to accept commands anymore.

After some debugging, I was able to trace the problem to the PlatformInit() call, and in particular the code to set the clock.

If I remove that code, however, the example does not work anymore.

Do you have any suggestions?

Tags (3)
0 Kudos
Reply
5 Replies

317 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @GioMusto 

Thanks for your post.

The issue you mentioned may be caused clock or other resource confliction between M and A side.

1. On S32G product, under default settings, the BSP running on A53 side is designed under the assumption that it has exclusive access to the system, and therefore does not consider potential conflicts introduced by other software components, while in your M core application, it may also touch critical resources like clock/memory, etc. You have to careful about every part of the code, to avoid any possible confliction/re-configuration for critical resources.

2. For running both M7 application and Linux BSP simultaneously, the recommended way is to firstly running a M7 bootloader to manage the resources, as introduced via AN13750 

 

BR

Chenyin

 

0 Kudos
Reply

304 Views
GioMusto
Contributor II
Hi @chenyin_h, thanks for your reply.
I see the guide you posted is for the S32G2. Is it the same for S32G3, or are there some differences?

Do you have any suggestion on things to keep an eye on? Common problems, and so on.
0 Kudos
Reply

302 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @GioMusto 

Thanks for your reply.

Yes, it is for S32G2, not G3, but the method introduced is similar.

Since it is based on early version software packages, it could not be considered as a step by step guide when using recent version software combinations.

 

BR

Chenyin

0 Kudos
Reply

42 Views
GioMusto
Contributor II

I'm trying to build the M7 bootloader by following AN13750 and the "System-Level Bootloader Integration Example for S32G3XX".

I managed to compile the bootloader (with some difficulties, since I'm missing the SAF package), but now I'm stuck with the IVT tool in S32DS.

When I create a new project, select S32G399A, Cortex-M7_0, and create a configuration, I get the error "IVT tool does not support the current processor. The same is true for DCD, QuadSPI, DDR and eFuse (see screenshot).

What am I doing wrong?

IVT_error.png

0 Kudos
Reply

14 Views
chenyin_h
NXP Employee
NXP Employee

Hello, @GioMusto 

Thanks for your reply.

1. Commonly, I suggest using S32DS3.5.x(for example, 3.5.14) for working with S32G(mentioned in release notes of S32G RTD release), and make sure that the following packages are installed at least:(RTD and development package)

chenyin_h_0-1786010049364.png

2. To simplify the process, you may import an example project into the S32DS, and then open the IVT tool, for example:

chenyin_h_1-1786010241259.png

Then have a try if the IVT tool could be used for generating blob based on your own images.

 

BR

Chenyin

0 Kudos
Reply