[U-Boot] [RFC] [PATCH] arm: arm926ejs: use ELF relocations
Graeme Russ
graeme.russ at gmail.com
Tue Oct 5 07:40:23 CEST 2010
On Tue, Oct 5, 2010 at 4:34 PM, Wolfgang Denk <wd at denx.de> wrote:
> Dear Graeme Russ,
>
> In message <AANLkTikqE0_DEqHs-tX3A4XuEXJhM0CYW_+j6izhmktw at mail.gmail.com> you wrote:
>>
>> Can NAND SPL initialise and size memory before loading U-Boot into RAM?
>
> It has to. You cannot load into and run from uninitialized RAM ;-)
>
>> If so, could the relocation code be added to NAND SPL so only one copy
>> operation is performed?
>
> I'm afraid it cannot, due to size limitations. The NAND loader often
> hast to fit into as little a 2 or 4 KiB...
>
For x86, the actual relocation calculations can be done in a probably a
few dozen bytes of code. It contains:
- One offset calculation
- A single tight loop
- Two comparisons (probably not needed in the generic case as they are used
to filter out x86 specific code outside .text)
- An offset addition
If the only constraint is space then it _may_ be possible in some scenarios
(although I do acknowledge that previous trival changes have caused the
size constaint to be violated)
Regards,
Graeme
More information about the U-Boot
mailing list