[U-Boot-Users] bl cpu_init_f jumps to an wrong point.

Hello community,
I've problem with jump to cpu_init_f. I trace the begin of u-boot execution, i.e. assembler code. It is okay, until it achieves the jump to cpu_init_f. Then it jumps to a random point. "Random" means that it is same point for every compilation. After next compilation this point changes randomly.
The picture is next: in debugger I see that cpu_init_f placed on the address 0xfff06924. I see same when I do disassemble the u-boot image.
Please hint where may I be mistaken?
The board: custom 8247A based, 2 M. flash. Compilation: configured and compiled for 8260. Neither error nor warnings during compilation. Toolchain: ELDK version 3.1.1 Build 2005-06-07 Linux: SuSE 9.3 kernel 2.6.11.4-21.9-default

Nekto Peresmeshnik wrote:
Hello community,
I've problem with jump to cpu_init_f. I trace the begin of u-boot execution, i.e. assembler code. It is okay, until it achieves the jump to cpu_init_f. Then it jumps to a random point. "Random" means that it is same point for every compilation. After next compilation this point changes randomly.
The picture is next: in debugger I see that cpu_init_f placed on the address 0xfff06924. I see same when I do disassemble the u-boot image.
Please hint where may I be mistaken?
The board: custom 8247A based, 2 M. flash. Compilation: configured and compiled for 8260. Neither error nor warnings during compilation. Toolchain: ELDK version 3.1.1 Build 2005-06-07 Linux: SuSE 9.3 kernel 2.6.11.4-21.9-default
It undoubtedly is _not_ a random address, it is where the linker placed cpu_init_f that u-boot is jumping to. My guess is that the problem is that you didn't program the code where it belongs. The reset vector is getting programmed properly but the code (BR0 flash mapping) is not where it is expected by the linker.
Check your configuration, especially where you placed flash in your linker control file vs. where flash is on power up vs. where you configured BR0/OR0 to point to.
gvb
participants (2)
-
Jerry Van Baren
-
Nekto Peresmeshnik