Contents
What is U-boot elf?
U-boot. elf is second stage bootloader and it is used for to call OS.
What is SPL in U-boot?
SPL (Secondary Program Loader) is a small binary, generated from U-Boot source, that fits in the SRAM and loads the main U-Boot into system RAM. between the SPL and the main U-Boot. – SPL also relies heavily on toolchain garbage collection.
How do you trace a boot?
By default, the macros used by U-Boot (debug(), pr_debug()…) do not print any trace; to activate the debug traces on a specific file, you need to enable the DEBUG compilation flag and change the LOGLEVEL for the file: define DEBUG before any include in the . c file.
How to do debugging of U-Boot after relocation?
Debugging of U-Boot After Relocation For debugging U-Boot after relocation we need to know the address to which U-Boot relocates itself to. When no exotic features like PRAM are used, this address usually is – CONFIG_SYS_MONITOR_LEN.
Is it possible to debug U-boot from flash?
Debugging of U-Boot When U-Boot starts it is running from ROM space. Running from flash would make it nearly impossible to read from flash while executing code from flash not to speak of updating the U-Boot image in flash itself. To be able to do just that, U-Boot relocates itself to RAM.
Why does U-Boot debug not show local variables?
By default U-Boot makefiles are set to optimize the code so the debug process might not follow the C source file and local variables might not be visible for the debugger. Unfortunatelly removing optmization globally is broken in the current U-Boot source code, however more specific changes can be done to get better debugging experience.
Is there way to debug U-Boot in Xilinx?
Xilinx SDK System Debugger supports source level debugging of self-relocating programs, like u-boot as described in the AR66591 or in the Help documentation. This wiki page is an step-by-step guideline of this documents using U-Boot as an example of self relocated application.