[beagleboard] Question about: xloader code, relocation section




Is this the newbie assembler language group or a forum to help students do their homework

or the Beagleboard help forum. its really sad

— On Mon, 10/1/12, sblu owais72@gmail.com wrote:



> From: sblu owais72@gmail.com
> Subject: [beagleboard] Question about: xloader code, relocation section
> To: beagleboard@googlegroups.com
> Date: Monday, October 1, 2012, 12:41 PM
>
> I am looking at the source for x-loader with the aim of understanding and maybe coming up with a detailed document explaining how it works to share.
>
> I am using the beagleboard without on-board NAND.
>
> I have a question about this code-snipped in the relocate section:
>
> adr r0, _start
> ldr r1, _TEXT_BASE
> cmp r0, r1
>
> Here is my understanding so far:
>
> 1. The ROM bootloader puts the instructions of the x-loader starting at _start at 0x4020 0000 according to the RAM Memory map in the TRU. r0 is 0x4020 0000
>
> 1. _TEXT_BASE is defined in config.mk in \mainline\board\omap3530beagle at 0x4020 0800. r1 is 0x4020 0800.
> Question: why compare the two registers r0 and r1? Aren’t they always going to be different?
>
> Thanks.
>
> –

|

  • this question has nothing to do with assembly language or homework. I’m trying to follow the LOGIC behind checking if _TEXT_BASE and _start, if they are going to be different each time!
    If there is a better place to post this, please LMK, First time posting to this group.