I'm using a sequence of U-Boot commands to load the M7 firmware on the S32G3 platform. All commands execute successfully, but the expected functionality—LED blinking—is not working.
dcache off
mw.q 0x34100000 0x0 0x40000
fatload mmc 0:4 0x80000000 led.bin
cp.b 0x80000000 0x34350010 0x300000
startm7 0x34451000
QN 1:where can i find the correct load address used in the memory copy command. Specifically, I need clarity on the address and size parameters, what each represents, and where to obtain them. My goal is to boot the M7_0 core of the S32G3 device. Attached the firmware files for reference.
QN 2:I’d like to know whether it's possible to load an ELF file directly from U-Boot. If so, I need the exact commands and guidance on how to determine the correct memory address to use.
Qn 3: I attempted to load the ELF file using the bootelf command, but it resulted in an exception error. I want to understand why this happens and what causes the failure.
=> bootelf 0x80000000
"Error" handler, esr 0xbf000002
elr: 00000000ff91fbc8 lr : 00000000ff91fbc4 (reloc)
elr: 00000000ff91fbc8 lr : 00000000ff91fbc4
QN4: readelf -h led.elf that the class is ELF32. is it expected. is the the reason for the bootelf failure?
image (2).png
QN5: When I load the LED blinking ELF file using Lauterbach, it works correctly. However, when I try to load the corresponding binary instead, it fails with an unknown symbol error. I need to know what address should be used when loading the .bin file in the Lauterbach CMM script.
Screenshot2.png
Screenshot3.png
QN6: I have used the linker script modification provided to reduce the size of the bin file. will it affect the functionality of the bin file?