Running RTEMS on a LEON2 from ROM

Mike Looijmans mike.looijmans at
Thu Jul 27 06:02:06 UTC 2017

On 26-07-17 17:41, Jiri Gaisler wrote:
> Let me clarify this. The rdb_start is set by either the prom loader,
> grmon or simulator to the top of available RAM (64-byte aligned), RTEMS
> then use the value to allocate the stack and heap. So your boot code
> must write this value before the system starts initializing. If you have
> 1 Mbyte of RAM, then set 0x400007c0 = 0x400fffe0 and it should work. The
> reason for this is historical, but it allows the same executable to run
> on different boards with varying amount of memory.

0x400fffe0 is not 64-byte aligned, it's 32 bytes below 0x40100000.

And what is the relation to the stack pointer. Since the stack starts at the 
end-of-ram, should I move that down below the "rdb_start" value? If something 
writes to that location, it corrupts the stack.

Kind regards,

Mike Looijmans
System Expert

TOPIC Products
Materiaalweg 4, NL-5681 RJ Best
Postbus 440, NL-5680 AK Best
Telefoon: +31 (0) 499 33 69 79
E-mail: mike.looijmans at

Please consider the environment before printing this e-mail

More information about the users mailing list