On Wednesday, October 6, 2010, Reinhard Meyer <[email protected]> wrote:
> Dear Graeme Russ,
>> I had a quick look at this and nothing is jumping out at me. Of course I am
>> not familiar with ARM asm...
>>
>> I don't see any reason why this ultimately will not work eventually. You
>> may be having some issues with the transition from asm->C->asm through the
>> relocation - This was an especially painful thing for me involving an
>> intermediate trampoline which I have only recently figured out how to remove.
>
> I think the relocation itself works fine, when looking at the debug output.
>

Time to disassemble using objdump

>> Maybe some memory barriers are needed to stop the C optimiser mangling 
>> things?
>
> It can't really optimize across the call to the (now wrongly named) 
> reloc_code in
> assembly.

True, objdump will clarify

>
>> Interestingly, ARM is adding gd->reloc_off while x86 is subtracting
>> gd->reloc_off. If this is correct, I need to change the calculation of
>> gd_reloc_off to be consistent
>
> It should always ADD it, when it is calculated as "Final Location" - "Current 
> Location".

I have my calculation the wrong way around

> Note, of course, that the value itself might well be negative.
>
> If, for example, the NOR Flash is at a higher address than RAM...
>

Which it is for x86

Regards

Graeme
_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to