[U-Boot] Is it possible to boot the U-boot from the another U-boot from the flash area

Hi All,
I am really curiuos to see if U-boot can boot another version or another Uboot burnt in flash ? Its like having 2 images of U-boot which can boot each other if it is possible can any one of you hint me how I can achive this. I tried to relocate the Uboot and burned on to the flash in 2 different loacation however when I try to do "go <U-boot effective address>" it ends up in TLB error in early stage of flash execution.
Thanks for the Help. Ish

Dear Ishwar Saunshi,
In message CAKD3hySShg8+XNX1yQNVDDLYQupgaJC-Lmg1qZ32cy5eBm6GQw@mail.gmail.com you wrote:
I am really curiuos to see if U-boot can boot another version or another Uboot burnt in flash ? Its like having 2 images of U-boot which can boot each other if it is possible can any one of you hint me how I can achive this. I tried to relocate the Uboot and burned on to the flash in 2 different loacation however when I try to do "go <U-boot effective address>" it ends up in TLB error in early stage of flash execution.
In general, this is not possible. This topic is covered in the FAQ here: http://www.denx.de/wiki/view/DULG/CanUBootBeConfiguredSuchThatItCanBeStarted...
Best regards,
Wolfgang Denk

Thanks Wolfgang,
I have gone through the FAQ section, this FAQ only talks about the condition where the other Uboot is in RAM but what I am thinking is to boot the Uboot from the flash location by another running Uboot.
for example if my board flash starts from 0xC000_0000 to 0xCFFF_FFFF and the first Uboot-1 is programmed @ 0xC800_0000 and second Uboot-2 is programmed @0xC500_0000 on reset Uboot-1 starts from flash and load it self to RAM and boots up and from there is it possible to boot Uboot-2 by using * go* cmd or in any other way.
Regards, ISHWAR
On Wed, Jun 27, 2012 at 7:19 PM, Wolfgang Denk wd@denx.de wrote:
Dear Ishwar Saunshi,
In message < CAKD3hySShg8+XNX1yQNVDDLYQupgaJC-Lmg1qZ32cy5eBm6GQw@mail.gmail.com> you wrote:
I am really curiuos to see if U-boot can boot another version or another Uboot burnt in flash ? Its like having 2 images of U-boot which can boot each other if it is possible can any one of you hint me how I can achive this. I tried to relocate the Uboot and burned on to the flash in 2 different loacation however when I try to do "go <U-boot effective address>" it ends up in
TLB
error in early stage of flash execution.
In general, this is not possible. This topic is covered in the FAQ here:
http://www.denx.de/wiki/view/DULG/CanUBootBeConfiguredSuchThatItCanBeStarted...
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de "Out of register space (ugh)"
- vi

Dear Ishwar Saunshi,
please don't top post / full quote.
In message CAKD3hyQuVMiBHY55mzbMttY7DYEhu8o3p+AWY+GFr0ndhdn8Cw@mail.gmail.com you wrote:
I have gone through the FAQ section, this FAQ only talks about the condition where the other Uboot is in RAM but what I am thinking is to boot the Uboot from the flash location by another running Uboot.
This doesn't make any difference. Read more carefully, and read to the end. Pay special attention to the part here:
U-Boot expects to see a virgin CPU, i. e. the CPU state must match what you see if the processor starts executing the first instructions when it comes out of reset. If you want to start U-Boot from another boot loader, you must disable a lot of code ...
Best regards,
Wolfgang Denk

Dear Ishwar Saunshi,
I have gone through the FAQ section, this FAQ only talks about the condition where the other Uboot is in RAM but what I am thinking is to
boot
the Uboot from the flash location by another running Uboot.
This doesn't make any difference. Read more carefully, and read to the end. Pay special attention to the part here:
U-Boot expects to see a virgin CPU, i. e. the CPU state must match what you see if the processor starts executing the first instructions when it comes out of reset. If you want to start U-Boot from another boot loader, you must disable a lot of code ...
This is really highly CPU-dependent. We are using something like that to implement a fallback u-boot image in case someone manages to kill the standard image, it was quite easy to do for e.g. mpc512x, but quite some coding effort for mpc85XX. The corresponding code always looks slightly insane. If you feel like diving in deep into the innards of your CPU, go for it. If you don't really need it, skip it.
:-) Kolja
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de You don't have to stay up nights to succeed; you have to stay awake days. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

Thanks Wolfgang & Kolja,
Kolja,
I wanted to do the same with the other Uboot what you have already achieved, Infact I am using mpc85xx too. could you please list out the changes you made.
Thanks for the help.
participants (3)
-
Ishwar Saunshi
-
Schneider, Kolja
-
Wolfgang Denk