I do not understand why extern symbol equals to the end of ram which is defined in the linker.
In especially, i see that case in the rtems code below:
extern symbol "rdb_start" definition - start.S - line 155 -157
extern symbol "rdb_start" usage - bspgetworkarea.c - line 23-41
For instance, when you define your RAM size 0x800000 in the linker and take your entry address as 0x40000000, then rdb_start value corresponds to the 0x407FFFF0 automatically. If you define any other symbol similar to the rdb_start and make it global as rdb_start, you see the same result. it's value is automatically assigned to 407FFFF0.
why?