On 14 December 2012 16:10, Christoffer Dall <c.dall@virtualopensystems.com> wrote:
What I was trying to figure out was why you can get rid of the "a
location less likely to be overridden" and why you're sure this memory
stays unmodified - I thought that was because you were loading the
code in the beginning of the physical memory space, which wouldn't be
touched by the linux kernel (i.e. reserved for the secure side), but
my guess may have been wrong and I was never a whiz with linker
scripts.

I have to comment on this that the relocation address "ldr     r1, =fs_start - 0x100" doesn't work for the board. Secondary CPUs will never wake and I had to move the relocation part under the monitor offset instead (not needed to relocate at all in the end if boot.o is put at the start of memory, I guess...).