S32G bootloader use Trace32 script cannot start A53_0

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

S32G bootloader use Trace32 script cannot start A53_0

2,467 Views
nevc
Contributor I

I'm using Platform_Software_Integration_S32G2XX_2021_09 version, when I use trace32 script to debug the bootloader, it is able to start cm7 app, but cannot start uboot; but when I use IVT version bootloader, and flash IVT  bootloader, cm7 app, uboot on the QSPI flash, power on the board, cm7 app and uboot all worked well.

When use Trace32 script to debug, why uboot can't work well?

0 Kudos
Reply
2 Replies

2,409 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello nevc,

You have to change the script to a one that does not use the ivt, I guess trace has one of this if not you have to create one.

 

Regards

0 Kudos
Reply

2,379 Views
nevc
Contributor I

Thank you very much for your reply.

The script I'm using is as follow:

;
; Script for programming of S32Gxx.
;
; $Author: Vlad Furtuna $
; $Date: 2019-09-23 $
; This file is used to load code from the M7 bootloader, copying data
; from ram to ram memory and starting the application.
;========================================================================


JTAG.PIN NRESET 0
JTAG.PIN NTRST 0
WAIT 10ms
JTAG.PIN NRESET 1
JTAG.PIN NTRST 1
WAIT 10ms

; Boot on E2 samples, assume M7-HSE is not accessible anymore, the M7_0 should have clock
; but is not booted when there is no IVT, so it has to be manually booted through AXI interface
system.down
sys.Reset
symbol.sourcepath.reset
sys.cpu S32G-M7_0
SYStem.config.debugporttype JTAG
SYStem.Option TRST OFF
trace.DISABLE
ETM.OFF
ITM.OFF
SYStem.JtagClock 40MHz
sys.Option DUALPORT on
sys.memaccess DAP
sys.mode prepare

GOSUB InitSramEccViaRAMCtrl

;; Writing loop to self instruction to memory
D.S eaxi:0x34000000 %LE %Long 0x34000100
D.S eaxi:0x34000004 %LE %Long 0x34000025
D.S eaxi:0x34000024 %LE %Long 0xFFFEF7FF

GOSUB EnableCM7_0
GOSUB DisableSWTWatchdog

DO QuadSPI_Flash_Init.cmm

sys.Option DisMode THUMB

sys.MemAccess AXI
SYStem.Option DUALPORT ON
sys.attach
break

Data.Load.Elf ../bin_bootloader/Bootloader.elf /GLOBTYPES /AnySym

;Release the core from the loop from startup
data.set eaxi:CATCH_CORE_RESET 0x00000000
list

go main

ENDDO

 

when I'm using this script download Bootloader.elf on board, debug it step by step, after copy uboot.bin and cm7_app.bin form QSPI flash to Ran, pull A53 out of reset but uboot can not run as well, pull cm7_1 core out of reset, cm7_app run well.

Use the same Bootloader.bin and make it with IVT information, then flash Bootloader_IVT.bin、uboot.bin、 cm7_app.bin on QSPI flash, reset the board, boot uboot and cm7_app run well.

Want to know why use .cmm script debug the same project online, it does not work?

0 Kudos
Reply