TEXT_BASE question
Hi,
I am trying to install u-boot on my walnut board with PPC405. In file board/walnut405/config.mk, TEXT_BASE is defined as FFFE0000. Does that mean the u-boot.bin has to start from FFFE0000?
My problem is that on my board the address space from FFF80000 to FFFFFFFF is reserved for a special purpose, so I can't put the u-boot.bin at FFFE0000. But if I change the TEXT_BASE to another one, for example FFF00000, then the u-boot.bin generated by the compiler is FFFFFFFF - FFF00000 = 1MB. It means I still can't put the u-boot.bin to FFF00000 because it will overwrite the reserved address space anyway. I understand that u-boot is trying to fill the gap between TEXT_BASE and the end of the flash. So my question is:
1. If I use TEXT_BASE = FFFE0000 and simply put the u-boot.bin generated to FFF00000, will it mess up the addressing in the u-boot?
2. If the answer for 1 is yes, how can I move up the end of flash to FFF80000 so that the u-boot.bin will fill from FFF00000 to FFF80000 instead of from FFF00000 to FFFFFFFF?
Thanks,
Frank
_________________________________________________________________
Make the most of your family vacation with tips from the MSN Family Travel Guide! http://dollar.msn.com
Quoted 3 lines · In message <[email protected]> you wrote:
My problem is that on my board the address space from FFF80000 to FFFFFFFF is reserved for a special purpose, so I can't put the u-boot.bin at
This is not possible. For example, the IBM 4xx processor hat it's reset vector at 0xFFFFFFFC, so the last 4 bytes in your address space cannot be "reserved for a special purpose" (except this "special purpose" is another boot loader).
Quoted 2 lines
1. If I use
TEXT_BASE= FFFE0000 and simply put the u-boot.bin generated to FFF00000, will it mess up the addressing in the u-boot?
Yes,. of course. Why do you think you have to ask this question? Isn't this obvious?
Quoted 3 lines
2. If the answer for 1 is yes, how can I move up the end of flash to FFF80000 so that the u-boot.bin will fill from FFF00000 to FFF80000 instead of from FFF00000 to FFFFFFFF?
You cannot. At least a branch instruction must be paced at the reset vector, which is 0xFFFFFFFC, which is the end of your "reserved" area.
Please redefine your requirements.
Best regards,
Wolfgang Denk
Signature · 4 lines
Software Engineering: Embedded and Realtime Systems, Embedded Linux Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd at denx.de Men will always be men -- no matter where they are. -- Harry Mudd, "Mudd's Women", stardate 1329.8