Hi,
We use S32G-VNO-GLDBOX ver. 47800 REV D1 with S32DS, IPCF 4.9.0 D2310, RTD 4.0.2 D2306, Linux BSP 39.0.
We are able run IPCF example after rebuild linux BSP 39.0 release 5.15.129-rt with ipcf-shm release 4.9.0 D2310 available from nxp-auto-linux git using arm-gnu-toolchain 11.3rel1.
Now we want to use the IPCF RTD example in combination with MCU RTD 4.0.2 peripherals. However, we ran into a problem here, when using the Mcu_InitClock() function in the sample code and then booting the M7 kernel with uboot, the entire uboot reboots. Additionally, uboot freezes when using the Mcu_SetMode() function in the sample code. These functions are necessary for the possible use of other peripherals in our project.
So we want to ask if there is a way to reconfigure the MCU clock and peripherals of the RTD example so that they can be used together with the IPCF example.
Thanks for any advice.
Hi,
We understand that the behavior you are seeing is due to the clock configuration happening 2 times (1 under the A53 core and 1 under the M7 core). This creates a conflict since the application is reconfiguring the clock configuration on 1 core while the other core is not expecting it. You should only initialize once clocks prior to the cores executing their respective application. More information on this regard seems to be provided under the following knowledge base:
S32G Bootloader Customzition - NXP Community
As for the Mcu_SetMode() function, the same seems to apply, since you are setting a specific configuration for all available cores (or so we understand) when other cores are not expecting it. All resource sharing and mode changing under a multicore execution is to be taken care by the developer for a correct implementation.
Please, let us know.
Hi,
Now we can use the IPCF RTD example in combination with the Can, Gpt and Crc example.
Unfortunately, when we try to use the LLCE Can example in combination with IPCF, the Can_Enable_Timestamp() function causes our RTD application to not work when started from uboot.
Hi,
Aside from the IPCF examples, there are no guidelines on how to initialize the M7 application from uboot. The recommended scenario for multicore booting is to use a bootloader (which NXP provides ones). We can recommend looking into AN13750 available under the S32G2 product page (link: S32G2 Safe and Secure Vehicle Network Processor | NXP Semiconductors) for more information.
As for the overall behavior, seems to be a problem on regards of misconfiguration of clocks. A general idea is provided under the previously mentioned knowledge base.
Please, let us know.